Power Builder - armado de DW

 
Vista:

armado de DW

Publicado por Luiss (90 intervenciones) el 03/04/2007 11:47:57
hola gente, como andan?
tengo un problema, necesito hacer un dw que tenga lo siguiente

cuenta - nº factura (enero) - fecha de pago (enero) - nº factura (febrero) - fecha de pago (febrero)....

es una matriz, donde en la cuenta me aparezcan todos los usuarios con sus respectivos numeros de facturas y fecha de pago por meses.

yo la cuenta la saco de un retrive y el numero de factura y la fecha de pago la saco mediante una consulta sql

el numero de factura y la fecha de pago son text y le agrego los valores asi:
dw_1.object.t_1.text= string(ld_nro_recibo)
dw_1.object.t_2.text= string(ld_arancel_pago)

pero en todas las text me pone el ultimo dato almacenado en la variable.
espero que se haya entendido...como lo puedo solucionar???
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

RE:armado de DW

Publicado por Rommel (7 intervenciones) el 04/04/2007 01:02:46
Luis,

Deberás hacer "insert" a la datawindow que utilizas.
Declara la variable:

int li_row

Y añade lo siguiente:

li_row = dw_1.insertrow (0)
Para Enero:
dw_1.object.nro_factura_01 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_01 [ li_row ] = string(ld_arancel_pago)

Para Febrero:
dw_1.object.nro_factura_02 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_02 [ li_row ] = string(ld_arancel_pago)

Para Marzo:
dw_1.object.nro_factura_03 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_03 [ li_row ] = string(ld_arancel_pago)

Tendrías que hacer esto para los doce meses, lo cual a mi me resultaría engorroso.
Se entiende?

Por cada fila de datos que obtengas, tendrías que hacer un "insert". Y en esa fila insertada pondrías el numero de factura y la fecha de pago.

Otra solución es que utilices un Cross-Tab. Pero eso ya dependerá en mucho de la manera en que deberás recuperar tus datos.
Tendrás que obtener en un solo query la cuenta, el numero de factura concatenado a la fecha de pago (un solo dato) y el mes.
Al diseñar la datawindow del tipo Cross-Tab, en las filas (Rows) pones la cuenta, en columna (Columns) pon el mes, y finalmente en el valor (Values) pones el dato compueto "numero de factura y fecha de pago". Este tipo de datawindow es muy poderoso, pero debes saberás armarlo con cuidado, al inicio te parecerá algo difícil pero verás que no lo es tanto.

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:armado de DW

Publicado por luiss (90 intervenciones) el 04/04/2007 22:22:22
hice como me dijistes, pero me da error, no me escribe nada.

int li_row

li_row = dw_1.insertrow (0)
Para Enero:
dw_1.object.nro_factura_01 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_01 [ li_row ] = string(ld_arancel_pago)

Para Febrero:
dw_1.object.nro_factura_02 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_02 [ li_row ] = string(ld_arancel_pago)

Para Marzo:
dw_1.object.nro_factura_03 [ li_row ] = string(ld_nro_recibo)
dw_1.object.fecha_pago_03 [ li_row ] = string(ld_arancel_pago)

no falta un .text en la sentencia object???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar