Visual Basic - Error al Ejecutar una Consulta !!!!!!!

Life is soft - evento anual de software empresarial
 
Vista:

Error al Ejecutar una Consulta !!!!!!!

Publicado por Geo (13 intervenciones) el 14/04/2003 03:56:47
Hola amigos les cuento mi problema.
resulta que atraves de VB quiero actualizar un campo de un registro de una tabla para lo que uso el siguiente codigo.

actualiza_crre_sql = " UPDATE TABLA SET " & _
" gst_tot =" & Format(Excel.Data1.Recordset13).Value, "###,###,###.000") & _
" WHERE cod_tpo = 1 AND fch_crre = #" & Gl_FecNueva & "#"
Db.Execute actualiza_crre_sql

el problema es que al ejecutar el codigo me arroja un error en esta consulta, el error especifico es

"Error 3144 Syntax error in Update statement"

he revisado y segun yo no hay errores de sintaxis por lo que debe ser otra cosa media extraña.

algunos datos.
la base de datos es access
el campo gst_tot es de tipo numerico simple con 3 decimales

Por favor si alguien sabe como solucionar este problema o pueda dar algunas luces seran muy agradecidas.

Salu2 loquillos ojala me puedan ayudar
gracias de antemano
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:Error al Ejecutar una Consulta !!!!!!!

Publicado por Adolfo Vanegas (105 intervenciones) el 14/04/2003 07:31:28

Bueno, tu error parece estar en esta intruccion

Format(Excel.Data1.Recordset13).Value, "###,###,###.000"

Primero: tengo que asumir que Excel es un formulario, el cual tiene un control Data. En la linea veo dos errores

1. Pensando que esta expresion sea valida, el cierre del comando format debe estar hasta el final de la mascara asi:

Format(Excel.Data1.Recordset13.Value, "###,###,###.000")

2. Creo que el error mas grave que tienes, es que a la propiedad Recordset le estas añadiendo otra propiedad que no existe (13.value), lo correcto deberia ser :

Format(Excel.Data1.Recordset.fields("Campo"), "###,###,###.000")

Ahora.... cuando tu muevas informacion hacia las tablas no deberias formatear estos valores, ya que las tablas solo guardan el valor, sin importar el formato de comas o simbolos de moneda, esto solo se hace cuando vas a mostar informacion, ya sea por impresora o una consulta en pantalla.

Espero Haber despejado tu duda
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

RE:Error al Ejecutar una Consulta !!!!!!!

Publicado por Geo (13 intervenciones) el 14/04/2003 16:38:30
Gracias adolfo,

con respecto a tus observaciones, fue un error mio de copy paste, sorry ya estaba medio mareado, por otro lado quite el formateo que tenia asignado y deje solo la variable, pero adivina?? sigue el mismo error, (no entiendo) pegare la consulta resultante (esta vez en forma correcta)

actualiza_crre_sql = " UPDATE TA_CRRE SET " & _
" gst_tot =" & Excel.Data1.Recordset(13).Value & _
" WHERE cod_tpo = 1 AND fch_crre = #" & Gl_FecNueva & "#"
Db.Execute actualiza_crre_sql

como dije anteriormente, el error persiste, por favor necesito ayuda....

gracias

que esten bien
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

RE:Error al Ejecutar una Consulta !!!!!!!

Publicado por Giovanni Barajas (16 intervenciones) el 14/04/2003 18:23:38
Hola, para saber exactamente en donde esta el error de sintáxis has lo siguiente:
inmediantemente despues de asignar la instrucción sql coloca la línea
debug.print actualiza_crre_sql
coloca el cursor sobre esta línea y presiona F9 corre el programa y este se detendrá en esta línea, luego presiona F8 para ejecutar dicha línea, en la pantalla debub aparecerá el valor de la variable actualiza_crre_sql
si no aparece la pantalla debug preciona ctrl g, copia este valor en una nueva consulta de access e intenta ejecutarlo, access te mostrará el mismo errro pero colocará el cursor en la parte de la consulta en donde está el error, asi sabras como queda la consulta realmente y podrás ubicar el error mas fácilmente.

espero te sirva
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

Error al Ejecutar una Consulta !!!!!!!

Publicado por J2ML (464 intervenciones) el 16/04/2003 21:47:05
Disculpen que me meta puede incluso que no sirva de mucho pero:
actualiza_crre_sql = " UPDATE TA_CRRE SET " & _
" gst_tot =" & Excel.Data1.Recordset(13).Value & _
" WHERE cod_tpo = 1 AND fch_crre = #" & Gl_FecNueva & "#"
Db.Execute actualiza_crre_sql
1.- El campo cod_tpo es numerico ? si no lo es debes sustituir WHERE cod_tpo = 1; por WHERE cod_tpo='1'
2.- la variable GI_FecNueva esta en formato mm/dd/yy (mes/dia/año) ?
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