Programación General > Visual FoxPro

 Parametros A Sql?

(1/1)

edcansu:
Hola a todos y gracias por las respuestas:
Bueno he estado agregando a una lista por medio de una instrucion SQL, al cual pasaba parametros:

SELE campo1,campo2  FROM tabla WHERE thisform.dato $ campo1 or thisfrom.dato $ campo2 ORDER BY campo1 INTO CURSOR cursor1

donde campo2, es una combinaciòn de campos caracter,
pero salia un mensaje de comando no reconocido.
Lo intente solucionar cambiando a Consulta .QPR pero me sale el mensaje de Thisform no se puede usar...
¿Como puedo solucionarlo?
Ed <_<

DrakerDG:
:wacko: No entiendo muy bien tu problema, pero si explicaras qué es lo que quieres hacer sería un poco más fácil.

De todos modos creo que lo que quieres que el comando SQL reconozca a campo2 no como nombre si no como variable (en este caso de caracteres).

Una forma de solucionarlo es la siguiente:


--- Código: Text --- *Crea una variable tipo stringLOCAL sConsulta as String sConsulta = '' *Asigna la instrucción como carácter de tu consulta.*campo1 puede ser igual a 'Mitabla.nombre'*campo2 puede ser igual a 'Mitaba.apellido'*tabla puede ser igual a 'mi_path&#092;Mi_base_de_datos.Mitabla' sConsulta = 'SELECT ' + campo1 + ',  ' + campo2 + ' FROM ' + tabla +&#59; ' WHERE thisform.dato.text == '  +  campo1 + ' or thisfrom.dato.text == ' +&#59;   campo2 + ' ORDER BY ' + campo1 + ' INTO CURSOR cursor1' *Luego utilizas el macro & y listo.  Este macro ejecuta el contenido de la variable,*en este caso sConsulta.*Ten cuidado con los espacios en blanco para que el macro & *pueda reconocer el codigo. &sConsulta   
Como consejo previo puedes visualizar en una etiqueta como se ve la consulta armada antes de que el comando & la ejecute.  Por ejemplo:


--- Código: Text --- THISFORM.Label1.caption = sConsulta   
Espero te sirva :suerte:

Navegación

[0] Índice de Mensajes

Ir a la versión completa