FoxPro/Visual FoxPro - Programador

 
Vista:

Programador

Publicado por Bosco Garita (10 intervenciones) el 05/02/2008 16:55:25
Borrado en SQL desde VFP 9.0
Tengo una base de datos en SQL Server 2000 y tengo dos conexiones; una conexión ADO y otra ODBC.

Usando la conexión ODBC estoy enviando una sentencia SQL de borrado y está correcta pero me devuelve un -1. Usando la variable _CLIPTEXT de VFP 9.0 envié esta sentencia al Query Analyser para verificar que estuviera correcta. Lo está. La ejecuté ahí y funcionó perfectamente. Cree entonces un Stored Procedure que realizara la misma labor recibiendo los parámetros necesarios. Lo ejecuté desde el Query Analyser y lo hizo perfectamente. Procedí entonces a hacerlo desde VFP y sucedió el mismo error. Tampoco funcionó.
En todos mis programas siempre me ha funcionado pero en este caso no encuentro la solución.

Si alguien me puede ayudar se lo agradecería muchísimo.

El código es más o menos asi:

lcComprobante = Thisform.txtComprobante.value
lcSentenciaSQL = "Delete from Movimientos Where no_comprob = '&lcComprobante'"
lnResultado = SQLEXEC(pnConexion,lcSentenciaSQL)

No existe ninguna restricción en la base de datos para que este comando no se ejecute pero el resultado en lnResultado es -1

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Programador

Publicado por Bosco Garita (10 intervenciones) el 18/03/2008 15:42:13
Si alguien ve esta nota, espero que le sirva, porque yo pasé bastante tiempo tratanto de encontrar la solución, y lo hice.

El problema es que la tabla Movimientos tenía un campo calculado y, aparentemente, cuando el borrado es ejecutado a través del ODBC se produce un error de división por cero, cosa que no ocurre el Query Analizer. Tuve que hacer varios cambios para eliminar dicho campo, pero funcinó a la perfección.

Espero que esto le sirva a alguien más ya sea para que no le ocurra o para que resuelva el problema cuando le ocurra.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar