3 Replies Latest reply: Mar 5, 2015 10:00 AM by Raynald Fleche RSS

    Comment éviter que le script crée des relations que je ne veux pas

    Aline CLOZEL

       

      Bonjor,

       

       

       

      J'utilise qlikview pour faire des représentations à partir de données statistiques principalement INSEE.

       

      La principale jointure qui m'est donc nécessaire est celle sur le code INSEE

       

       

       

      Le problème est que qlikview crée dans le script des éléments dont je n'ai pas besoin :

       

       

       

      $Syn 1 = Commune+AMutation+ArtCGI1
      $Syn 2 = Commune+AMutation+ArtCGI1+ID_VALEUR+INSEE
      $Syn 3 = Commune+AMutation+RefDoc+NDispo+ArtCGI1+ArtCGI2+NatMutation+NbLots+IDU
      $Syn 4 = $Syn 1+$Syn 3
      $Syn 5 = $Syn 1+$Syn 2
      $Syn 6 = $Syn 1+$Syn 2+$Syn 3

       

       

       

       

      Comment puis je éviter ça ?

      Merci

      Aline

        • Re: Comment éviter que le script crée des relations que je ne veux pas
          Raynald Fleche

          Bonjour Aline,

           

          QlikView fait les liens automatiquement sur les colonnes ayant exactement les mêmes noms (Attention aux Majuscules et Minuscules !)

           

          Parfois il convient de "casser" ces liens pour que le modèle réponde à nos attentes

           

          Pour cela il suffit d'utiliser le mot clé "AS" dans le script comme dans l'exemple ci dessous :

           

          Budget:

          LOAD

               Region,

               Budget as [Budget Amount]

          FROM

          Database\RegionalSales.xlsx

          (ooxml, embedded labels, table is Sheet1);

           

          Le champ Budget sera renommé en Budget Amount

           

          Dans votre cas, il faut quand on voit :

          $Syn 1 = Commune+AMutation+ArtCGI1


          cela signifie qu'il y a entre deux sources les liens identiques : Commune, AMutation et ArtCGI1

           

          Il suffit donc de renommer ces champs sur une source pour que ces liens disparaissent lors du prochain rechargement

           

          J'espère avoir été assez clair

           

          N'hésitez pas à répondre pour savoir si cela fonctionne mieux



            • Re: Comment éviter que le script crée des relations que je ne veux pas
              Aline CLOZEL

              Bonjour et merci pour cette réponse,

               

              Si je reprend mon exemple

              $Syn 1 = Commune+AMutation+ArtCGI1
              $Syn 2 = Commune+AMutation+ArtCGI1+ID_VALEUR+INSEE
              $Syn 3 = Commune+AMutation+RefDoc+NDispo+ArtCGI1+ArtCGI2+NatMutation+NbLots+IDU
              $Syn 4 = $Syn 1+$Syn 3
              $Syn 5 = $Syn 1+$Syn 2
              $Syn 6 = $Syn 1+$Syn 2+$Syn 3

               

              Effectivement les champs commune, A mutaiton, ArtCGI1 sont des champs que l'on retrouve dans plusieurs tables. Mais je ne comprend pas la deuxième partie :

              $Syn 4 = $Syn 1+$Syn 3
              $Syn 5 = $Syn 1+$Syn 2
              $Syn 6 = $Syn 1+$Syn 2+$Syn 3

               

              Merci de vos éclaircissements.

              Aline

                • Re: Comment éviter que le script crée des relations que je ne veux pas
                  Raynald Fleche

                  les clés synthétiques (c'est le nom de c'est $....)

                  $Syn 1 = Commune+AMutation+ArtCGI1
                  $Syn 2 = Commune+AMutation+ArtCGI1+ID_VALEUR+INSEE
                  $Syn 3 = Commune+AMutation+RefDoc+NDispo+ArtCGI1+ArtCGI2+NatMutation+NbLots+IDU
                  $Syn 4 = $Syn 1+$Syn 3
                  $Syn 5 = $Syn 1+$Syn 2

                  $Syn 6 = $Syn 1+$Syn 2+$Syn 3


                  Les clés 4,5,6 disparaitront si vous régler les clés 1,2,3

                  Les clés 4, 5 et 6 sont simplement des ensemble de liens différents selon les tables. Comme QlikView retrouve des liens communs et d'autres liens, il crée un ensemble $Syn 1 qu'il va réutiliser pour les autres clés


                  Voter but, éliminer les clés $Syn 1 à $syn 3 et ce sera parfait