Después del 3er Compute se Pierde

Estoy haciendo un datawindow muy elaborado, donde uso varios campos calculados sobre ellos mismos, sin embargo después del 2 o tercer nivel de calculo, los campos dan cero, como que no jalan la información, (compute sobre compute), y tengo que agregar un campo editable, donde lo edito y le doy enter, me actualiza y salen las cantidades, hablando directamente del datawindow en diseño y luego pasa igual en ejecución.

3 respuestas

Respuesta
1
pásame un ej. de los computados que usas.
por ejemplo el en un mismo registro, el primero es compute_1:" sum( detalle_mov_contable_debe for group 6) " esto me suma una columna, tengo otro que de momento no tiene que ver nada con este pero le hace una verificacion sobre el registro llamado compute_3 :" if( catalogo_ctas_cta_n5 > 0,5, (if( catalogo_ctas_cta_n4 > 0,4, if( catalogo_ctas_cta_n3 > 0,3, (if( catalogo_ctas_cta_n2 > 0,2,1 )) ))) )" y de acuerdo al numero que me da este le corro otro computo, asi compute:4"if( compute_3 = 4,(sum( compute_1 for group 5 DISTINCT catalogo_ctas_cta_n1 , catalogo_ctas_cta_n2 , catalogo_ctas_cta_n3 , catalogo_ctas_cta_n4 , catalogo_ctas_cta_n5 )), 0 ) ", y luego compute _5: " if( ( compute_3 = 3),(sum( compute_4 for group 4 DISTINCT catalogo_ctas_cta_n1, catalogo_ctas_cta_n2 , catalogo_ctas_cta_n3 , catalogo_ctas_cta_n4 , catalogo_ctas_cta_n5 )), 0)" y asi sustantivamente hasta el 9, luego me manejo con funciones de color de texto o de tamaño del mismo para mostrar un balance contable por niveles de cuentas online... ademas los grupos son 1 - companias, 2- nivel de cuenta desde el 5to nivel hasta el primero, existiendo 6 agrupaciones en total ordenadas por numero de cuenta nivel por nivel, 5 niveles... se que es un toque enrredado, pero ya me da los resultados correctos si agrego el campo editable le pongo cualquier cosa y le doy un enter me trae todos los resultados si no todo me da cero..... no se que hacer.... te agradezco
Si los computados están sobre la misma fila puede ser que no se estén evaluando en el orden que necesitas.
¿Probaste haciendo accepttext() en tiempo de ejecución?
AldoB
sorry amigo, no me funciono eso, no se si se te ocurrirá otra cosa... gg
Te agradezco el tiempo...
Proba poner esto en el retrieveend:
dw_1.sort()
dw_1.groupcalc()
AldoB
Respuesta
1
Trata no haciendo referencia a los campos compute del nivel anterior, trata encerrando la fórmula del compute de nivel anterior en un sum o avg, o lo que necesites.
Espero te sirva pues no se me ocurre otra cosa.
Respuesta
Yo te recomiendo que hagas computes para imprimir los cálculos previos, si dentro de los que te salen cero haces varias operaciones, te siguiero que muestres en computes alternos los resultados parciales, para identificar donde pudiera estar el problema, porque no creo que se deba al numero de referencias hacia un compute que sea eso el problema.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas