Recuperar dw Compiste

Tengo un objeto DW Composite el cual contiene dos objetos DW : d_cabecera y d_detalle. Mi pregunta es:
¿Cómo hago cuando al momento de utilizar el Retrieve en el control del DW que contiene el DW Composite, le pase los argumentos de recuperación a cada objeto DW d_cabecera y d_detalle?
1

1 respuesta

Respuesta
1
Realmente es simple.
Cuando compones un datawindow tipo composite, en la creación, solicita integres por lo menos un datawindow el cual formará parte de tu objeto (dw), este tiene propiamente una parte para declarar parámetros, los cuales son exactamente igual que cuando los declaras en el SQL del propio datawindow, solo que estos se encuentran ligados directamente en las propiedades de la pantalla, en la pestaña general.
Por ejemplo
Compones un dw composite, con 2 datawindows adicionales, que integran un documento,
uno extrae la cabecera y otro el detalle, la llave común será, el numero de documento.
Entonces en la parte de variables incluyes una variable tipo numérico que se llama num_documento (por ejemplo)
Dentro de cada una de los datawindows tanto cabecera como detalle, incluyes en el SQL una búsqueda condicionada en el where por el numero de documento y por supuesto a cada datawindow le asignas un parámetro de referencia.
Una vez creadas las variables tanto en los datawindows indepentendientes como en el composite.
Pinchas sobre el primer datawindow ( cabecera), y en la parte de argumentos en la pestaña de general, relacionas el parámetro de referencia de este datawindow con el que acabas de crear en el composite,
Lo mismo haces con el detalle,
Y luego en el retrieve del composite solo tendrás que incluir el numero del documento que deseas.
Esta referencia se la entrega a el datawindow composite, y este se la entrega a cada uno de los que lo componen y se relacionen.
Esto funciona exactamente como se retrae el datawindowchild, al igual la función GETCHILD() retrae el datawindow que contiene el campo relacionado con el datawindow en un dropdowndatawindow, esta misma funciona para retraer el datawindow atado a un report object,
Su tratamiento es exactamente igual
Ej.
DataWindowChild dwc_orders
dw_news.GetChild("open_orders", dwc_orders)
dwc_orders.SetTransObject(SQLCA)
dwc_orders.Retrieve("open")
Para un poco más de información te recomiendo que le eches un vistazo a la ayuda online de la función GETCHILD() de power builder,

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas