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.

Uso de SaveFrom

Foro de Xailer profesional en español
Responder
jrcpoli
Mensajes: 240
Registrado: Mié Oct 25, 2006 8:55 pm

Uso de SaveFrom

Mensaje por jrcpoli »

Saludos:
Lo que quiero es que en un formulario que tengo dos TDBBrowse llamemos a
uno nuevo y otro viejo el operador por medio de un botón pueda pasar el
contenido de un registro de uno a otro, teniendo en cuenta que los dos
contienen los mismos campos pero en diferente base de datos, he empleado
esto.
METHOD NuevoClick( oSender ) CLASS TFormCensos
LOCAL nPos
*
IF (nPos := ::oDBBwViejo:KeyNo() ) > 0
*
WITH OBJECT ::oDBBwNuevo
:oDataSet:AddNew()
:oDataSet:SaveFrom( ::oDBBwViejo:oDataSet )
:oDataSet:UpDate()
:Refresh()
END
ENDIF
RETURN Nil
Pero está claro que me falta algo, o está mal enfocado porque no se
copia de un browse a otro, ni a la base de datos el registro
seleccionado de vieja a nueva, sí­ añade un registro nuevo pero sin
datos, por eso digo que me falta algo y está mal.
José Ramón Castro.
José Ramón Castro.
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9457
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Uso de SaveFrom

Mensaje por ignacio »

José Ramón,
SaveFrom ya se encarga de hacer el correspondiente Fieldput en la tabla, por
lo tanto te bastaría con esto:
WITH OBJECT ::oDBBwNuevo
:oDataSet:Append()
:oDataSet:SaveFrom( ::oDBBwViejo:oDataSet )
:Refresh()
END
No obstante, se ha modificado el método SaveFrom para que también actualice
el buffer de los datafields por lo que en el futuro también funcionará de la
forma que lo estabas haciendo.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"José Ramón Castro Polinio" <jrcpoli@terra.es> escribió en el mensaje
news:45409be7$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Saludos:
>
> Lo que quiero es que en un formulario que tengo dos TDBBrowse llamemos a
> uno nuevo y otro viejo el operador por medio de un botón pueda pasar el
> contenido de un registro de uno a otro, teniendo en cuenta que los dos
> contienen los mismos campos pero en diferente base de datos, he empleado
> esto.
>
> METHOD NuevoClick( oSender ) CLASS TFormCensos
>
> LOCAL nPos
> *
> IF (nPos := ::oDBBwViejo:KeyNo() ) > 0
> *
> WITH OBJECT ::oDBBwNuevo
> :oDataSet:AddNew()
> :oDataSet:SaveFrom( ::oDBBwViejo:oDataSet )
> :oDataSet:UpDate()
> :Refresh()
> END
> ENDIF
>
> RETURN Nil
>
> Pero está claro que me falta algo, o está mal enfocado porque no se copia
> de un browse a otro, ni a la base de datos el registro seleccionado de
> vieja a nueva, sí añade un registro nuevo pero sin datos, por eso digo que
> me falta algo y está mal.
>
> José Ramón Castro.
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
jrcpoli
Mensajes: 240
Registrado: Mié Oct 25, 2006 8:55 pm

Uso de SaveFrom

Mensaje por jrcpoli »

Gracias ya lo he probado y funciona.
José Ramón Castro.
Ignacio Ortiz de Zúñiga escribió:
> José Ramón,
>
> SaveFrom ya se encarga de hacer el correspondiente Fieldput en la tabla, por
> lo tanto te bastarí­a con esto:
>
> WITH OBJECT ::oDBBwNuevo
> :oDataSet:Append()
> :oDataSet:SaveFrom( ::oDBBwViejo:oDataSet )
> :Refresh()
> END
>
> No obstante, se ha modificado el método SaveFrom para que también actualice
> el buffer de los datafields por lo que en el futuro también funcionará de la
> forma que lo estabas haciendo.
>
> Un saludo,
>
José Ramón Castro.
Responder