Esta es la solución que yo utilizo prescindiendo de TEXT...ENDTEXT.
Ejemplo:
PUBLIC XSQL AS MEMO
XSQL=''
FOPENBD()
XSQL='SELECT DCLIE.CODIGO ,DCLIE.NOMBRE , DCLIE.DOMICILIO,
DCLIE.POBLACION, DCLIE.CP, DCLIE.PROVINCIA, '+ ;
'DCLIE.PNIF, DCLIE.NIF, DCLIE.TELEFONO, DCLIE.TELEFONO2, DCLIE.FAX,
DCLIE.WEB, DCLIE.EMAIL, DCLIE.CCLAVE, '+ ;
'DCLAV.NOMBRE AS CNOMBRE, DCLIE.CVENDEDOR ,DVEND.NOMBRE AS VNOMBRE,
DCLIE.BANCO, DCLIE.AGENCIA, '+ ;
'DCLIE.CCC1, DCLIE.CCC2, DCLIE.CCC3, DCLIE.CCC4, DCLIE.IBAN1, DCLIE.IBAN2,
DCLIE.IBAN3, DCLIE.IBAN4, '+;
'DCLIE.IBAN5, DCLIE.IBAN6, DCLIE.TIPOIVA, DCLIE.TIPORE, DCLIE.TIPORET '+;
'FROM DCLIE, DCLAV, DVEND '+;
'WHERE DCLIE.CODIGO>=?TVCOD1 AND DCLIE.CODIGO<=?TVCOD2 AND '+;
'DCLIE.CP>=?TVPOS1 AND DCLIE.CP<=?TVPOS2 AND '+;
'DCLIE.CCLAVE>=?TVCLA1 AND DCLIE.CCLAVE<=?TVCLA2 AND '+;
'DCLIE.CVENDEDOR>=?TVVEN1 AND DCLIE.CVENDEDOR<=?TVVEN2 AND '+;
'DCLIE.CCLAVEÜLAV.CODIGO AND DCLIE.CVENDEDOR=DVEND.CODIGO AND '+;
'DCLIE.KE=?BEMPR AND DCLAV.KE=?BEMPR AND DVEND.KE=?BEMPR ORDER BY
DCLIE.CODIGO '
SQLPREPARE(NH, ""+XSQL, "TCUR")
IF SQLEXEC(NH)>0
SWTALLY=RECCOUNT()
COPY TO ""+VTEMP+"\XTL"
ENDIF
IF SWTALLY<1
MESSAGEBOX("No se han Localizado DATOS",48,"Atencion")
ENDIF
FCLOSEBD()
El truco consiste en declarar la variable XSQL como publica y de tipo MEMO.
Espero les sirva. Un saludo.
-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co
PortalFox - NNTP Forum Gatewa
Leer las respuestas