Power Builder - Ayuda con evento del Datawindow

 
Vista:

Ayuda con evento del Datawindow

Publicado por Carolina (26 intervenciones) el 20/04/2022 21:54:48
Hola amigos nuevamente! Tengo una consulta, no se que estoy haciendo mal:
tengo definido un datawindow (grid) con 10 campos, pero se muestran solo 4 columnas nombre paciente, documento, forma de pago y comentario.
Al Pasar con TAB el campo comentario(que es el ultimo campo mostrado del datawindow pero el anteultimo definido) lo que hago es, insertar una nueva fila para agregar un paciente a ese dw.

En el evento Losefocus del datawindow tengo este codigo:
If getcolumn() = 9 then pb_nuevo.Triggerevent(Clicked!)

Muy bien, ahora el evento Clicked de Pb_nuevo es el siguiente:

integer v_fila

datawin.insertrow(0)
v_fila = datawin.rowcount()
datawin.scrolltorow(v_fila)
datawin.setitem(v_fila, 2, 'DOBLE CLICK ó ENTER para AGREGAR') //aca va el nombre del paciente
datawin.setitem(v_fila, 3, vid_agenda_actual)
datawin.setitem(v_fila, 4, 'M') //forma de pago M=Mensual D=Diario
datawin.setitem(v_fila, 5, vid_usuario)
datawin.setitem(v_fila, 6, datetime(today(), now()))
datawin.setrow(v_fila)
datawin.setcolumn(2)
datawin.setfocus()

Entonces yo quiero que al clickear la tecla ENTER en la columna 2 me aparezca la ventana de busqueda de pacientes, asique, lo puse en el evento Other del datawindow:

String vn_pac, vtipo_doc
Long vId_pac, vdni_pac

If KeyDown(KeyEnter!) AND getcolumn() = 2 then
Open(w_abmcs_pacientes)
vid_pac = Message.doubleparm
If vid_pac > 0 then
Select n_paciente, tipo_documento, nro_documento Into :vn_pac, :vtipo_doc, :vdni_pac From Gtv_pacientes where id_paciente = :vid_pac;
Datawin.Setitem(datawin.getrow(), 1, vid_pac)
Datawin.Setitem(datawin.getrow(), 2, vn_pac)
Datawin.Setitem(datawin.getrow(), 7, vtipo_doc)
Datawin.Setitem(datawin.getrow(), 8, vdni_pac)
Datawin.setcolumn(4)
End if
End if

(y tambien puse el codigo en el evento doblecliked del dw).
El dobleclicked funciona correctamente obvio pero no puedo hacer que, al cambiar la columna presionando la tecla TAB del teclado (sin usar el mouse), me abra w_abmcs_pacientes

No se si lo estoy poniendo en el evento correcto o no, o me falta algo, no se que hice mal.
Muchas gracias!!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda con evento del Datawindow

Publicado por Bunker (149 intervenciones) el 22/04/2022 16:40:02
Buenas

Crea un Evento Nuevo por ejemplo key_enter
asignale el Event ID pbm_dwnprocessenter

Alli va el Codigo.que necesites

en el evento Other va andar pero va estar preguntando
hasta por un movimiento del raton ,, lo cual es perjudicial

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con evento del Datawindow

Publicado por Carolina (26 intervenciones) el 25/04/2022 18:03:38
Hola Bunker!!! Gracias por tu rapida respuesta!!!!
Ahora voy a definir este evento!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con evento del Datawindow

Publicado por Carolina (26 intervenciones) el 29/04/2022 00:47:51
Hola Bunker, funciona perfecto esto que me dijiste de definir este otro evento, ya lo hice
Muchas gracias!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar