SoloCodigo

Programación General => Power Builder => Mensaje iniciado por: pana06_ en Sábado 15 de Enero de 2011, 14:28

Título: “Saldo en DW crosstab o group”
Publicado por: pana06_ en Sábado 15 de Enero de 2011, 14:28
Estimad@s, tengo una DW donde tengo el importe de ingresos y egresos por meses, lo que quiero es obtener en el total final la diferencia entre la suma de ingresos y la suma de egresos. Campos Mes,Importe,tipo

Mes Importe tipo
Enero 10.00 INGRESO
Enero 40.00 INGRESO
Enero 10.00 EGRESO
Enero 100 INGRESO
-----------------------------------------
Saldo : 80.00 (INGRESO-EGRESOS)

Les agradezco de antemo, por la ayuda brindada

Saludos
Luis Domínguez
Título: Re: “Saldo en DW crosstab o group”
Publicado por: F_Tanori en Jueves 20 de Enero de 2011, 12:10
Bueno si es como en ese listado entonces puedes hacer 2 cosas:

a) crear una sumatoria para ingreso y una para egreso y luego restarlas

PARA SUMAR SOLO EL INGRESO

Código: PowerBuilder
  1. COMPUTE_1
  2. SUM( IF(TIPO='INGRESO',IMPORTE,0) FOR ALL)
  3.  
  4.  

Código: PowerBuilder
  1. 150
  2.  



 PARA SUMAR SOLO EL EGRESO
Código: PowerBuilder
  1.  
  2. COMPUTE_2
  3. SUM( IF(TIPO='EGRESO',IMPORTE,0) FOR ALL)
  4.  
  5.  

Código: PowerBuilder
  1. 10
  2.  

RESTA
 
Código: PowerBuilder
  1.  
  2. COMPUTE_3
  3. COMPUTE_1-COMPUTE_2
  4.  

Código: PowerBuilder
  1. 150 -10 = 140
  2.  

b) al egreso multiplicarla por menos 1

COMPUTE_1
SUM( IF(TIPO='EGRESO',(IMPORTE * -1),IMPORTE) FOR ALL)

la sumatoria de ese campo seria equivalente

Código: PowerBuilder
  1.    10.00
  2.    40.00
  3.   -10.00
  4.  100.00
  5. --------------
  6. 140.00
  7.  

Espero te sirva

 Saludos