4 Replies Latest reply: Feb 24, 2014 8:58 AM by Thiago Dias RSS

    Grupo Hierárquico 'Dinâmico'

      Prezados,

       

      Tenho os seguintes elementos:

      Capturar.PNG.png

       

      1 - Diversos campos formando uma hierarquia (no caso 4 campos formando uma hierarquia de 4 níveis)

      2 - Um gráfico.

       

      Meu objetivo é fazer um Drill Down no gráfico pelos níveis da hierarquia.

      Como a hierarquia tem 4 níveis eu poderia criar um Grupo Hierárquico com esses 4 campos (de cada nível), que funcionaria sem problema, o problema é que essa quantidade de níveis será variável, então seria necessário que o Drill Down respeitasse a hierarquia, independente do número de níveis dela, logo seria um grupo hierárquico com quantidade dinâmica de campos

       

       

      Alguém saberia uma solução?

       

      Att,

      Thiago.

        • Re: Grupo Hierárquico 'Dinâmico'

          O máximo que consegui fazer foi:

           

          Criei uma variável para pegar o valor máximo do nível:
          vCampo = MaxString(Nível)

           

          E criei um grupo hierárquico da seguinte forma:

          Capturar.PNG.png


          Onde eu crio no hardcode um número X de campos (o problema é que eu teria que criar MUITOS campos para existir um limite bem maior que o que será usado) e em cada campo uso o código:

          =if(vCampo >= 1, nome1)

           

          Para verificar o total de níveis... e se exibo aquele campo.

           

          Na última linha, coloquei o seguinte código:

          =

          if(vCampo <> 6,

               if(vCampo <> 5,

                    if(vCampo <> 4,

                      if(vCampo <> 3,

                           if(vCampo <> 2,

                                nome1

                           ,nome2)

                     ,nome3)

                ,nome4)

            ,nome5)

          ,nome6)

           

           

          Esse último campo é para exibir sempre o último nível.

           

           

           

          Porém.... não ficou uma solução muito elegante. A navegação não está 100% como no grupo normal e está hardcode o número máximo de campos.

           

          Alguém saberia evoluir essa solução, ou propor uma nova?

          • Re: Grupo Hierárquico 'Dinâmico'
            Clever Anjos

            Você teria uma quantidade máxima de níveis?

             

            Utilize o "Hierarchy" para gerar seus campos e crie um grupo ciclico com os grupos montados.

             

            Alguns campos vão estar nulos, mas no gráfico não vai fazer o drill para um campo nulo

              • Re: Grupo Hierárquico 'Dinâmico'

                Agora que vi sua resposta Clever, mas fiz exatamente assim.

                 

                A diferença é que na base de dados atual eu tinha apenas 5 níveis... Eu precisei apenas usar um loop, para identificar o número de níveis na base, e criar os demais níveis até chegar ao nível máximo que defini.

                 

                De resto, foi o que você falou mesmo que eu fiz.