Hola, muchas veces en nuestros desarrollos creamos plantillas para automatizar y agilizar procesos por ejemplo en los reportes; tomare como ejemplo mi experiencia en el caso. Hace poco nos pidieron la generación de muchos reportes con funcionalidades de personalización en tiempo real, es decir brindarle la posibilidad de poder modificar titulos, logos, mensajes y que fuera posible en ciertos casos ocultar algunas zonas especificas (Encabezados y Pie de Páginas o mejor conocidos como Header y Footer). Inmediatamente nos dimos cuenta que debiamos usar plantillas, sin embargo surgieron dudas sobre que tipo de datawindow contenedor utilizar en la plantilla a implementar. ¿Composite ó Nested?.
Anexo explicación resumida:
Datawindow Composite:Este tipo de datawindow son contenedores de datawidows no tienen datos internos que se compartan, la forma de usarlos es un poco básica es decir agregas datawindows y el retrieve se realiza en el orden en el cuál fueron agregados.
Ejemplo:
Supongamos que existen 2 datawindows agregados (DWa, DWb). DWa tiene como parametros pa y pb y DWb tiene px, y pz entonces el retrieve de este tipo de datawindows sería pa, pb, px y pz.
Datawindow Nested: Este tipo de datawindow en si no hace parte de los tipos disponibles de powerbuilder pero se logra agregando a un reporte objetos datawindows, por lo tanto aquí existen algunos datos que se pueden compartir o enviar a esos reportes agregados y podrían servir como parámetros de entrada.
Ejemplo:
Muy parecido al ejemplo anterior suponiendo que existen 2 datawindows agregados (DWa, DWb). DWa tiene como parametros pa y pb y DWb tiene px, y pz entonces el retrieve de este tipo de datawindows podria configurarse pasandole campos del datawindow padre a cada DW.
En nuestro caso optamos por la segunda opción ya que podíamos compartir información genérica y asi agilizar le proceso y facilitar los mantenimientos ya que los Dw Composite pueden ser un poco complejos de trabajar cuando se realizan modificaciones en los argumentos.
Anexo explicación resumida:
Datawindow Composite:Este tipo de datawindow son contenedores de datawidows no tienen datos internos que se compartan, la forma de usarlos es un poco básica es decir agregas datawindows y el retrieve se realiza en el orden en el cuál fueron agregados.
Ejemplo:
Supongamos que existen 2 datawindows agregados (DWa, DWb). DWa tiene como parametros pa y pb y DWb tiene px, y pz entonces el retrieve de este tipo de datawindows sería pa, pb, px y pz.
Datawindow Nested: Este tipo de datawindow en si no hace parte de los tipos disponibles de powerbuilder pero se logra agregando a un reporte objetos datawindows, por lo tanto aquí existen algunos datos que se pueden compartir o enviar a esos reportes agregados y podrían servir como parámetros de entrada.
Ejemplo:
Muy parecido al ejemplo anterior suponiendo que existen 2 datawindows agregados (DWa, DWb). DWa tiene como parametros pa y pb y DWb tiene px, y pz entonces el retrieve de este tipo de datawindows podria configurarse pasandole campos del datawindow padre a cada DW.
En nuestro caso optamos por la segunda opción ya que podíamos compartir información genérica y asi agilizar le proceso y facilitar los mantenimientos ya que los Dw Composite pueden ser un poco complejos de trabajar cuando se realizan modificaciones en los argumentos.
Comentarios
Publicar un comentario