7 Replies Latest reply: May 24, 2017 9:04 AM by marcio teixeira RSS

    Não acatar seleção

    marcio teixeira

      Pessoal,

       

      Tenho uma coluna que é o % item acumulado:

       

      =if(RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL))) > 100,'100,00',RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL))))

       

      Sem nenhuma seleção está tudo certinho, só que o cliente pode escolher um determinado grupo ou subgrupo ou ate mesmo um tem apenas.

      Eu queria saber se tem como travar essa expressão com o {1} e se tem aonde que entra esse bendito!

       

      eu tenho outra coluna que e a curva do item com classificação A, B, C, e a mesma situação, ela nao pode mudar conforme seleção, segue a expressão:

       

      =if(RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL)))>= '90,01','C',

        if((RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL)))<= '90,00' and RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL)))) > '70,01','B',

         if(RangeSum(above(TOTAL Column(11),0,NoOfRows(TOTAL)))<= '70,00','A','B')))

       

      Muito obrigado pela força

        • Re: Não acatar seleção
          MARIO SOARES

          Amigo, na expressão da sua coluna 11 (posição a partir das medidas/expressões que representa Column(11)), você pode colocar o identificador {1} internamente nas funções;

           

          Ex.:

          Sum({1} [Campo])
          
          
          
            • Re: Não acatar seleção
              marcio teixeira

              Grande Mario,

               

              desculpa a demora em responder.

              Entendi, coloquei la e não no campo acumulado, as vezes da um nó no cérebro e o cara faz dessas coisas.

              Estou testando para ver se nada muda na Column(11).

              Só que agora meu documento esta muito demorado para executar qualquer seleção, inclusão de colunas, olhei  na propriedades do documento, a pasta em questão esta utilizando 2664 kb de memoria.

              Enfim, ficou certo, agora tenho que ver esse esquema da demora.

               

              Muito obrigado Mario, mais uma vez, grande abraço.

                • Re: Não acatar seleção
                  MARIO SOARES

                  Amigo;

                  Creio que seja melhor gerar o resultado acumulado no script;

                   

                  Incluindo saldo/acumulado via Script ou via Expressão

                   

                  Grande abraço e sucesso.

                    • Re: Não acatar seleção
                      marcio teixeira

                      Eu olhei ja isso Mario, pois e, acho que vou ter que mudar mesmo para o script, esta muito lento e tenho 2 campos de percentual acumulado, vou analisar e tentar colocar a minha necessidade dentro da programação do script seguindo a tua sugestão.

                       

                      Muito obrigado, se me apertar posto aqui, kkk.

                       

                      Grande abraço e muito obrigado.

                      • Re: Não acatar seleção
                        marcio teixeira

                        Grande Mario,

                         

                        Desculpa te incomodar por aqui, como te falei, os campos que coloquei na expressao, estao muito demorados para executar, cpu vai a 100%.

                        Dai segui teu conselho de fazer no script, so que estou com dificuldades de colocar isso porque sao 5 campos que entao nao soma/multiplicação/subtraçao para chegar no percentual que preciso para acumular, esses campos vem de 4 tabelas, estou tentando fazer o concatenate mas nao esta rolando, tu acha que devo abrir outro post??

                        meus campos sao esses e essas sao as tabelas:

                        para chegar no percentual: isso e feito na expressão:

                         

                        =if(sum([Ven. Ult. 365 dias]) + sum([QUANTIDADE_IND]) - sum(QUANTIDADE)< 0,0,

                                (sum([Ven. Ult. 365 dias]) + sum([QUANTIDADE_IND]) - sum(QUANTIDADE)) / (sum( TOTAL {1}[total de vendas geral]))* 100)

                         

                        [Ven. Ult. 365 dias]:        vem da tabela: [Sugestao_Compra]

                        [total de vendas]:            vem da tabela: [Sugestao_Compra]

                        [QUANTIDADE]:            vem da tabela: [Devoluções]

                        [QUANTIDADE_IND]:    vem da tabela:[Industrializações]


                        A dimensão que liga é o campo ITEM_ESTOQUE


                        tentei seguir teu exemplo:


                        1. Tab_Movimento: 
                        2. NoConcatenate Load 
                        3.   Titulo, 
                        4.   Data, 
                        5.   Valor, 
                        6.   Rangesum( 
                        7.       If( Titulo = Previous(Titulo), 
                        8.       Rangesum( Valor, Peek(Saldo) ) 
                        9.         , Valor) 
                        10.   ) As 'Saldo'   
                        11. Resident temp_Movimento Order By Titulo, Data Asc;





                        mas não estou me achando, se puder me ajudar te agradeço, se for o caso eu copio isso e abro outra discussão.


                        Muito obrigado meu amigo.