Página 1 de 1
Macro en nombre de registro
Publicado: Mié Ene 11, 2006 1:27 pm
por Paco V
Se puede utilizar & en la siguiente funcion para introducir 11 en NomCamP1,
12 en NomCamp2, ...., 15 en NomCamp5?
for n := 1 to 5
campo := "NomCamp"+str(n,1)
::oDbfDataSet1:&campo := n+10
next n
Macro en nombre de registro
Publicado: Mié Ene 11, 2006 1:43 pm
por Xevi
Paco,
no lo he probado... a ver si te sirve!!!
For n := 1 To 5
__ObjSendMsg( Self, "oDbfDataSet1:NomCamp" + AllTrim(Str(n)) ) :=
n+10
Next
Un Saludo,
Xevi.
"Paco V" <
ssi@ono.com> escribió en el mensaje
news:43c4f9a1$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>
>
> Se puede utilizar & en la siguiente funcion para introducir 11 en
> NomCamP1,
> 12 en NomCamp2, ...., 15 en NomCamp5?
>
>
> for n := 1 to 5
> campo := "NomCamp"+str(n,1)
> ::oDbfDataSet1:&campo := n+10
> next n
>
>
>
>
Macro en nombre de registro
Publicado: Mié Ene 11, 2006 3:39 pm
por CapelSoft
Xevi y Paco,
Probad así (no lo he probado):
cMacro := "Self:odbfdataset1:"+campo
&cMacro := loquesea...
Esto creo que debería de funcionar. Si no ando equivocado, los dataxxx
no crean datas reales, si no que utiliza el sistema de captura de errores.
Saludos,
José Luis Capel
::oDbfDataSet1:&campo
Xevi escribió:
>
> Paco,
>
> no lo he probado... a ver si te sirve!!!
>
> For n := 1 To 5
> __ObjSendMsg( Self, "oDbfDataSet1:NomCamp" + AllTrim(Str(n)) ) :=
> n+10
> Next
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Paco V" <
ssi@ono.com> escribió en el mensaje
> news:43c4f9a1$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>
>>
>>Se puede utilizar & en la siguiente funcion para introducir 11 en
>>NomCamP1,
>>12 en NomCamp2, ...., 15 en NomCamp5?
>>
>>
>>for n := 1 to 5
>>campo := "NomCamp"+str(n,1)
>>::oDbfDataSet1:&campo := n+10
>>next n
>>
>>
>>
>>
>
>
>
>
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 8:02 am
por Paco V
Jose Luis no va. A lo mejor no se puede, pero seria muy interesante.
Paco V
=?ISO-8859-1?Q?Jos=E9_Luis_Capel?= <
capelsoft@terra.es> wrote:
>Xevi y Paco,
>
>Probad así (no lo he probado):
>
>cMacro := "Self:odbfdataset1:"+campo
>
>&cMacro := loquesea...
>
>Esto creo que debería de funcionar. Si no ando equivocado, los dataxxx
>no crean datas reales, si no que utiliza el sistema de captura de errores.
>
>Saludos,
>José Luis Capel
>
>
>::oDbfDataSet1:&campo
>
>Xevi escribió:
>>
>> Paco,
>>
>> no lo he probado... a ver si te sirve!!!
>>
>> For n := 1 To 5
>> __ObjSendMsg( Self, "oDbfDataSet1:NomCamp" + AllTrim(Str(n))
) :=
>> n+10
>> Next
>>
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Paco V" <
ssi@ono.com> escribió en el mensaje
>> news:43c4f9a1$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>>
>>>
>>>Se puede utilizar & en la siguiente funcion para introducir 11 en
>>>NomCamP1,
>>>12 en NomCamp2, ...., 15 en NomCamp5?
>>>
>>>
>>>for n := 1 to 5
>>>campo := "NomCamp"+str(n,1)
>>>::oDbfDataSet1:&campo := n+10
>>>next n
>>>
>>>
>>>
>>>
>>
>>
>>
>>
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 8:12 am
por CapelSoft
Paco,
Mira a ver si este 'apaño' te sirve:
cMacro := &( " { | S | s:ODBFDATASET1:"+campo"}" )
logdebug(eval(cMacro, Self))
Saludos,
José Luis Capel
Paco V escribió:
> Jose Luis no va. A lo mejor no se puede, pero seria muy interesante.
>
> Paco V
>
> =?ISO-8859-1?Q?Jos=E9_Luis_Capel?= <
capelsoft@terra.es> wrote:
>
>>Xevi y Paco,
>>
>>Probad así (no lo he probado):
>>
>>cMacro := "Self:odbfdataset1:"+campo
>>
>>&cMacro := loquesea...
>>
>>Esto creo que debería de funcionar. Si no ando equivocado, los dataxxx
>>no crean datas reales, si no que utiliza el sistema de captura de errores.
>>
>>Saludos,
>>José Luis Capel
>>
>>
>>::oDbfDataSet1:&campo
>>
>>Xevi escribió:
>>
>>>
>>>Paco,
>>>
>>>no lo he probado... a ver si te sirve!!!
>>>
>>> For n := 1 To 5
>>> __ObjSendMsg( Self, "oDbfDataSet1:NomCamp" + AllTrim(Str(n))
>
> ) :=
>
>>>n+10
>>> Next
>>>
>>>
>>>
>>>Un Saludo,
>>>Xevi.
>>>
>>>
>>>"Paco V" <
ssi@ono.com> escribió en el mensaje
>>>news:43c4f9a1$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>>>
>>>
>>>>Se puede utilizar & en la siguiente funcion para introducir 11 en
>>>>NomCamP1,
>>>>12 en NomCamp2, ...., 15 en NomCamp5?
>>>>
>>>>
>>>>for n := 1 to 5
>>>>campo := "NomCamp"+str(n,1)
>>>>::oDbfDataSet1:&campo := n+10
>>>>next n
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 10:03 am
por jfgimenez
Paco,
> Se puede utilizar & en la siguiente funcion para introducir 11 en
> NomCamP1,
> 12 en NomCamp2, ...., 15 en NomCamp5?
>
>
> for n := 1 to 5
> campo := "NomCamp"+str(n,1)
> ::oDbfDataSet1:&campo := n+10
> next n
Prueba esto:
WITH OBJECT ::oDbfDataSet1
FOR n :=1 TO 5
:FieldPut( :FieldPos( "NomCamp" + Str( n, 1 ) ), n + 10 )
NEXT
END
--
Un saludo,
José F. Giménez
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 10:21 am
por Ingo
Paco,
try this:
WITH OBJECT ::oDbfDataSet1
:RecLock()
FOR n:=1 TO 5
:oFieldByName("camp"+STR(n,1)):Value:=10+n
NEXT
:RecUnlock()
/* controlling
FOR n:=1 TO 5
msginfo(:&("camp"+STR(n,1)))
NEXT
*/
END WITH
Regards
Ingo
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 12:31 pm
por Paco V
Me genera error:
FIELDPUT(0)
Error DBFCDX/1022 Lock required
Argumentos: ()
Paco V
"Jose F. Gimenez" <
jfgimenez@wanadoo.es> wrote:
>Paco,
>
>> Se puede utilizar & en la siguiente funcion para introducir 11 en
>> NomCamP1,
>> 12 en NomCamp2, ...., 15 en NomCamp5?
>>
>>
>> for n := 1 to 5
>> campo := "NomCamp"+str(n,1)
>> ::oDbfDataSet1:&campo := n+10
>> next n
>
>Prueba esto:
>
> WITH OBJECT ::oDbfDataSet1
> FOR n :=1 TO 5
> :FieldPut( :FieldPos( "NomCamp" + Str( n, 1 ) ), n + 10 )
> NEXT
> END
>
>--
>Un saludo,
>
>José F. Giménez
>
>
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 1:16 pm
por Paco V
OK Ingo. Y gracias a Todos por vuestro interes.
Regards
Paco V
"Ingo" <
ingo.jh@web.de> wrote:
>Paco,
>
>try this:
>WITH OBJECT ::oDbfDataSet1
> :RecLock()
> FOR n:=1 TO 5
> :oFieldByName("camp"+STR(n,1)):Value:=10+n
> NEXT
> :RecUnlock()
>/* controlling
> FOR n:=1 TO 5
> msginfo(:&("camp"+STR(n,1)))
> NEXT
>*/
>END WITH
>
>Regards
>
>Ingo
>
>
Macro en nombre de registro
Publicado: Jue Ene 12, 2006 1:59 pm
por Xevi
Paco,
Pues eso ya es un avance!!!
Quiere decir que si funciona.
Pero necesitas hacer un bloqueo del registro que necesitas modificar, o
abrir la DBF en modo exclusivo.
Un Saludo,
Xevi.
"Paco V" <
ssi@ono.com> escribió en el mensaje
news:43c63e0b$[email=
1@ozsrvnegro.ozlan.local...]
1@ozsrvnegro.ozlan.local...[/email]
>
>
> Me genera error:
> FIELDPUT(0)
> Error DBFCDX/1022 Lock required
> Argumentos: ()
>
> Paco V
>
> "Jose F. Gimenez" <
jfgimenez@wanadoo.es> wrote:
>>Paco,
>>
>>> Se puede utilizar & en la siguiente funcion para introducir 11 en
>>> NomCamP1,
>>> 12 en NomCamp2, ...., 15 en NomCamp5?
>>>
>>>
>>> for n := 1 to 5
>>> campo := "NomCamp"+str(n,1)
>>> ::oDbfDataSet1:&campo := n+10
>>> next n
>>
>>Prueba esto:
>>
>> WITH OBJECT ::oDbfDataSet1
>> FOR n :=1 TO 5
>> :FieldPut( :FieldPos( "NomCamp" + Str( n, 1 ) ), n + 10 )
>> NEXT
>> END
>>
>>--
>>Un saludo,
>>
>>José F. Giménez
>>
>>
>
>