Quisiera hacer esto para que me sirva la misma funcion.
Como lo podria hacer?
Paco
if ::oFolder1:nindex = 1
miALIAS := "::oDbfDataSet1"
elseif ::oFolder1:nIndex = 2
miaLIAS := "::oDbfDataSet2"
elseif ::oFolder1:nIndex = 3
miALIAS := "::oDbfDataSet3"
endif
WITH OBJECT mialias
IF :RecLock()
FOR nFor := nCurField + 1 TO auxVALOR
FieldPut( nFor,VALUE )
NEXT
:RecUnLock()
ENDIF
END WITH
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Se puede
-
- Mensajes: 532
- Registrado: Mié Feb 09, 2005 6:20 pm
Se puede
Podrias hacer esto, aunque seguro que te van a mostrar alguna solucion mas
elegante :
LOCAL nFolderIndex := ::oFolder1:nIndex
miALIAS := "::oDbfDataSet" + Str( nFolderIndex, 1 )
y luego todo lo demas
Un saludo
elegante :
LOCAL nFolderIndex := ::oFolder1:nIndex
miALIAS := "::oDbfDataSet" + Str( nFolderIndex, 1 )
y luego todo lo demas
Un saludo
-
- Mensajes: 532
- Registrado: Mié Feb 09, 2005 6:20 pm
Se puede
disculpa lei mal tu mensaje, claro el problema lo tienes en que oDbfDataset
es un objeto no una cadena de texto yo para casos parecidos utilizo &( lo
que sea ) aunque creo que esta mas o menos en desuso por todo el mundo, y no
se si funcionaria aqui.
Un saludo
es un objeto no una cadena de texto yo para casos parecidos utilizo &( lo
que sea ) aunque creo que esta mas o menos en desuso por todo el mundo, y no
se si funcionaria aqui.
Un saludo
Se puede
Paco,
> Quisiera hacer esto para que me sirva la misma funcion.
>
> Como lo podria hacer?
>
> Paco
>
> if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
> endif
> WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
> END WITH
Simplemente quitas las comillas de las tres líneas de los if:
if ::oFolder1:nindex = 1
miALIAS := ::oDbfDataSet1
elseif ::oFolder1:nIndex = 2
miaLIAS := ::oDbfDataSet2
elseif ::oFolder1:nIndex = 3
miALIAS := ::oDbfDataSet3
endif
....
--
Un saludo,
José F. Giménez
> Quisiera hacer esto para que me sirva la misma funcion.
>
> Como lo podria hacer?
>
> Paco
>
> if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
> endif
> WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
> END WITH
Simplemente quitas las comillas de las tres líneas de los if:
if ::oFolder1:nindex = 1
miALIAS := ::oDbfDataSet1
elseif ::oFolder1:nIndex = 2
miaLIAS := ::oDbfDataSet2
elseif ::oFolder1:nIndex = 3
miALIAS := ::oDbfDataSet3
endif
....
--
Un saludo,
José F. Giménez
- ignacio
- Site Admin
- Mensajes: 9449
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Se puede
Paco,
El primer paso sería quitar las comillas a ::oDbfDataSet?. Luego veo unos
cuantos errores de bulto de fácil solución que tu mismo supongo encontrarás
rápido, como por ejemplo: A Fieldput le falta un ':' delante.
Saludos,
"Paco V" <ssi@ono.com> escribió en el mensaje
news:44742fc7$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
>
> Quisiera hacer esto para que me sirva la misma funcion.
>
> Como lo podria hacer?
>
> Paco
>
> if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
> endif
> WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
> END WITH
El primer paso sería quitar las comillas a ::oDbfDataSet?. Luego veo unos
cuantos errores de bulto de fácil solución que tu mismo supongo encontrarás
rápido, como por ejemplo: A Fieldput le falta un ':' delante.
Saludos,
"Paco V" <ssi@ono.com> escribió en el mensaje
news:44742fc7$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
>
> Quisiera hacer esto para que me sirva la misma funcion.
>
> Como lo podria hacer?
>
> Paco
>
> if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
> endif
> WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
> END WITH
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Se puede
Prueba con esto:
local miAlias
if ::oFolder1:nindex = 1
miALIAS := ::oDbfDataSet1
elseif ::oFolder1:nIndex = 2
miaLIAS := ::oDbfDataSet2
elseif ::oFolder1:nIndex = 3
miALIAS := ::oDbfDataSet3
endif
En miALIAS tendras una referencia al objeto ::oDbfDataSet? en otras palabras
sera un "acceso directo" a los datos del objeto seleccionado
"FRANCISCO SANCHEZ" <francisco@softwaretotal.biz> escribió en el mensaje
news:447439ef$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> disculpa lei mal tu mensaje, claro el problema lo tienes en que
> oDbfDataset es un objeto no una cadena de texto yo para casos parecidos
> utilizo &( lo que sea ) aunque creo que esta mas o menos en desuso por
> todo el mundo, y no se si funcionaria aqui.
>
> Un saludo
>
local miAlias
if ::oFolder1:nindex = 1
miALIAS := ::oDbfDataSet1
elseif ::oFolder1:nIndex = 2
miaLIAS := ::oDbfDataSet2
elseif ::oFolder1:nIndex = 3
miALIAS := ::oDbfDataSet3
endif
En miALIAS tendras una referencia al objeto ::oDbfDataSet? en otras palabras
sera un "acceso directo" a los datos del objeto seleccionado
"FRANCISCO SANCHEZ" <francisco@softwaretotal.biz> escribió en el mensaje
news:447439ef$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> disculpa lei mal tu mensaje, claro el problema lo tienes en que
> oDbfDataset es un objeto no una cadena de texto yo para casos parecidos
> utilizo &( lo que sea ) aunque creo que esta mas o menos en desuso por
> todo el mundo, y no se si funcionaria aqui.
>
> Un saludo
>
Se puede
Os aseguro que habia probado todo. Se ve que cada vez cometia algún error
distinto y no funcionaba.
Gracias una vez mas.
Paco V
"Paco V" <ssi@ono.com> wrote:
>
>Quisiera hacer esto para que me sirva la misma funcion.
>
>Como lo podria hacer?
>
>Paco
>
>if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
>endif
>WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
>END WITH
distinto y no funcionaba.
Gracias una vez mas.
Paco V
"Paco V" <ssi@ono.com> wrote:
>
>Quisiera hacer esto para que me sirva la misma funcion.
>
>Como lo podria hacer?
>
>Paco
>
>if ::oFolder1:nindex = 1
> miALIAS := "::oDbfDataSet1"
> elseif ::oFolder1:nIndex = 2
> miaLIAS := "::oDbfDataSet2"
> elseif ::oFolder1:nIndex = 3
> miALIAS := "::oDbfDataSet3"
>endif
>WITH OBJECT mialias
> IF :RecLock()
> FOR nFor := nCurField + 1 TO auxVALOR
> FieldPut( nFor,VALUE )
> NEXT
> :RecUnLock()
> ENDIF
>END WITH