Power Builder - Ventana de Busqueda

 
Vista:
sin imagen de perfil

Ventana de Busqueda

Publicado por Beto (71 intervenciones) el 29/09/2015 08:54:31
Hola a todos, estoy desarrollando una ventana de búsqueda la cual tiene un DropDownListBox la cual carga todos los campos del DataWindow de la ventana que invoque a la ventana de búsqueda.

Para esto hice lo siguiente en un objeto uo_dw tengo un evento ue_buscar el cual tiene el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
integer li_i, li_count ,li_col
string ls_columnas[], ls_nombre
 
Window lw_Window
 
lw_Window = w_principal.GetActiveSheet()
 
li_col = 0
s_buscar lstr_buscar
 
li_count  = integer(this.Object.DataWindow.Column.Count)
 
if li_count <= 0 then return
 
For li_i = 1 to li_count
	if lower(this.describe("#" + string(li_i) + ".Band")) = "detail" then
		ls_nombre = this.describe("#" + string(li_i) + ".name")
		if this.describe(ls_nombre + ".visible") = '1' then
			li_col++
			lstr_buscar.s_columna[li_col]= ls_nombre
			lstr_buscar.s_texto     [li_col] = this.describe(ls_nombre + "_t.text")
		end if
	end if
next
 
//Enviar Window y DataWindow como parametros
lstr_find.w_window = lw_Window
lstr_find.dw_object = This
 
//Abrir ventana de búsqueda enviando parametros
OpenWithParm(w_busqueda, lstr_buscar)

Luego en la ventana de búsqueda w_busqueda en el evento open tiene el siguiente código:

En Variables de Instancia declaro:

1
2
3
4
5
6
s_buscar istr_buscar
String     is_Columna
 
window iw_Window
 
datawindow  idw_datawindow

En el evento open:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Integer li_i, li_c
 
istr_buscar     = Message.PowerObjectParm
 
iw_Window         = istr_buscar.w_window
idw_datawindow = istr_buscar.dw_object
 
li_c= UpperBound(istr_buscar.s_columna)
 
FOR li_i= 1 TO li_c
 ddlb_1.AddItem(istr_buscar.s_texta[li_i])
NEXT
 
ddlb_find.Selectitem(1)
is_Columna = istr_find.s_columna[1]

En el evento selectionchanged del DropDownListBox:

1
is_Columna = istr_buscar.s_columna[index]


Los campos del DataWindow de la ventana que invoca o abre la ventana w_busqueda se cagan en el DropDownListBox pero cuando selecciono un campo en el DropDownLisBox no hace referencia al campo seleccionado es decir si el combo muestra

Codigo
Nombre
Direccion
Fecha

Y elijo Nombre el combo hace referencia a otro por dar un ejemplo a Fecha, lo comprobe al colocar un messagebox en el evento selectionchanged del DropDownListBox

Alguien tiene una idea de como dar solución a este inconveniente?

Saludos
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