Extraño error al generar exe

124 views
Skip to first unread message

Julián May

unread,
Sep 20, 2016, 10:42:46 PM9/20/16
to Comunidad de Visual Foxpro en Español
Buenas noches colegas. 

Una duda acerca de un error que me marca al momento de generar el exe.

Cuando genero el exe después de hacer un cambio de código me genera este error

Compiling c:\users\julian\documents\visual foxpro projects\arbyreporter\prgs\reporterdao.prg
lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN" lcWhere = tcDocumentType + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"
Error in line 94: Syntax error.

y verificando no veo que tenga nada erroneo en mi cadena o al menos no logró ver algún error de sintaxis. 

Pero luego de cerrar la ventana donde me muestra el error y luego vuelvo a compilar ya no me vuelve a aparecer el error.

Saludos.

Julián May.

Germán Fabricio Valdez

unread,
Sep 21, 2016, 1:48:18 AM9/21/16
to Comunidad de Visual Foxpro en Español
tenes un error de sintaxis te faltas comilla dobles cerca del where y al finalizar este

lo correcto seria
lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN" + " lcWhere = tcDocumentType" + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"

Julián May

unread,
Sep 21, 2016, 5:12:08 PM9/21/16
to Comunidad de Visual Foxpro en Español
Hola German.

lcSelect y lcWhere
son variables distintas 

por que tendría que agregarle comillas ?

Saludos.


Julián.

Germán Fabricio Valdez

unread,
Sep 21, 2016, 5:26:49 PM9/21/16
to Comunidad de Visual Foxpro en Español
entonces solo te falta el signo + delante de la variable lcWhere

lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN"+ lcWhere = tcDocumentType + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"


El martes, 20 de septiembre de 2016, 23:42:46 (UTC-3), Julián May escribió:

Julián May

unread,
Sep 21, 2016, 5:49:42 PM9/21/16
to Comunidad de Visual Foxpro en Español
Pero para que sería ese signo ?

si se supone que como no tengo puesto ; significa que ahí termina la línea de código y empieza el otro 

lcSelect = "Mi cadena" + 

Para que me serviría un signo de + al final ? 

Saludos.

Germán Fabricio Valdez

unread,
Sep 21, 2016, 6:00:36 PM9/21/16
to Comunidad de Visual Foxpro en Español
creia que querias crear una cadena de caracteres para ejecutar un select

pero si son dos instrucciones distintas deben ir asi

lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN"

lcWhere = tcDocumentType + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"

no pueden ir a continuacion

Luiz Alexandre Ruiz

unread,
Sep 21, 2016, 6:56:29 PM9/21/16
to Comunidad de Visual Foxpro en Español
Para o VFP o espaço não determina o final de uma linha e nem o sinal de ", somente o <Enter> faz isso.

Julián May

unread,
Sep 21, 2016, 9:35:31 PM9/21/16
to Comunidad de Visual Foxpro en Español
Así los tengo pero como comentaba en ocasiones me marca ese error. 

Saludos.


Julián May.

Germán Fabricio Valdez

unread,
Sep 22, 2016, 9:44:11 AM9/22/16
to Comunidad de Visual Foxpro en Español
la verdad que no encuentro error pero te dice el numero de linea
si las instrucciones las tenes separadas debe ser la primera o la segunda
en el menu edit de fox tenes el go to line y pones el numero de linea del error y te dice cual de las dos es
de todas formas actualiza el visual foxpro al hotfix3 que publique mas abajo en este grupo


El martes, 20 de septiembre de 2016, 23:42:46 (UTC-3), Julián May escribió:

Daniel Sánchez

unread,
Sep 25, 2016, 2:02:01 PM9/25/16
to Comunidad de Visual Foxpro en Español
Me parece que el tema viene por el tamaño de la linea no debe superar los 254 caracteres, si es así lo recomendado es concatenar tu cadena tal como te ha comentado otros compañeros algo como esto

lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " +;
"'TODAS' AS RouteN, 'TODAS' AS LocalityN"+;
 lcWhere = tcDocumentType + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"

Saludos
--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047 RPM #948615385
Trujillo - Perú

P  Sugerimos no imprimir este e-mail a menos que sea absolutamente necesario. Protejamos el medio ambiente.

HernanCano

unread,
Sep 25, 2016, 5:35:44 PM9/25/16
to Comunidad de Visual Foxpro en Español
Hola, Julián.
¿Has logrado resolver tu necesidad?

Espero no ser inoportuno, pero veo un probable error de programación en el código que expones.

>>> lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN" 

>>> lcWhere = tcDocumentType + " and Documents.ccancelado = 0 and Documents.CFECHA BETWEEN m.dateStart and m.dateEnd and Agent.CIDAGENTE = m.agentId"

Debes verificar si los tipos de dato de las vbles M.DateStart y M.DateEnd son efectivamente Fecha y que concuerden con el tipo de datos del campo Documents.CFECHA.
Debes verificar si los tipos de dato de las vbles M.AgentId y M.DateEnd son efectivamente Fecha.

¿Nos indicas cuál es el contenido de la línea 94 (o la que se indique en el error después de las corr que hayas hecho)?

>>> ... cerrar la ventana ... y luego vuelvo a compilar ya no me vuelve a aparecer el error....

¿El error te aparece al compilar o al ejecutar?

>>> Cuando genero el exe ... me genera este error.

Ejecutando el .EXE, cuando aparece el mensaje se error ¿te dice que el número de línea donde está el error es en la línea 94?

¿Es posible que 

lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, " + "'TODAS' AS RouteN, 'TODAS' AS LocalityN" 

lo cambies por 

lcSelect = "m.dateStart as DateStart, m.dateEnd as DateEnd, Agent.CNOMBREA01 AS Agent, Customer.CRAZONSO01 AS Client, 'TODAS' AS RouteN, 'TODAS' AS LocalityN" 

????
Reply all
Reply to author
Forward
0 new messages