Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/07/2009, 17:42
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: vfp - postgresql

Cita:
Iniciado por jrsiste20 Ver Mensaje
Buenos dias:
Trabajo con vfp6 original, y la empresa no desea invertir en software, es por ello que tengo que solucionar mis problemas de programacion con esta version, ademas estoy empezando a trabajar con postgresql 8.3
mi consulta es la sgte:
deseo crear una funcion en postgresql que me permita insertar nuevos articulo en mi tabla art_a que pertene a la base de datos inventario creada en postgresql.

para ello llamo a la funcion asi:

no_error = SQLEXEC(gnConnHandle,'select manart1(?da1,?da2)')
IF no_error < 0
=MESSAGEBOX('Tabla no disponible',16,'Error')
ENDIF
donde: da1 es, el codigo del articulo
da2 es, el nombre del producto

Nota: mis datos a insertar son exactamente 21 datos (desde da1 hasta da21), pero estoy probando solo con dos campos (da1, da2)
la verdad que por mas que lee el manual de postgresql con respectoa funciones o triggers mas me pierdo, muchas gracias.

ayudeme por favor como deberia ser mi funcion para llegar a lo que deseo,

gracias

JRCORONADO

A su gerencia de un colega muy experimentado me indico que haga lo sgte:

set text to c:\mi_sql.txt noshow
set textmerge on
\\INSERT INTO postgres.ART_A(CODIGO,DESCRIPC,CAMBIO,NANDINA,GRUP O,CLAVE,FACT_VTA,COS_FAB,PRECOSD_A,PRECOSD,DOLAR,T IP_CAMD,VALORV,LOCALIZA,STKACT,SDO_REAL,STKMIN) values ('<<da1>>', '<<da2>>','<<da3>>', '<<da4>>','<<da5>>', '<<da6>>','<<da7>>', '<<da8>>','<<da9>>', '<<da10>>','<<da11>>', '<<da12>>','<<da13>>', '<<da14>>','<<da15>>', '<<da16>>','<<da17>>')
set textmerge off
set textmerge to
ssql = FILETOSTR('c:\mi_sql.txt')
no_error = SQLEXEC(gnConnHandle,ssql)
IF no_error < 0
=MESSAGEBOX('Tabla no disponible',16,'Error')
ENDIF

Nota: como veran y lo he probado solo mediante esta forma puedo trabajar desde da1 hasta da17, ya que cuando coloco los demas datos a insertar en el registro (da18 hasta da21) no me inserta el registro,ademas deseo hacer el insert mediante una funcion.

muchas gracias,

disculpen tanta molestia y tanta ignorancia.
Te entendí muy poco de lo que pides.
Lo que necesitas es una función que inserte en una tabla 21 valores?
Deseas pasarle a esa función 21 valores?
Concretamente... en lo que se refiere a postgresql, que es lo que deseas hacer?

Aclara un poco el problema y en la medida de lo posible tratamos de buscar una solución.

Un saludo jrsiste20
__________________
Without data, You are another person with an opinion.
W. Edwads Deming