You are on page 1of 1

Datawindows Composite.

txt
1. Datawindow Composite: Se usan cuando queremos unir dos datawindow ya creados,
por ejemplo: Cuando queremos mostrar un datawindow grid de las ventas y un
datawindow graph que muestre en forma grfica las ventas, para ello tendremos
que elegir los dos datawindows ya creados.
2. Cuando queremos relacionar un campo para que muestre su valor, entonces
debemos utilizar los DropDownDataWindow o DDDW, como se hace as:
*Tenemos dos tablas, Cliente y Distrito y sus campos son:
//Campos de Tabla Cliente
cod_cliente //codigo del cliente
ape_cliente //apellidos del cliente
nom_cliente //nombres del cliente
dir_cliente //direccion del cliente
cod_distrito //cdigo del distrito, que es la clave fornea que referencia a la
tabla distrito
//Campos de Tabla Distrito
cod_distrito //codigo del distrito
nom_distrito //nombre del distrito
*Creamos dos datawindow: Un datawindow tipo freeform de la tabla Cliente y un
datawindow tipo grid de la tabla Distrito.
*Despues de crear el datawindow Cliente nos muestra todos sus campos y en el
campo cod_distrito nos mostrara el codigo del distrito (que puede ser para
cod_distrito=1 o cod_distrito=2, o cod_disdtrito=3, etc.) y no su valor (el
nombre del distrito que puede ser: Lima, Brea,Miraflores,etc.).
*Para solucionar esto tenemos que hacer lo siguiente: en el datawindow cliente
hacemos click o seleccionamos el campo cod_distrito, nos vamos a propiedades
[Properties] elegimos la ficha o tab [Edit] y nos colocamos en [Style Type], de
la lista elegimos [DropDownDW]; mas abajo en [DataWindow] buscamos el Datawindow
distrito creado y lo enlazamos. En [Display Column] elegimos el campo
nom_distrito y en [Data Column] elegimos el campo cod_distrito. Con esto cuando
visualicemos los datos del cliente nos mostrara tambien el nombre del distrito
doden vive.
3. Cuando utilizamos los Datawindow Child: Los datawindow Child se crean a
partir de los campos relacionados con otros datawindows, como en el caso del
campo cod_distrito del datawindow cliente. Por que creamos datawindow child,
simplemente para poder manipularlo como si fuera un datawindow cualquiera, pero
con algunas limitaciones, ejemplo:
//creamos un Datawindow child del campo cod_distrito del datawindow cliente.
//este codigo va en el evento itemchanged() del datawindow cliente.
DataWindowChild ldwch_distrito
this.GetChild("cod_distrito", ldwch_distrito)
ldwch_distrito.SetTransObject(SQLCA)
ldwch_distrito.Retrieve()
ldwch_distrito.SetFilter("")
ldwch_distrito.Filter()
ldwch_distrito.setsort("cod_distrito A")
ldwch_distrito.sort( )
*Este datawindow child del campo cod_distrito nos servira para ordenar los
distritos de forma ascendente.
Observaciones:
*No confundir los datawindow control con los datawindow objecto, los datawindow
control sirve para poder contener a los datawindow objeto que creamos de las
tablas de la base de datos.
*Powerbuilder usa bastante la porgramacion orientada a objetos asi que te
recomiendo aprender herencia con este lenguaje.
*Hay libros en Av. Wilson (frente a las galerias wilson) - Cercado de Lima desde
basico hasta intermedio con los que puedes aprender mas sobre powerbuilder.
*Al principio el aprendizaje de este lenguaje parece complicado, pero con el
tiempo te daras cuenta que no es asi.
Suerte el 8 feb. 10
jasamo19
Muchas gracias, lo acabo de leer y ya me aclaro varias cosas que haba ledo en
otros ejemplos y no entenda... esto lo que quera.
Me pondr a practicar. Espero que sigas as, compartiendo tus conocimientos con
los dems.
Pd:No se si se pueda, pero sera buena idea que Uds como expertos realizaran
algn tipo de manual avanzado con ejemplos y experiencias propias... una especie
de recopilacin que responda a todas las dudas que resuelven.Es solo una idea.
Excelente la pgina.
Saludos. :)
Pgina 1

You might also like