Power Builder - retrieval arguments

 
Vista:
sin imagen de perfil

retrieval arguments

Publicado por Erick (18 intervenciones) el 15/06/2023 19:44:12
Buen dia, quisiera saber si hay forma de ignorar un retrieval argument y que el dw me muestre toda la informacion

tengo un dw con 3 columnas (id,comando,grupo), mi retrieval argument es para la columna grupo, dependiendo el texto de un ddlb hace que el dw me traiga lo que coincida con ese nombre, mi duda es, por ejemplo añadir al ddlb un item llamado TODO y que al seleccionarlo el dw muestre toda la informacion disponible, que ignore el argument

espero haberme explicado, gracias de antemano
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
Imágen de perfil de Adolfo
Val: 250
Bronce
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

retrieval arguments

Publicado por Adolfo (260 intervenciones) el 15/06/2023 20:24:37
Lo que yo hago es lo siguiente
Quitar el retrive de la datawindow, que recupere todo

Declaro una variable de instancia:
String is_query

En el evento Open de la Windows pongo:
is_query = dw_reporte.Describe("DataWindow.Table.Select") //Recupero la sentencia SQL de esta DW

En el boton de consultar o recuperar pongo:
1
2
3
4
5
6
7
8
9
10
11
12
13
ls_query = is_query
if ddlb_deptos.text <> 'TODOS' then
   ls_query = ls_query + " Where emp_depto = '" + Trim(ddlb_deptos.text) + "'"
end if
 
ls_query = 'DataWindow.Table.Select = "' + ls_query + '"'
ls_res = dw_reporte.Modify(ls_query)
 
if ls_res = "" then
   dw_reporte.retrieve()
else
   MessageBox("Error","Falla al modificar la query de la datawindow~r~n" + ls_res)
end if

En este ejemplo recupero la lista de empleados y tego dropdownlistbox llamado ddlb_deptos que lleno con la tabla de departamentos y le
agrego un item llamdo TODOS si el usuario selecciona algo diferente a TODOS entonces se modifica la sentencia SQL que tiene definida
Datawindow si no entonces recuperará a todos los empleados.

Saludos
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