Programación General > Visual Basic 6.0 e inferiores
Valor ????
(1/1)
ciber_lep:
Saludos foreros
espero tengan el tiempo para ayudarme.
En un formulario ejecuto una sentencia SQL hacia un servidor Mysql. La sentecia es esta.
SELECT orden,if( isnull(fecI) or fecI='',if( isnull(fecEn) or fecEn='',now(),fecEn),fecI) as fecha1,recibio,fecEn,if(isnull(hora),'10:00:00',hora) as hora1,....
Lo demas del SQl
el asunto es que cuando ejecuto esta sentencia en el servidor me lo ejecuta de forma perfecta.
pero cuando lo hago desde la Aplicacion el recordset me devuelve un valor ?????
el cual no logro capturar ni con if ni con nada!!!. He estado buscando en Google... y lo voy a seguir haciendo...
pero quize consultar con los expertos, de golpe les ha pagado algo asi. Si pueden ayudarme de antemano Gracias....... :D
Nebire:
--- Cita de: "ciber_lep" ---Saludos foreros
espero tengan el tiempo para ayudarme.
En un formulario ejecuto una sentencia SQL hacia un servidor Mysql. La sentecia es esta.
SELECT orden,if( isnull(fecI) or fecI='',if( isnull(fecEn) or fecEn='',now(),fecEn),fecI) as fecha1,recibio,fecEn,if(isnull(hora),'10:00:00',hora) as hora1,....
Lo demas del SQl
el asunto es que cuando ejecuto esta sentencia en el servidor me lo ejecuta de forma perfecta.
pero cuando lo hago desde la Aplicacion el recordset me devuelve un valor ?????
el cual no logro capturar ni con if ni con nada!!!. He estado buscando en Google... y lo voy a seguir haciendo...
pero quize consultar con los expertos, de golpe les ha pagado algo asi. Si pueden ayudarme de antemano Gracias....... :D
--- Fin de la cita ---
Este tipo de problemas casi siempre suele ser un problema de comillas.... en el servidor al no requerir ciertas comillas va perfecto, pero al meterlo en código debe acotarse correctamente lo que debe interpretar como un literal... A mi a veces me ocurre cuando ejecuto un shellExecute basytante complejo donde una linea de comando llama a su vez a otro comando con su correspondiente línea de comando etc... te acabas liando por culpa de las comillas que no están donde debieran.... Naturalmente suponiendo que no tengas un problema de conexión, autenticación, etc..
ciber_lep:
Pues Gracias por contestar. tienes razon es todo un Lio voy a revisar las comillas como sugieres, Por lo pronto por la Urgencia de esto y no es una aplicacion muy grande, lo estoy haciendo en otro lenguaje mas bondadoso (Java). pero en todo caso voy a investigar del porque el VB 6.0 hace esto.
curioso dato pues al debugear solo me dice que vale ????? pero no hay dato que diga si esta indefinido o nada
pero si algun otro experto quiera aportar su experiencia le agradezco.
:D
(Todos somos expertos pero solo que algunos mas que otros)
F_Tanori:
No puedes colocar el codigo en VB, y la sentencia SQL completa?
Saludos
ciber_lep:
Claro este es el codigo VB
--- Código: Text --- nombre_archivo = nombre_archivo & ".txt" query_sql = "SELECT orden,if( isnull(fecI) or fecI='0000-00-00' or fecI='',fecR,fecI) as fecha1,recibio,fecR,if(isnull(hora),'10:00:00',hora) as hora1,fecR FROM tabla1 WHERE fecR>='" & txt_fecha_1.Text & "' and fecR<='" & txt_fecha_2.Text & "' and recibio<>'' " Set conexion = New ADODB.Connection Set file = CreateObject("Scripting.fileSystemObject") If Len(Dir1.Path) > 3 Then Set archivo = file.openTextFile(Dir1.Path & "" & nombre_archivo, 8, True, 0) Else Set archivo = file.openTextFile(Dir1.Path & nombre_archivo, 8, True, 0) End If conexion.Open "Provider=MSDASQL.1;Persist Security Info=False;Data Source=myBase" Set recordset = New ADODB.recordset recordset.Open query_sql, conexion, adOpenDynamic, adLockOptimistic Dim noorden As String, fecing As String, podnom As String, podfec As String, podhor As String, fecpod As String While recordset.EOF = False orden = recordset(0).Value fecI = recordset(1).Value If fecI = "????" Then 'Aki estaba haciendo Pruebas para Depurar el Error. MsgBox "NAda" End If
Despues de esto sigue lo normal guardar y cerrar la conexion.
:P
Navegación
Ir a la versión completa