Power Builder - COMO MARCAR MAS DE 1 REGISTRO EN EL DATAWINDOWS?

   
Vista:

COMO MARCAR MAS DE 1 REGISTRO EN EL DATAWINDOWS?

Publicado por Cristobal (1 intervención) el 27/03/2012 13:38:51
Estimados:

Herede un sistema en power builder 9 de una biblioteca virtual y encontre una falencia del sistema ,al cual aun no he podido dar solucion:

Hace unos quise borrar un proyecto con mas de 200 registros, pero me di cuenta que no coloque la opcion de marca mas de una opcion en un datawindows, por lo cual tuve que hacerlo uno x uno.

Mis consultas son:

1.- Como seria la manera para poder marcar mas de un registro en un datawindows? (Ojala que coloquen un mini ejemplo para entender, pq no he encontrado nada en google)

2.- Si marco mas de un registro, podre borrar con este codigo que tengo impuesto?



long ll_row
l_sav = 'no'
ll_row = dw_documentos.GetSelectedRow(0)

if ll_row > 0 then
if messagebox('Atención','Seguro desea eliminar?', Question!, OKCancel!, 2) = 1 then
if dw_documentos.deleterow(ll_row) = -1 then
messagebox('Atención','Error al eliminar la fila seleccionada')
return
else
if dw_documentos.update() = -1 then
messagebox('Atención','Error al Guardar la Modificación')
return
else
commit;
l_sav = 'ok'
end if
end if
end if
else
messagebox('Atención','No hay filas seleccionadas')
return
end if

ll_row = dw_documentos.GetRow()
dw_documentos.SelectRow(0, false)
dw_documentos.SelectRow(ll_row, TRUE)
dw_documentos.setfocus()


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

COMO MARCAR MAS DE 1 REGISTRO EN EL DATAWINDOWS?

Publicado por Leopoldo Taylhardat (690 intervenciones) el 30/03/2012 12:01:16
Saludos....
Yo particularmente uso cosas como esta...
al dw le agrego un campo "compute" de esta manera...
1 as sino
eso me permite marcar todos los registros que selecciono desde la bd....
este campo en el dw lo presento como un CheckBox (tilde)
Creo dos (2) Picture Bottom con las imagenes de "Seleccionar Todos" y "Seleccionar Ninguno"
al botón de "todo" le pongo el script...
long ll_row
ll_row= dw_x.RowCount()
do while ll_row > 0
dw_x.SetItem(ll_row,'sino',1)
ll_row --
Loop
al botón de "ninguno" le pongo el script...
long ll_row
ll_row= dw_x.RowCount()
do while ll_row > 0
dw_x.SetItem(ll_row,'sino',0)
ll_row --
Loop
Pongo un botón de "Aceptar" para eliminar con el siguiente script...
If MessageBox("Atención!", Ëstá seguro(a) de eliminar?",question!,yesno!,2) = 1 THEN
dw_x.SetFilter("sino = 1")
dw_x.Filter()
long ll_row
ll_row=dw_x.RowCount()
do while ll_row > 0
dw_x.DeleteRow(ll_row)
ll_row --
LOOP
Commit;
dw_x.SetFilter("")
dw_x.Filter()
end if

-----------------------------------------------------
Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

COMO MARCAR MAS DE 1 REGISTRO EN EL DATAWINDOWS?

Publicado por Juan Lara (1 intervención) el 12/08/2015 21:32:33
Muchas gracias, me fue de mucha utilidad, ademas te felicito por tu aporte...
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