Qlik Community

Groupe des Utilisateurs Francophones

Vous êtes francophone? Ce groupe est pour vous. Venez découvrir comment démarrer avec Qlik Sense et QlikView, poser vos questions et partager vos tutos et astuces avec les membres de notre communauté.

Highlighted
Not applicable

Subfield(Applymap(...)) ne fonctionne pas lorsque certaines lignes sont chargées

Bonjour,

Dans la cadre d'une application professionnelle nous devons appliquer un double mapping pour trouver un champ que nous appellerons M:

  • les valeurs de 8 colonnes implique la valeur de M
  • Chaque règle est associée à un niveau qui indique la priorité de celle-ci
  • Si la valeur dans une colonne est *All*, la règle fonctionne pour n'importe quelle valeur
  • Si la valeur dans une colonne est de la forme ?valeur? alors on applique un second mapping :
    • celui-ci liste les valeur possibles correspondant à ?valeur?

Ayant bcp de lignes à mapper, mon algo pour trouver M est le suivant (en simplifié) :

  • Charger la table de mapping principale
  • Charger la table de mapping secondaire en MAPPING en contacténant toutes les valeurs possibles
  • Pour chaque valeur de niveau (classé en ordre croissant) :
    • Charger les données non mappées
    • Charger l'ensemble des règles de ce niveau en produit cartésien
    • Si une colonne contient une valeur de la forme ?valeur?
      • remplacer par l'ensemble des valeurs possibles grace à un Subfield(ApplyMap(?valeur?))
    • Si les 8 colonnes matchent entre les données et le mapping : garder la valeur de M

Mon problème est le suivant :

Lors du remplacement des mes ?valeur? par la liste des valeurs correspondantes (qui génère donc plusieurs lignes) il arrive qu'une seule valeur soit retournée ou bien aucune (null). Cependant en supprimant certaines lignes cela fonctionne.

Pour un niveau donné j'ai donc un certain nombre de lignes qui font que d'autre règles n'appliquent pas correctement le second mapping. Si je retire ces lignes les mêmes règles appliquent correctement le second mapping.

Avez vous déjà rencontré ce problème ? Avez vous une idée de la cause et de la solution ?

Merci par avance

1 Reply
Not applicable

Re: Subfield(Applymap(...)) ne fonctionne pas lorsque certaines lignes sont chargées

Après plusieurs tests, en classant, dans le fichier, les règles par ordre de priorité croissant ça à l'air de fonctionner correctement.

Je ne comprend pas ce qui l'explique ?!