• Jueves 2 de Mayo de 2024, 08:06

Autor Tema:  Problemas En Vfp 9 (soy Muy Principiante)  (Leído 1991 veces)

Forest

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Problemas En Vfp 9 (soy Muy Principiante)
« en: Martes 6 de Junio de 2006, 02:04 »
0
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 ^-^.

scorpio

  • Miembro activo
  • **
  • Mensajes: 73
    • Ver Perfil
Re: Problemas En Vfp 9 (soy Muy Principiante)
« Respuesta #1 en: Viernes 14 de Julio de 2006, 22:30 »
0
al usar la propiedad values de los cuadros de texto te regresa el valor del mismo si escribes 1 te regresa numero 1, no 1 en texto

te recomiendo usar la propiedad tex de los cuadros, y para el envio a la tabla

por consiguiente uno de los datoas que estas enviando o concatenando para el envio es un numero, no un cadena de texto

 verifica esa parte a ver si te ayuda usando en debugger
para que veas paso por paso que valor te arroja y que tipo es.


suerte