Hola:
Luis María, gracias por la aclaración.
Volviendo al tema principal, yo recomendaría revisar bien los formatos
de cada entorno. Es posible que la disposición de días, meses, años...
sea distinta en amos entornos. Por ejemplo, que en Access se permita
ingresar con formato AAAA/MM/DD y desde la aplicación se esté
trabajando con otro formato, como DD/MM/AAAA.
Respecto al código para realizarlo, estoy de acuerdo con lo que ya
postearon antes.
Saludos.
---------------------------------------------------------------------------------------------------------
On 26 ene, 13:20, Luis Maria Guayan <
luismar...@gmail.com> wrote:
> Buen punto, el código con la sentencia correcta quedaría:
> lcArchivoMDB = "C:\Archivos de programa\DETsv\f987v2\f987v2.mdb"
> lcConnStrin = "DSN=MS Access Database;Dbq=" + lcArchivoMDB + ";Uid=;Pwd=;"
> lnHandle = SQLSTRINGCONNECT(lcConnStrin)
> IF lnHandle > 0
> lcFecha = DATE(2011,01,02) lcSQL = [insert into cliente1(nit, periodo, secuencia, id, mes, ] + ;
> [tipoidentificacion, identificacion, fecha, tipodocumento, documento, monto, ] + ;
> [iva, corr) VALUES ('06141401700010', '12011', '1', 1, 1, '1', ] + ;
> ['05222302731013', ?lcFecha, '1', '01CCF02012011', 100, 13, 1) ] lcCursor = "cliente1"
> SQLEXEC(lnHandle,lcSQL,lcCursor)
> SQLDISCONNECT(lnHandle)
> ENDIF
>
> Luis María Guayán
> Tucumán, Argentina
> El 26/01/2012 15:06, Pablo Daniel escribió:Hola: Perdón si los desvío del tema principal, pero, no entiendo muy bien el uso que están haciendo de las comillas en la asignación de la variable lcSQL:lcSQL = "insert into cliente1(nit, periodo, secuencia, id, mes, tipoidentificacion, identificacion, fecha, tipodocumento, documento, monto, iva, corr) VALUES ("06141401700010", "12011", "1", 1, 1, "1", "05222302731013", ?lcFecha, "1", "01CCF02012011", 100, 13, 1)"La cadena de caracteres se corta por las comillas dobles, ¿o me equivoco? Es algo similar a lo que comentó Walter en la cuarta respuesta a este tema. A diferencia de él, yo usaría las comillas dobles para encerrar toda la sentencia y las comillas simples para los valores a insertar. Gracias. Saludos. --------------------------------------------------------------------------------------------------------- On 26 ene, 14:46, Luis Maria Guayan<
luismar...@gmail.com>wrote:Probaste esto: Como consejo, pasa tus variables de fecha como parámetros y el ODBC hará su trabajo, intenta con el código de abajo: lcArchivoMDB = "C:\Archivos de programa\DETsv\f987v2\f987v2.mdb" lcConnStrin = "DSN=MS Access Database;Dbq=" + lcArchivoMDB + ";Uid=;Pwd=;" lnHandle = SQLSTRINGCONNECT(lcConnStrin) IF lnHandle > 0 lcFecha = DATE(2011,01,02) lcSQL = "insert into cliente1(nit, periodo, secuencia, id, mes, tipoidentificacion, identificacion, fecha, tipodocumento, documento, monto, iva, corr) VALUES ("06141401700010", "12011", "1", 1, 1, "1", "05222302731013", ?lcFecha, "1", "01CCF02012011", 100, 13, 1)" lcCursor = "cliente1" SQLEXEC(lnHandle,lcSQL,lcCursor) SQLDISCONNECT(lnHandle) ENDIF Si utilizas CTOD() siempre te dará error ya que es una función de VFP y no de ACCESS Luis María Guayán Tucumán, Argentina _________________________
http://www.PortalFox.comNada corre como un zorro _________________________ El 26/01/2012 11:23, Oscar Martinez escribió:El error que me da al hacerlo como me dice LMG: Se esperaban 6 parámetros. Le quité que guardar la fecha y dice: Se esperaban 5 parámetros. Lo intentaré con TEXT ... END TEXT, luego les comento. El 25 de enero de 2012 07:48, Guillermo Gimenez<
guille...@yahoo.com.ar>escribió:Oscar, usa text to lcSQL.. end text Porque el error no esta en la consulta, esta en "como" estas asignando la cadena de la consulta en la variable... Saludos --- Ellun 23-ene-12, Oscar Martinez<
golden...@gmail.com>escribió: De: Oscar Martinez<
golden...@gmail.com>Asunto: Re: [vfp] VFP + ACCESS, Error en insert intoPara:publice...@googlegroups.comFecha: lunes, 23 de enero de 2012, 1:45Walter, le he cambiado comilla simple al inicio y al final, pero siempre me da error en la línea 5. El día 22 de enero de 2012 22:32, Walter R. Ojeda Valiente<
wr...@hotmail.com>escribió:Además, fíjate que usas comillas dobles en todas partes, deberías usar comillas simples al inicio y al final de la asignación y comillas dobles en el interior. Saludos. Walter. ________________________________ Date: Sun, 22 Jan 2012 22:22:12 -0600 Subject: [vfp] VFP + ACCESS, Error en insert intoFrom:golden...@gmail.comTo:publice...@googlegroups.comTengo una base de datos de Access a la cual quiero agregar 2000 registros aproximadamente, he credo la siguiente rutina y me da un error en la línea 5, cual es el error? Como prueba digité los valores y si estos se trasladaban sin ningun problema, entonces procedería a recorrer las tablas dbf para enviar los datos a Access. lcArchivoMDB = "C:\Archivos de programa\DETsv\f987v2\f987v2.mdb" lcConnStrin = "DSN=MS Access Database;Dbq=" + lcArchivoMDB + ";Uid=;Pwd=;" lnHandle = SQLSTRINGCONNECT(lcConnStrin) if lnHandle > 0 lcSQL = "insert into cliente1(nit, periodo, secuencia, id, mes, tipoidentificacion, identificacion, fecha, tipodocumento, documento, monto, iva, corr) values ("06141401700010", "12011", "1", 1, 1, "1", "05222302731013", "ctod("02/01/2011"), "1", "01CCF02012011", 100, 13, 1)" lcCursor = "cliente1" SQLEXEC(lnHandle,lcSQL,lcCursor) SQLDISCONNECT(lnHandle) endif RETU El error dice que está aquí. lcSQL = "insert into cliente1(nit, periodo, secuencia, id, mes, tipoidentificacion, identificacion, fecha, tipodocumento, documento, monto, iva, corr) values ("06141401700010", "12011", "1", 1, 1, "1", "05222302731013", ctod("02/01/2011"), "1", "01CCF02012011", 100, 13, 1)" Error en la línea 5: Error de sintaxis. Lo único que veo es que en Access el campo fecha es datetime (02/01/2011 12:00 AM), tambien he cambiado la fecha y agregado la hora y siempre me da error. Otra alternativa podría ser, si tengo los archivos en Excel, como envío los datos desde Excel hacía la misma base de datos? En todo caso, si se puede enviar desde VFP o Excel, estaré muy agradecido con ustedes, ya que el propósito es tener la información en la BDD de Access, sea de una u otra forma. Nuevamente les agradezco por la ayuda brindada. ...leer más »