problemas con FOR EACH.. error Nesting error

15/09/2003 - 17:36 por Abraham Uribe | Informe spam
Hola grupo!

Tengo el siguiente codigo con el cual recorro cada uno de los objetos
contenidos en pageframe(4 paginas), para asignarles en el value, el
contenido de la propiedad ValorInicial, siempre y cuando el objeto tenga la
propiedad ValorInicial..

Al ejecutar el codigo siguiente me arroja el error "Nestin Error.." el
error se presenta en el for each donde esta la variable &lcPagina en la
cual le indico al for each donde estan los objetos a recorrer.
al ejecutar el codigo cuando se ejecuta la instruccion NEXT se presenta el
error.

Nota:
Si utilizo la linea que esta marca con asterisco el codigo funciona bien...

FOR lnNumePage = 1 TO THISFORM.PgfBase.PAGECOUNT
lcNombPage = 'THISFORM.PgfBase.Page' + ALLTRIM(STR(lnNumePage))
lcPagina = 'THISFORM.PgfBase.Page' + ALLTRIM(STR(lnNumePage)) + '.Objects'
SET STEP ON

* FOR EACH oObjeForm IN THISFORM.PgfBase.Page1.OBJECTS
FOR EACH oObjeForm IN &lcPagina
lcNombObje = lcNombPage + '.' + oObjeForm.NAME
IF PEMSTATUS(&lcNombObje, 'ValorInicial', 5)
lcNombObje = ALLTRIM(lcNombObje)+'.'
IF NOT &lcNombObje.CampoModificable
&lcNombObje.VALUE = &lcNombObje.ValorInicial
ENDIF
ENDIF
NEXT
NEXT

Gracias por la ayuda que me puedan prestar.
 

Leer las respuestas

#1 Esparta Palma
15/09/2003 - 19:34 | Informe spam
Revisa si esto te sirve:

FOR EACH loPages IN ThisForm.PagBase.Pages
FOR EACH loObjects IN loPages.Objects
IF PEMSTATUS(loObjects,"ValorInicial",5)
IF NOT loObject.CampoModificable
loObject.Value = loObject.ValorInicial
ENDIF
ENDIF
ENDFOR
ENDFOR

P.S. No todo en la vida es MacroSustitución ;)

Apoya a Visual FoxPro usándolo legalmente
ž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º
Espartaco Palma Martínez
SysOp PortalFox ( http://www.PortalFox.com )
email:
Acapulco, Guerrero. México


* FOR EACH oObjeForm IN THISFORM.PgfBase.Page1.OBJECTS
FOR EACH oObjeForm IN &lcPagina
lcNombObje = lcNombPage + '.' + oObjeForm.NAME
IF PEMSTATUS(&lcNombObje, 'ValorInicial', 5)
lcNombObje = ALLTRIM(lcNombObje)+'.'
IF NOT &lcNombObje.CampoModificable
&lcNombObje.VALUE = &lcNombObje.ValorInicial
ENDIF
ENDIF
NEXT
NEXT


Abraham Uribe wrote:

Hola grupo!

Tengo el siguiente codigo con el cual recorro cada uno de los objetos
contenidos en pageframe(4 paginas), para asignarles en el value, el
contenido de la propiedad ValorInicial, siempre y cuando el objeto tenga la
propiedad ValorInicial..

Al ejecutar el codigo siguiente me arroja el error "Nestin Error.." el
error se presenta en el for each donde esta la variable &lcPagina en la
cual le indico al for each donde estan los objetos a recorrer.
al ejecutar el codigo cuando se ejecuta la instruccion NEXT se presenta el
error.

Nota:
Si utilizo la linea que esta marca con asterisco el codigo funciona bien...

FOR lnNumePage = 1 TO THISFORM.PgfBase.PAGECOUNT
lcNombPage = 'THISFORM.PgfBase.Page' + ALLTRIM(STR(lnNumePage))
lcPagina = 'THISFORM.PgfBase.Page' + ALLTRIM(STR(lnNumePage)) + '.Objects'
SET STEP ON

* FOR EACH oObjeForm IN THISFORM.PgfBase.Page1.OBJECTS
FOR EACH oObjeForm IN &lcPagina
lcNombObje = lcNombPage + '.' + oObjeForm.NAME
IF PEMSTATUS(&lcNombObje, 'ValorInicial', 5)
lcNombObje = ALLTRIM(lcNombObje)+'.'
IF NOT &lcNombObje.CampoModificable
&lcNombObje.VALUE = &lcNombObje.ValorInicial
ENDIF
ENDIF
NEXT
NEXT

Gracias por la ayuda que me puedan prestar.




Preguntas similares