2 Replies Latest reply: Apr 23, 2015 2:45 PM by maicon mello RSS

    Dúvidas Campo String

    maicon mello

      Boa tarde, estou com dúvidas em um campo string.

      Existe uma tabela em meu banco e tenho um campo String :

       

      Ao ler esse campo no Qlik ele mostra assim :

       

      1561 FLEISCHMANN

      12032 FISCHER

      13568 MADEVALI

      30540,30194 LAMINADOS AB

      114,171 WOODEX

      114,176 WOODEX

       

      Preciso Deixar dessa forma

       

      1561 FLEISCHMANN

      12032 FISCHER

      13568 MADEVALI

      30540 LAMINADOS AB

      30194 LAMINADOS AB

      114 WOODEX

      171 WOODEX

      114 WOODEX

      176 WOODEX

       

      Atenciosamente

      Maicon Mello

        • Re: Dúvidas Campo String
          Marcelo Fonseca

          Olá Maicon!

          Acho que isso pode ajudar:

           

          Base:

          LOAD * Inline [

            MyColumn

            "1561 FLEISCHMANN"

            "12032 FISCHER"

            "13568 MADEVALI"

            "30540,30194 LAMINADOS AB"

            "114,171 WOODEX"

            "114,176 WOODEX"

          ];

           

          Temp:

          // apenas campos com a vírgula

          LOAD

            MyColumn,

            Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,

            Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id

          Resident Base

            Where WildMatch(MyColumn,'*,*')>0;

           

          Concatenate

           

          // apenas campos sem a vírgula

          LOAD

            MyColumn,

            Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,

            Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id

          Resident Base

            Where WildMatch(MyColumn,'*,*')=0;

           

          Final:

          LOAD

            MyColumn,

            Id,

            Nome,

            IterNo() as Posicao,

            SubField(Id,',',IterNo()) as Codigo

          Resident Temp

            While not IsNull(SubField(Id,',',IterNo()));

           

          DROP Tables Temp,Base;

          Sem título.png