6 de febrero de 2014

Crear Campo Acumulado

El siguiente script crea el campo VentaAcumulada diariamente en cada Sucursal

Ventas_tmp:
LOAD * INLINE [
    Sucursal,   Fecha,     Venta
    Sur,      01/04/2012,    45
    Norte,    01/01/2012,    30
    Sur,      01/08/2012,    70
    Norte,    01/05/2012,    22
    Norte,    01/07/2012,    43
    Sur,      01/09/2012,    50
    Norte,    01/03/2012,    65
    Sur,      01/06/2012,    90
    Sur,      01/02/2012,    24]
;
   
Ventas:
LOAD *,
If(Sucursal=Previous(Sucursal),PEEK(VentaAcumulada)+Venta,Venta) AS VentaAcumulada
Resident Ventas_tmp Order By Sucursal,Fecha;
DROP Table Ventas_tmp; 

La tabla Ventas quedaría así:













NOTA: La función PEEK no reconoce valores nulos, por lo cual el campo Venta no debe contener Null, estos deben transformarse a cero previamente. Para transformar valores nulos, ver nota publicada aquí



No hay comentarios: