7 Replies Latest reply: Feb 14, 2014 10:43 PM by Manish Kachhia RSS

    CrossTable Scripting

      Buenos dias

       

      Por favor su ayuda, al momento de elaborar el script me sale un error de referencia en los campos (mas de 2) que utilizo como referencia cruzada.  O la sentencia esta bn desarrollada

      Ejemplo

       

      //D3LP

      Directory;

      Crosstable (v1, v2, ...) LOAD 

      enero,

      febrero,

      ...

      FROM

      datos.qvd

      (qvd);

       

       

      Saludos,

      David

      Developer

        • Re: CrossTable Scripting
          Manish Kachhia

          Can you load your full script...

          Crosstable should be like below...

           

          CrossTable(Month,Sales, 2)

          Load

               CustomerName,

               Country,

               Jan,

               Feb,

               ...

               ..

          From TableName;

            • Re: CrossTable Scripting

              No entiendo esta parte cruzado (Mes, Ventas, 2).

              En el primer valor de Mes, se tiene el valor de los campos de dimension ?? si son mas dos que se hace (Yo tengo 4). El valor de ventas es el nombre de la referencia de la tabla Cruzada ??



              Saludos,

              David

              Developer

                • Re: CrossTable Scripting
                  Jaime Aguilar

                  Hola,

                  Solo para agregar a lo que ya han dicho,

                  la sintaxis de Crosstable toma 3 parámetros:

                   

                  • El nombre de los 2 campos nuevos que van a ser creados (En tu caso son mes y ventas)
                  • El tercer parámetro indica el número de columnas empezando de izquierda a derecha que no van a ser cruzadas o transpuestas. Por eso al momento de hacer la carga de datos, debes acomodar primero los campos que no quieres que se crucen y después los que si.


                  En tu ejemplo, las columnas con los nombres de los meses deben colocarse hasta el final y en tu caso necesitas un campo dummy, tal como lo puso Gysbert,



                  saludos


              • Re: CrossTable Scripting
                Gysbert Wassenaar

                Directory;

                Crosstable (v1, v2) LOAD

                'Dummy' as Dummy

                enero,

                febrero,

                ...

                FROM

                datos.qvd

                (qvd);

                 

                Drop Field Dummy;

                • Re: CrossTable Scripting
                  Manish Kachhia
                  CustomerBrandCountryJan FebMar Apr
                  AAAGermany100200133160
                  BBBPoland12014098100
                  CCCItaly100200133160
                  DDDFrance200600300165

                   

                  Consider that you have table like above and you need to get table as below, we need to use crosstable functionality in QlikView Script...

                  CustomerBrandCountryMonthSales
                  AAAGermanyJan100
                  BBBPolandJan120
                  CCCItalyJan100
                  DDDFranceJan200
                  AAAGermanyFeb200
                  BBBPolandFeb140
                  CCCItalyFeb200
                  DDDFranceFeb600
                  AAAGermanyMar133
                  BBBPolandMar98
                  CCCItalyMar133
                  DDDFranceMar300
                  AAAGermanyApr160
                  BBBPolandApr100
                  CCCItalyApr160
                  DDDFranceApr165

                   

                  Sales:

                  CrossTable(Month, Sales, 3)

                  LOAD Customer,

                       Brand,

                       Country,

                       Jan,

                       Feb,

                       Mar,

                       Apr

                  FROM TableName;

                   

                  Here 3 is for First Three Dimensions which are  Customer, Brand and Country

                  If we have only two Dimensions from above three we need to use 2 instead of 3.

                  Hope this help.

                  • Re: CrossTable Scripting

                    Muchas gracias a los dos. Todas las dudas quedaron aclaradas.

                     

                     

                    Saludos

                    David León

                    Developer

                    • Re: CrossTable Scripting
                      Manish Kachhia

                      Dear David,

                      If you question resolved, please close this thread by choosing correct or helpful answer.

                      Thanks