les simplifico el código utilizado a continuación:
gracias de antemano
ARCHIV='MYFILE01.DBF'
ARCHIV10='MYFILE02.DBF'
SELECT &ARCHIV.free, &ARCHIV.nroreq, &ARCHIV.cant, &ARCHIV.unidad,
&ARCHIV.articulo, &ARCHIV10.* ;
FROM &ARCHIV, &ARCHIV10 ;
WHERE &ARCHIV10.nroreq = &ARCHIV.nroreq ;
HAVING &ARCHIV.free == "X" ;
ORDER BY &ARCHIV10.codpv, &ARCHIV.articulo ;
INTO CURSOR Query
ARCHIV='MYFILE01'
ARCHIV10='MYFILE02'
La verdad, no encuentro error en lo que pusiste. Yo te recomendaría
que armes una cadena de caracteres con la consulta completa y recién
después utilices &. Por ejemplo (haciendo uso de TEXT - ENDTEXT, que
justo lo estábamos tratando en otro tema del grupo):
******************************************************
ARCHIV='MYFILE01.DBF'
ARCHIV10='MYFILE02.DBF'
TEXT TO consulta NOSHOW TEXTMERGE
SELECT <<ARCHIV>>.free, <<ARCHIV>>.nroreq, <<ARCHIV>>.cant,
<<ARCHIV>>.unidad,
<<ARCHIV>>.articulo, <<ARCHIV10>>.* ;
FROM <<ARCHIV>>, <<ARCHIV10>> ;
WHERE <<ARCHIV10>>.nroreq = <<ARCHIV>>.nroreq ;
HAVING <<ARCHIV>>.free == "X" ;
ORDER BY <<ARCHIV10>>.codpv, <<ARCHIV>>.articulo ;
INTO CURSOR Query
ENDTEXT
&consulta
******************************************************
Además, de esta forma, podrías mostrar en pantalla la consulta antes
de ejecutarla, como para verificar sintaxis y valores.
Suerte.
------------------------------------------------------------------------------------------------------------------------------
ARCHIV='MYFILE01'
ARCHIV10='MYFILE02'
ARCHIV='MYFILE01.'
ARCHIV10='MYFILE02.'
ARCHIV='MYFILE01.DBF'
ARCHIV10='MYFILE02.DBF'
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de Oscar Garcia
Enviado el: Jueves, 24 de Noviembre de 2011 11:11 a.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Re: uso de variable dentro de una sentencia SQL
¿Ya probaste quitandole el .DBF?, es decir asi:
ARCHIV='MYFILE01'
ARCHIV10='MYFILE02'
-----
Se certificó que el correo no contiene virus.
Comprobada por AVG - www.avg.es
Versión: 10.0.1411 / Base de datos de virus: 2092/4036 - Fecha de la
versión: 24/11/2011
ARCHIV='MYFILE01.DBF'
ARCHIV10='MYFILE02.DBF'
SELECT x.free, x.nroreq, x.cant, x.unidad, x.articulo, y.*;
FROM (ARCHIV) As x, (ARCHIV10) As y;
WHERE x.nroreq = y.nroreq;
HAVING x.free == "X" ;
ORDER BYy.codpv, x.articulo ;
INTO CURSOR Query
Saludos.
Mauricio
&consulta
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de Pablo Daniel
Enviado el: Jueves, 24 de Noviembre de 2011 11:20 a.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Re: uso de variable dentro de una sentencia SQL
Hola:
ENDTEXT
&consulta
******************************************************
Suerte.
----------------------------------------------------------------------------
--------------------------------------------------
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de mpulla
Enviado el: Jueves, 24 de Noviembre de 2011 11:41 a.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Re: uso de variable dentro de una sentencia SQL
Prueba con:
ARCHIV='MYFILE01.DBF'
ARCHIV10='MYFILE02.DBF'
Saludos.
Mauricio
El error esta con la sustitución de la variable por constante que no toma el nombre real de la tabla
antes de ejecutar:
& consulta
Como lo sugirió Walter, como para ver si hay algo raro en la
consulta... Después de la cláusula ENDTEXT, "consulta" es una variable
String que podés consultar y ver como cualquier otra y que debería
tener la sentencia exacta que querés ejecutar.
Éxitos.
-----------------------------------------------------------------------------------------------------------------------------
SELECT x.free, x.nroreq, x.cant, x.unidad, x.articulo, y.*;
FROM (ARCHIV) As x, (ARCHIV10) As y;
WHERE x.nroreq = y.nroreq;
HAVING x.free == "X" ;
ORDER BY y.codpv, x.articulo ;
INTO CURSOR Query
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de mpulla
Enviado el: Jueves, 24 de Noviembre de 2011 12:34 p.m.
De todas maneras gracias por su ayuda
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de mpulla
Enviado el: Jueves, 24 de Noviembre de 2011 12:34 p.m.
El código sigue siendo el mismo que envié al inicio del hilo
Saludos
Saludos.
Mauricio
Un abrazo
-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de mpulla
Enviado el: Jueves, 24 de Noviembre de 2011 03:45 p.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Re: uso de variable dentro de una sentencia SQL
puedes decir cual es el error, acabo de correr el sql y no tiene
problemas...
Saludos.
Mauricio