FoxPro/Visual FoxPro - ERROR VFP 9.0: INSTRUCCION MUY COMPLICADA

 
Vista:

ERROR VFP 9.0: INSTRUCCION MUY COMPLICADA

Publicado por alexcoinc (450 intervenciones) el 27/02/2009 16:31:19
Vengo trabajando hace unos años en VFP 6 y ahora consegui mediante este foro el VFP 9.0

Con la incertidumbre que genera tener clientes con tus aplicaciones y actualizarlas mediante una nueva compilacion con una nueva herramienta, me di a dos tareas:

Averiguar en este foro si la compilación y posterior funcionamiento de los aplicativos variaria de una herramienta a otra y la verdad.... NADIE ME DIO UNA RESPUESTA DE ALARMA O DE TRANQUILIDAD... meros conceptos 'vagos', que finalizan en lo que ya sabemos... PRUEBE PARA SABER SI FUNCIONA... con el consecuente desgaste en tiempo que conlleva.

Ahora bien, la gran mayoría de conceptos me hablan de que VFP 9.0 es una maravilla, mucho mas que VFP 6.0, y por eso estoy " medio animado "... medio, pues los aplicativos funcionan bien con VFP 6, pero UStedes saben entre mejor utilidades tenga una herramienta, PUES UNO LA QUIERE UTILIZAR.. NO CREEN ??

Al respecto ... aún sigo esperando... comentarios.
***************************************************************************************************

DESDE VFP 9:
Bueno, en concreto y después de hacer una prueba 'corriendo' un formulario en el que está el siguiente código, ME VOTA UN ERROR, QUE HABLA DE QUE : Hay una instrucción demasiado complicada y por eso me da un 'BUG', que no me vota en VFP 6.0. que puede estar pasando ???

Gracias por su ayuda.

ESTAS SON LAS LINEAS QUE TIENE EL BOTON QUE EJECUTO.
======================================================

if total_borra > 0
delete from afiliacion where periodo = per_actual and &cond. and ;
exist (select 1 from movcon where movcon.centrow = afiliacion.centrow and ;
movcon.cod_contra = afiliacion.contrato and movcon.documento = afiliacion.documento ;
and movcon.estado = 1) and exist (select 1 from movpag where movpag.centrow = afiliacion.centrow and ;
movpag.cod_cto = afiliacion.contrato and movpag.documento = afiliacion.documento ;
and movpag.estado = space(1))

delete from retefuente where periodo = per_actual and &cond. and ;
exist (select 1 from movcon where movcon.centrow = retefuente.centrow and ;
movcon.cod_contra = retefuente.contrato and movcon.documento = retefuente.documento ;
and movcon.estado = 1) and exist (select 1 from movpag where movpag.centrow = retefuente.centrow and ;
movpag.cod_cto = retefuente.contrato and movpag.documento = retefuente.documento ;
and movpag.estado = space(1))
delete from aportes where periodo = per_actual and &cond. and ;
exist (select 1 from movcon where movcon.centrow = aportes.centrow and ;
movcon.cod_contra = aportes.contrato and movcon.documento = aportes.documento ;
and movcon.estado = 1) and exist (select 1 from movpag where movpag.centrow = aportes.centrow and ;
movpag.cod_cto = aportes.contrato and movpag.documento = aportes.documento ;
and movpag.estado = space(1))
delete from compensa where periodo=per_actual and &cond. and ;
exist (select 1 from movcon where movcon.centrow = compensa.centrow and ;
movcon.cod_contra = compensa.contrato and movcon.documento = compensa.documento ;
and movcon.estado = 1) and exist (select 1 from movpag where movpag.centrow = compensa.centrow and ;
movpag.cod_cto = compensa.contrato and movpag.documento = compensa.documento ;
and movpag.estado = space(1))
update movcon set &cond2. where movcon.estado = 1 ;
and exist (select 1 from movpag where movpag.centrow = movcon.centrow and ;
movpag.cod_cto = movcon.cod_contra and movpag.documento = movcon.documento ;
and movpag.estado=space(1) and &cond.)
delete from movpag where movpag.estado=space(1) and &cond. and ;
exist (select 1 from movcon where movcon.centrow = movpag.centrow and ;
movcon.cod_contra = movpag.cod_cto and movcon.documento = movpag.documento ;
and movcon.estado = 1)
endif
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ERROR VFP 9.0: INSTRUCCION MUY COMPLICADA

Publicado por jose camilo (45 intervenciones) el 28/02/2009 20:13:06
es verdad k todo cambio trae con sigo nuevos retos y de version en version notaras cambio en todos los lenguajes de programacion desarrollado por papa microsoft, ellos no guardan una linea de trabajo congruente.
pero si te siente a gusto en el 6 continua en el en mi caso yo trabajo en el 6 pero estoy reescribiendo todo mi programa en el 9 ya k como antes programaba tipo cliper en el nueve no funciona pero nada estoy en eso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ERROR VFP 9.0: INSTRUCCION MUY COMPLICADA

Publicado por Edgar dvd (135 intervenciones) el 03/03/2009 18:05:15
que tal amigo

pues yo tambien migre hace ya tiempo a vfp, y no tuve ningun problema al recompilar mis programas en vfp9

lo unico que tuve qe tomar en cuenta fue el modo de trabajo con sql y el reporteador

ya que traen mejoras apartir de la version 7

si quieres que tu programa no tenga problemas en esa parte, el cual creo que es tu caso ya que el codigo que muestras donde tienes error son instrucciones sql, echale un vistazo en la ayuda a los comandos

Set EngineBehavior
Set ReportBehavior

los cuales configuran el ambiente de vfp en el modo de trabajo del reporteador y de las instrucciones sql
en tu caso establecelas como

Set EngineBehavior 70
Set ReportBehavior 70

al establecerlas de ese modo ya no tendras problemas ya que tanto las instrucciones sql como el reporteador se compartaran como vfp 7 hacia abajo

un saludo amigo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar