>______________________________ >De: Jaime Casanova <jcasa...@systemguards.com.ec> >Para: POSTGRES <pgsql-es-ayuda@postgresql.org> >Enviado: viernes, 5 de junio, 2009 1:13:22 >Asunto: [pgsql-es-ayuda] [semi OT] mapping vfp variables to sql columns > >Hola todos, > >Otra vez tratando de entender vfp. >He aquí que tengo una aplicación (no es mía, por si acaso ;) que hace >algo como lo que se muestra en el adjunto. >Como verán el código en si es pésimo, no digamos la elección de los >nombres de las variables. Pero algo que no ayuda en nada es el hecho >se que en vfp no solo no hay necesidad de declarar el tipo de dato de >las variables sino que "no es posible hacerlo". >
Jaime, no se si no muestras todo el código, pero SI es posible definri el tipo de dato de una variable. Se hace así: LOCAL LOCAL LOCAL LOCAL LOCAL LOCAL llOk AS BOOLEANLOCAL lcXml AS STRINGlcMetodo AS STRINGlnTranInve AS INTEGERlfDiferencia AS DOUBLElfValor AS DoubleloParte AS VARIANTLOCAL loExistLoc AS VARIANTLOCAL ldTransac AS DATE Atentamente, RAUL DUQUE Bogotá, Colombia >Sí que fox interpreta los tipo de datos a su antojo de modo que al >jeecutar el INSERT postgres me da el siguiente error (fijense que el >cero que debia ser interpretado como un entero es interpretado como un >loat8: >""" >2009-06-04 15:28:53 COT ERROR: column "impreso" is of type boolean >but expression is of type double precision at character 466 >2009-06-04 15:28:53 COT HINT: You will need to rewrite or cast the expression. >2009-06-04 15:28:53 COT STATEMENT: INSERT INTO FCDOCUME >>(tipo,numero,fecha,cliente,zona,vendedor,tip_aplic,num_aplic,fecha_ven,subtotal,total,comentario,codcta,IMPRESO,COM_LIQUID,BLOQUEADO,BLOQUE1,ASENTADO,FINANCIADO,POSTFECHA,IMPUESTO,TURNO)values(E'CC' >,'2135'::float8 ,'2009-06-04 00:00:00'::timestamp ,E'0156 ' >,E' ' ,E'0003 ' ,E' ' ,'0'::float8 ,'2009-06-04 >00:00:00'::timestamp ,'1'::float8 ,'1.12'::float8 ,E' > DAFSD ' ,'0'::float8 ,'0'::float8 >,'0'::float8 ,'0'::float8 ,'0'::float8 ,'0'::float8 ,'0'::float8 >,'0'::float8 ,'0.12'::float8 ,E'001' ) >""" Una solucion simple claro es que al armar la cadena puedo hacer un cast para indicar el tipo de dato. alguna sugerencia sobre de que otra forma puedo controlar el tipo de dato que será enviado a postgres (de ser posible que no implique reescribir todo)? -- Atentamente, Jaime Casanova Soporte y capacitación de PostgreSQL Asesoría y desarrollo de sistemas Guayaquil - Ecuador Cel. +59387171157 ¡Obtén la mejor experiencia en la web! Descarga gratis el nuevo Internet Explorer 8. http://downloads.yahoo.com/ieak8/?l=mx -- TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? http://archives.postgresql.org/pgsql-es-ayuda