4 Replies Latest reply: Nov 23, 2015 5:29 AM by Gonçalo Bernardino RSS

    Expression with 3 option results

    Gonçalo Bernardino

      I am having some trouble while trying to represent three diferent scenarios while using a expression.




      id_inc2 column is the place where I get numbers/data

      if they exist I want to represent them on a image, depending on the type


      When I say type, I mean IA_Tipo_de_Evento


      Each type should show up a image:


      'qmem://<bundled>/BuiltIn/led_y.png' is for IA_Tipo_de_Evento='Lentidão'

      'qmem://<bundled>/BuiltIn/led_y.png' is for IA_Tipo_de_Evento='Erro Aplicacional'

      'qmem://<bundled>/BuiltIn/led_y.png' is for IA_Tipo_de_Evento='Dificuldade de Acesso'

      'qmem://<bundled>/BuiltIn/led_r.png' is for IA_Tipo_de_Evento='Indisponibilidade'


      'qmem://<bundled>/BuiltIn/led_g.png' is for none of the previous examples




      SO far, the following expression I created shows only the empty results and the IA_Tipo_de_Evento Lentidão, Erro Aplicacional and Dificuldade de Acesso.



      if(Count(id_inc2)<>(IA_Tipo_de_Evento='Indisponibilidade'),'qmem://<bundled>/BuiltIn/led_y.png' ,'qmem://<bundled>/BuiltIn/led_g.png')



      Could you please help me building the expression to show up something like:


      if empty,  show image 'qmem://<bundled>/BuiltIn/led_g.png'

      if IA_Tipo_de_Evento diferent then Indisponibilidade show image 'qmem://<bundled>/BuiltIn/led_y.png'

      If IA_Tipo de Evento is Indisponibilidade show image 'qmem://<bundled>/BuiltIn/led_r.png'



      All in the same expression, not separated expressions.


      Many thanks for all your help!

        • Re: Expression with 3 option results
          Stefan Wühl

          In general, you should use aggregation functions in expressions:

          Use Aggregation Functions!


          If you just write (IA_Tipo_de_Evento='Indisponibilidade'), the value of IA_Tipo_de_Evento may not be unambiguous in the context you are using the field in. But to answer that, you need to provide more information:

          What is the context your using this expression in? A chart with dimensions, and if so, which dimensions? How does your data model look like?


          Could you post some sample lines of data or a small sample QVW?

            • Re: Expression with 3 option results
              Gonçalo Bernardino

              Please let me know if this attached sample helps you. Thanks.

                • Re: Expression with 3 option results
                  Gonçalo Bernardino

                  Nevermind, found myself the answer by using this expression:


                  =If(IA_Tipo_de_Evento='Indisponibilidade', 'qmem://<bundled>/BuiltIn/led_r.png',

                  If(IA_Tipo_de_Evento='Lentidão', 'qmem://<bundled>/BuiltIn/led_y.png',

                  If(IA_Tipo_de_Evento='Erro Aplicacional', 'qmem://<bundled>/BuiltIn/led_y.png',

                  If(IA_Tipo_de_Evento='Dificuldade de Acesso', 'qmem://<bundled>/BuiltIn/led_y.png'))))

                  • Re: Expression with 3 option results
                    Stefan Wühl

                    I am unsure what you are trying to achieve. If I add some expressions to show the count and the content of IA_Tipo_de_Evento


                    = If(WildMatch5(subcategory_rc, 'SHARE DE REDE'), 'Shares', If(WildMatch5(subcategory_rc, 'CONTA DE REDE'), 'Acessos', If(WildMatch5(subcategory_rc, 'SERVIÇO DE PROXY'), 'Proxy', If(WildMatch5(subcategory_rc, 'SERVIDOR FILAS ESPERA'), 'Impressoras', If(WildMatch5(subcategory_rc, 'SERVIÇO DE IMPRESSÃO'), 'Impressoras', If(WildMatch5(subcategory_rc, 'SERVIDOR APLICACIONAL'), 'Shares', If(WildMatch5(subcategory_rc, 'SERVIDOR DE FICHEIROS'), 'Shares', If(WildMatch5(subcategory_rc, 'SERVIDOR APLICACIONAL'), 'Acessos', If(WildMatch5(subcategory_rc, 'VPN'), 'VPN', If(WildMatch5(subcategory_rc, 'TIPO 1 (INT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'CORE (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'TIPO C (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'BACKBONE (INT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'REDE LOCAL FIXA (NAC)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'TIPO B (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'REDE LOCAL FIXA'), 'Conectividade', If(WildMatch5(subcategory_rc, 'CHICOTE DE REDE'), 'Conectividade', If(WildMatch5(subcategory_rc, 'BACKBONE (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'INTERLIGAÇÃO DATA CENTER'), 'Conectividade', If(WildMatch5(subcategory_rc, 'FALHA DE SEGURANÇA'), 'Conectividade', If(WildMatch5(subcategory_rc, 'INTERNET (INT)'), 'Proxy', If(WildMatch5(subcategory_rc, 'INTERNET (PT)'), 'Proxy', If(WildMatch5(subcategory_rc, 'REDE LOCAL FIXA (ACE)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'REDE LOCAL WIRELESS (ARMAZÉNS EDP)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'CHICOTE DE REDE (ACE)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'TIPO 3 (INT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'TIPO A (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'INTERLIGAÇÃO FORA DO DATA CENTER'), 'Conectividade', If(WildMatch5(subcategory_rc, 'TIPO 2 (INT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'AGENTE (PT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'REDE LOCAL WIRELESS'), 'Conectividade', If(WildMatch5(subcategory_rc, 'CORE (INT)'), 'Conectividade', If(WildMatch5(subcategory_rc, 'ACCESO A RED DE HC'), 'Conectividade', subcategory_rc))))))))))))))))))))))))))))))))) count(id_inc2) IA_Tipo_de_Evento concat(IA_Tipo_de_Evento,', ')


                    It seems like Conectividade is the only one with a count <> 0 ('value exists') and a related IA_Tipo_de_Evento.


                    So your expression seems to work for me, fulfilling the requirement you described above.


                    Though I would write the expresssion like



                        If (Match(Only(IA_Tipo_de_Evento), 'Lentidão','Erro Aplicacional','Dificuldade de Acesso'),'qmem://<bundled>/BuiltIn/led_y.png',  

                        If(Only(IA_Tipo_de_Evento) ='Indisponibilidade' ,'qmem://<bundled>/BuiltIn/led_y.png')), 'qmem://<bundled>/BuiltIn/led_g.png')