Pasar datos de un DW a otro DW en Power Builder
Tengo dos dw, uno de tipo Grid y otro Freeform, donde ambas están ubicadas en ventanas diferentes. Te muestro el código:
--------------------------------------------------------------------------------------------
= dw_1(freeform) boton "Traspasar datos" evento clicked del dw =
str_equipo miequipo //defini una estructura
if dwo.name="b_1 " then
open (w_buscar_z)
miequipo=message.powerobjectparm
this.setitem(row,"id_equipo",miequipo.id_equipo)
this.setitem(row,"nombre_equipo",miequipo.nombre_equipo)
end if
---------------------------------------------------------------------------------------------------------
= dw_2(grid) boton "Cerrar ventana" evento clicked del boton =
str_equipo equipo
equipo.id_equipo=dw_1.getitemnumber(dw_1.getrow(),1)
equipo.nombre_equipo=dw_1.getitemstring(dw_1.getrow(),2)
-------------------------------------------------------------------------------------------------------------
= dw_1(freeform) boton "guardar cambios" evento clicked del boton =
if dw_1.Update() = 1 then
commit using sqlca;
messagebox("Mensaje","Los datos se guardaron con éxito!",Information!)
else
rollback using sqlca;
messagebox("Error","Hubo un error de actualización",StopSign!)
end if
--------------------------------------------------------------------------------------------------------------
Esto funciona correctamente, mi problema es que al traspasar los datos al dw_1(freeform) y guardo los cambios, no se guarda con el mismo id_equipo, sino que es como si guardara un nuevo registro. Si yo traspase:
34
Impresora laser
Si borro "laser" y guardo lo que deje se guardarán los cambios así:
35 <=== :(
Impresora
Siendo que debe de quedarse con el mismo id. Haber si no te confundí con tanto rollo, o si me propones otra solución te lo agradecería mucho.
PD. En mi base de datos el ID_EQUIPO es Autonumérico.
--------------------------------------------------------------------------------------------
= dw_1(freeform) boton "Traspasar datos" evento clicked del dw =
str_equipo miequipo //defini una estructura
if dwo.name="b_1 " then
open (w_buscar_z)
miequipo=message.powerobjectparm
this.setitem(row,"id_equipo",miequipo.id_equipo)
this.setitem(row,"nombre_equipo",miequipo.nombre_equipo)
end if
---------------------------------------------------------------------------------------------------------
= dw_2(grid) boton "Cerrar ventana" evento clicked del boton =
str_equipo equipo
equipo.id_equipo=dw_1.getitemnumber(dw_1.getrow(),1)
equipo.nombre_equipo=dw_1.getitemstring(dw_1.getrow(),2)
-------------------------------------------------------------------------------------------------------------
= dw_1(freeform) boton "guardar cambios" evento clicked del boton =
if dw_1.Update() = 1 then
commit using sqlca;
messagebox("Mensaje","Los datos se guardaron con éxito!",Information!)
else
rollback using sqlca;
messagebox("Error","Hubo un error de actualización",StopSign!)
end if
--------------------------------------------------------------------------------------------------------------
Esto funciona correctamente, mi problema es que al traspasar los datos al dw_1(freeform) y guardo los cambios, no se guarda con el mismo id_equipo, sino que es como si guardara un nuevo registro. Si yo traspase:
34
Impresora laser
Si borro "laser" y guardo lo que deje se guardarán los cambios así:
35 <=== :(
Impresora
Siendo que debe de quedarse con el mismo id. Haber si no te confundí con tanto rollo, o si me propones otra solución te lo agradecería mucho.
PD. En mi base de datos el ID_EQUIPO es Autonumérico.
Respuesta de Nestor Tirado Díaz
1