Ayuda para mostrar información en un dropdown datawindows usando power builder

Hola
Expertos como están
Tengo una dudita
Tengo una dropdown datwindows
Por el ejemplo
El dato que muestra es el la descripcion_sucursal
y el dato que va por debajo es codigo_sucursal
El problem es que yo necesito sacar la descripción
de la sucursal para hacerle un setitem a otro campo
Pero por todo los medios que he intentado solo consigo sacar el código de la sucursal
Espero puedan ayudarme..
Gracias de antemano

4 Respuestas

Respuesta
1
Al momento de ejecutarse este evento, la información aún no se ha "confirmado".
Lo que deberías hacer es utilizar la función ACCEPTTEXT() la cual confirma la información.
El ejemplo sería algo así:
///**********************///
Long fila, codigo_sucursal
datawindowchild dwc
String Descripcion_sucursal
// apunto dwc al campo que contiene la dddw o el reporte anidado
getchild('campo', dwc)
// ahora dwc es "casi" una dw...
fila = dwc.Find('codigo_sucursal = '+String(codigo_sucursal), 1, dwc.RowCount())
Descripcion_sucursal = dwc.GetItemString(fila, 'descripcion_sucursal')
///**********************///
Se supone que la variable codigo_sucursal local debería tomar el valor que quieres buscar.
Y los nombres de campo que se utilizan en el find y en el getitemstring deben estar acordes con la definición de la dddw o subreporte.
okey = no me funviono por si acaso
estoy haciendolo en el evento item changed
= si puedes mandamne ewl ejemplo
Yo conozco las siguientes maneras:
-Posicionas el foco en la columna y fila (con SetRow(...) y SetColumn(...)) y utilizas GetText()
-Utilizas una variable DataWindowChild y en conjunto con GetChild(...) te las arreglas
Espero te sirva...
Si necesitas más ayuda sobre GetChild puedo mandarte un ejemplo...
Suerte!
Respuesta
1
Debes utilizar la función GetChild() para atrapar la Datwindow drop que tienes, luego podes tomar la columna de este datawindow child normalmente.
--
DataWindowChild dwc1
dw_1. GetChild('col en donde esta el dropdown', dwc1)
Dwc1.GetitemString(..,..)
Respuesta
1
La manera de extraer un dato de un dropdatawindow es la siguiente
1ero. Crear una instancia de un DATAWINDOWCHILD
2do. Utilizar la funcion GETCHILD(<columna>, <datawindowchild>)
3ero. Utilizar si todo fue bien, la instancia del datawindowchild.
Ahora un ejemplo el cual extrae la descripción de un datawindow incluido en un dropdatawindow, el cual posee 2 campos, código y descripción.
creamos un evento del usuario llamado ue_get_data()
DATAWINDOWCHILD ldwc_local
LONG ll_row
STRING ls_descripcion
IF (THIS.GetChild('valor', ldwc_local) = 1) THEN
ll_row = ldwc_local.GetRow()
IF (ll_row > 0) THEN
ls_descripcion = ldwc_local.GetItemString(ll_row, 'descripcion')
END IF
END IF
En el ejemplo el valor quedará en la variable ls_descripcion, luego con este podrás hacer lo que necesitas.
Respuesta
1
Lo que tienes que hacer es usar datawindowchild.
En el código que te interesa pone:
datawindowchild ldwc_sucursal
dw_1.getchild("codigo_sucursal", ldwc_sucursal)//ver error
ls_var_string = ldwc_sucursal.getitemstring(ldwc_sucursal.getrow(), "descripcion_sucursal")
Donde:
Dw_1 es la datawindow que tiene el desplegable
"codigo_sucursal" es el campo de dw_1 que tiene el desplegable
"descripcion_sucursal", es el campo del desplegable que te interesa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas