Crystal Report - Sumatorios condicionales

 
Vista:

Sumatorios condicionales

Publicado por R1847 (39 intervenciones) el 06/06/2007 13:32:54
Buenas tardes:

Estoy haciendo un informe para imprimir una factura de ventas a clientes.
En el detalle del informe se imprimen los campos:

Código de artículo, Descripción articulo, Unidades, Precio/unidad y Total linea.

Hasta aquí todo perfecto.

El detalle puede contener un numero indeterminado de líneas y por supuesto de artículos, pero siempre va a contener tres artículos fijos (Art. A, Art. B y Art. C cuyos códigos yo controlo).
Al final, yo necesito mostrar dos totales uno que sea la suma de los importes/línea correspondientes a esos tres artículos y otro correspondiente a la suma de los importes línea del resto de los artículos que componen el detalle del informe.

¿Alguien puede decirme como puedo solucionar este caso??

Muchas gracias a todos
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:Sumatorios condicionales

Publicado por Fran (371 intervenciones) el 06/06/2007 14:01:03
Puedes usar un Running Total Fields(campo acumulado) o con variables Shared

1) Con Running
Nuevo Running, colocar el nombre, seleccionar el campo a sumar, seleccionar la operación, en evaluate seleccionar "use a formula", en ella colocar el criterio, como por ejemplo {tabla1.cod_producto}= 'A' or {tabla1.cod_producto}= 'B' or {tabla1.cod_producto}= 'C' (esto es en sisntaxis crystal), y por último lo reseteas por el grupo que deseas.

Este campo lo colocas en el pie de grupo o al final del reporte.

Debes hacer otro campo runnig para el resto de los productos.

2) Para lo de shared. En sintaxis crystal.

Hacer una formula llamada ejemplo "@sumar"
en ella colocar
Shared numbervar sum1;
Shared numbervar sum2;

if {tabla1.cod_producto}= 'A' or {tabla1.cod_producto}= 'B' or {tabla1.cod_producto}= 'C' then
sum1:=sum1+{tabla.monto_linea};
else
sum2:=sum2+{tabla.monto_linea};

esta formula la colocas en el detalle

hacer dos formulas, una llamada @totalABC y otra llamada @totalResto
en la primera colocar
Shared numbervar sum1;
sum1
esta va en el total

en la segunda colocar
Shared numbervar sum2;
sum2
esta va en el total, al lado de la anterior.

si desea resetear esta variable debes hacer una formula llamada @resetear
en ella colocar
Shared numbervar sum1;
sum1:=0
esta va en elpie de grupo en la que deseas resetear la variable.

A lo mejor hay otra forma de hacerlo. Tu decides.
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:Sumatorios condicionales

Publicado por R1847 (39 intervenciones) el 12/06/2007 08:40:56
Gracias Fran.

Me ha funcionado a la perfección.
Un saludo
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