• Viernes 8 de Noviembre de 2024, 21:05

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Forest

Páginas: [1]
1
Visual FoxPro / Problemas En Vfp 9 (soy Muy Principiante)
« en: Martes 6 de Junio de 2006, 02:04 »
Bueno, he hecho un ODBC para conectar SQL Server con VFP, y necesito hacer unos formularios (para la escuela jeje :smartass: ), y tengo dos problemas específicos:

1.- Si tengo una tabla donde el código es de tipo Char, el formulario no me trae los registros que debería, y si le pongo numericos si funciona, aquí les dejo un ejemplo para ver si me pueden ayudar:

PRIVATE wvalor
wvalor="select * from puestos where codigo="+ALLTRIM(thisform.wCodigo.Value)
SQLEXEC(thisform.conexion,wvalor)
thisform.wdescripcion.Value=sqlresult.descripcion
thisform.wsueldo.Value=sqlresult.sueldo
IF RECCOUNT('sqlresult')>0
   thisform.eliminar.Enabled=.T.
ENDIF

La tabla es puestos y los campos son Codigo (char), descripcion (varchar) y sueldo (smallmoney). El error que me aparece es que no encuentra el alias sqlresult y a veces que no encuantra las variables "descripcion" ni "suelo".
He revisado y el ODBC está bien hecho y la conexion no falla.

2.- Al crear un botón guardar no se darle update o insert a los valores booleanos.
Aquí les dejo el código, es de una tabla llamada Clientes, y los campos son: codigo(numerico), nombre(varchar), dir(varchar), tel(varchar), credito(BIT) y debe(smallmoney)

PRIVATE WVALOR,WVALOR2
wvalor="INSERT INTO CLIENTES (cod,nombre,dir,tel,credito,debe) VALUES "
wvalor2="("+ALLTRIM(STR(thisform.wcodigo.value))+",'"+ALLTRIM(thisform.wnombre.value)+"','"+;
     ALLTRIM(thisform.wdireccion.Value)+"','"+ALLTRIM(thisform.wtelefono.Value)+"',"+;
     "'false',0)"
IF SQLEXEC(thisform.conexion,wvalor+wvalor2)<1
     wvalor="UPDATE CLIENTES SET nombre='"+ALLTRIM(thisform.wnombre.value)+"',"+;
     "dir='"+ALLTRIM(thisform.wdireccion.Value)+"',"+;
     "tel='"+ALLTRIM(thisform.wtelefono.Value)+"',"+;
     "credito='"+ALLTRIM(thisform.wcredito.Value)+"'"
     wvalor2=" WHERE cod="+ALLTRIM(STR(thisform.wcodigo.value))
     IF SQLEXEC(thisform.conexion,wvalor+wvalor2)<1
         MESSAGEBOX("No se pudo actualizar el registro",16)
     ENDIF
ELSE
     MESSAGEBOX("No se pudo actualizar el registro",16)
ENDIF
THISFORM.wcodigo.SETFOCUS

El error dice algo como: function argument value, type, or count is invalid. Estoy casi seguro de que es por la forma que dí update o insert al campo Credito(que es el que es BIT)

La verdad no se mucho de esto así que si pudieran hablarme lo mas claro posible se los agradecería, o si me pueden corregir el código que pegué, mejor ^-^.

Páginas: [1]