Foros del Web » Programando para Internet » ASP Clásico »

llamar a procedimientos

Estas en el tema de llamar a procedimientos en el foro de ASP Clásico en Foros del Web. hola a todos!! tengo un problema. yo tengo programada la siguiente pagina asp: <% Function AbrirConexion() Dim Conexion adOpenKeyset = 1 adLockOptimistic = 3 Set ...
  #1 (permalink)  
Antiguo 23/07/2009, 08:36
 
Fecha de Ingreso: julio-2009
Mensajes: 14
Antigüedad: 15 años, 9 meses
Puntos: 0
llamar a procedimientos

hola a todos!!

tengo un problema.

yo tengo programada la siguiente pagina asp:


<%
Function AbrirConexion()
Dim Conexion
adOpenKeyset = 1
adLockOptimistic = 3
Set Conexion = Server.CreateObject("ADODB.Connection")
Conexion.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=lachc$InetpubwwwrootQuinielaDBTragaMonedas. mdb"

Set AbrirConexion = Conexion
End Function

Function DevolverRecordset(strSQL)
Dim Rs
Set Rs = Server.CreateObject("ADODB.Recordset")

Rs.Open strSQL, cn, 3, 1

Set DevolverRecordset = Rs
End Function

Sub ExecutarConsulta(strSQL)
Dim Rs
dim cn
Set Rs = Server.CreateObject("ADODB.Recordset")

set cn = AbrirConexion
Rs.Open strSQL, cn, 3, 1
End Sub

%>
<script>

function checkValores()
{
var rta;

rta = true;
if (!IsNumeric(document.getElementById("serie").value )){
alert("los valores a ingresar deben ser numericos");
rta = false;
}

return rta;
}

function IsNumeric(sText)
{
var ValidChars = "0123456789.";
var IsNumber=true;
var Char;


for (i = 0; i < sText.length && IsNumber == true; i++)
{
Char = sText.charAt(i);
if (ValidChars.indexOf(Char) == -1)
{
IsNumber = false;
}
}
return IsNumber;
}

function guardarConfiguracion()
{
if (checkValores())
{
//guardo los valores en la tabla
var sql;

sql = "INSERT INTO CONFIGURACIONES (Serie, Ganadores, Bonus)";
sql += "VALUES(";
sql += document.getElementById("serie").value + ", ";
sql += document.getElementById("ganadores").value + ", ";
sql += document.getElementById("bonus").value + ")";

ExecutarConsulta(sql)
}
}

function cargarConfiguracion()
{
document.getElementById("serie").value = "15";
document.getElementById("ganadores").value = "8";
document.getElementById("bonus").value = "5";
}
</script>


el error que me da es "Se requiere un objeto" cuando intento llamar al procedimiento "EjecutarConsulta(strSQL)" pero yo el procedimiento ya lo tengo declarado mas arriba. Lo que estoy viendo es que este procedimiento lo tengo declarado dentro de <%%> y lo quiero llamar dentro de <script></script>. Es como que no se da cuenta que esta declarado.

si alguien sabe como solucionar este problema se lo voy a agradecer mucho.
  #2 (permalink)  
Antiguo 23/07/2009, 09:46
 
Fecha de Ingreso: julio-2009
Mensajes: 14
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: llamar a procedimientos

vuelvo a poner el codigo con el resaltador de codigo

Código asp:
Ver original
  1. <&#37;
  2. Function AbrirConexion()
  3. Dim Conexion
  4. adOpenKeyset = 1
  5. adLockOptimistic = 3
  6. Set Conexion = Server.CreateObject("ADODB.Connection")
  7. Conexion.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=lachc$InetpubwwwrootQuinielaDBTragaMonedas. mdb"
  8.  
  9. Set AbrirConexion = Conexion
  10. End Function
  11.  
  12. Function DevolverRecordset(strSQL)
  13. Dim Rs
  14. Set Rs = Server.CreateObject("ADODB.Recordset")
  15.  
  16. Rs.Open strSQL, cn, 3, 1
  17.  
  18. Set DevolverRecordset = Rs
  19. End Function
  20.  
  21. Sub ExecutarConsulta(strSQL)
  22. Dim Rs
  23. dim cn
  24. Set Rs = Server.CreateObject("ADODB.Recordset")
  25.  
  26. set cn = AbrirConexion
  27. Rs.Open strSQL, cn, 3, 1
  28. End Sub
  29.  
  30. %>
  31. <script>
  32.  
  33. function checkValores()
  34. {
  35. var rta;
  36.  
  37. rta = true;
  38. if (!IsNumeric(document.getElementById("serie").value )){
  39. alert("los valores a ingresar deben ser numericos");
  40. rta = false;
  41. }
  42.  
  43. return rta;
  44. }
  45.  
  46. function IsNumeric(sText)
  47. {
  48. var ValidChars = "0123456789.";
  49. var IsNumber=true;
  50. var Char;
  51.  
  52.  
  53. for (i = 0; i < sText.length && IsNumber == true; i++)
  54. {
  55. Char = sText.charAt(i);
  56. if (ValidChars.indexOf(Char) == -1)
  57. {
  58. IsNumber = false;
  59. }
  60. }
  61. return IsNumber;
  62. }
  63.  
  64. function guardarConfiguracion()
  65. {
  66. if (checkValores())
  67. {
  68. //guardo los valores en la tabla
  69. var sql;
  70.  
  71. sql = "INSERT INTO CONFIGURACIONES (Serie, Ganadores, Bonus)";
  72. sql += "VALUES(";
  73. sql += document.getElementById("serie").value + ", ";
  74. sql += document.getElementById("ganadores").value + ", ";
  75. sql += document.getElementById("bonus").value + ")";
  76.  
  77. ExecutarConsulta(sql)
  78. }
  79. }
  80.  
  81. function cargarConfiguracion()
  82. {
  83. document.getElementById("serie").value = "15";
  84. document.getElementById("ganadores").value = "8";
  85. document.getElementById("bonus").value = "5";
  86. }
  87. </script>
  #3 (permalink)  
Antiguo 23/07/2009, 10:54
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: llamar a procedimientos

No puedes...el código de servidor se ejecuta en el servidor (oh que sorpresa ) en tanto que tu script de JavaScript corre en el cliente, por lo tanto, en el momento que estás tratando de usar y ejecutar tu función de VBS, ya no existe.

Necesitarás implementar otra técnica como una llamada asíncrona (llámese AJAX) para este propósito.


Saludos!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:35.