Incluindo saldo/acumulado via Script ou via Expressão

    Caso de uso:

     

    • Necessário apresentar o saldo/acumulado discriminado por data e segmentado pelo Título em uma tabela

     

    Cenário atual:

    Capturar.JPG

    Cenário desejado:

    Capturar2.JPG

     

    Solução:

     

    Via Script:


    Tab_Movimento:
    NoConcatenate Load
      Titulo,
      Data,
      Valor,
      Rangesum(
          If( Titulo = Previous(Titulo),
          Rangesum( Valor, Peek(Saldo) )
            , Valor)
      ) As 'Saldo'  
    Resident temp_Movimento Order By Titulo, Data Asc;
    

    ou

     

    Via Expressão:


     

    RangeSum(Above(Column(1),0,NoOfRows(TOTAL)))

     

    Obs.: Função Column(1) corresponde a primeira medida/expressão da tabela: Sum([Valor])


    Modelo com Inline*:

     

    temp_Movimento:
    LOAD * Inline [
      Titulo, Data, Valor
      111AAA, 10/03/2017, 2000
      111AAA, 15/03/2017, 100
      111AAA, 18/03/2017, 500
      111AAA, 19/03/2017, 250
      111AAA, 30/03/2017, 500
      222BBB, 20/03/2017, 250
      222BBB, 21/03/2017, 250
      222BBB, 23/03/2017, 500
      222BBB, 20/04/2017, 250
      222BBB, 21/04/2017, 100
      ];
    
    Tab_Movimento:
    NoConcatenate Load
      Titulo,
      Data,
      Valor,
      Rangesum(
          If( Titulo = Previous(Titulo),
          Rangesum( Valor, Peek(Saldo) )
            , Valor)
      ) As 'Saldo'  
    Resident temp_Movimento Order By Titulo, Data Asc;
    
    Drop Table temp_Movimento;
    

    * Só copiar e colar na aplicação para testar.