Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
afguillard
Contributor III
Contributor III

Utilisation fonction Applymap

Bonjour,

J'essaie de remplacer une donnée d'une table A par celle d'une table B et ça ne fonctionne pas.

Voici le script :

//Charger la liste des commandes de la table Ecommerce qui ont un code produit contenant le libellé '*PACK*'et'*CAPES_EXTE*'

ListeCommandesPacks:

LOAD

Commande as Commande_Pack,

`Code Produit` as Code_Produit_Pack

resident Ecommerce

WHERE WildMatch(`Code Produit`, '*PACK*','*CAPES_EXTE*');

//Charger la liste des indicatifs correspondant aux commandes qui ont un code produit contenant '*PACK*'et'*CAPES_EXTE*'

ListeIndicatifsPacks:

LOAD

Commande as Commande_Pack,

AnnéeSiteIndicatif as Indicatif_Pack,

Commande&`Code Produit` as CommPackProduit

resident Ecommerce

WHERE Exists([Commande_Pack],[Commande]) and not isnull (AnnéeSiteIndicatif) ;

//Joindre les deux tables

Outer join (ListeCommandesPacks)

LOAD

Commande_Pack,

Indicatif_Pack,

CommPackProduit

resident ListeIndicatifsPacks;

Drop table ListeIndicatifsPacks;

// Je crée ma table de mapping

MAP_ListeCommandes :

mapping LOAD

CommPackProduit,

Code_Produit_Pack

Resident ListeCommandesPacks;

// je remplace le champ Code_statistique_final de ma table Ecommerce par le champ Code_Produit_Pack pour les commandes concernées de la table ListeCommandesPacks.

FINAL:

LOAD

Commande,

[Code Produit],

[Libellé Produit],

Client,

Abonné,

Payeur,

[N° Autorisation],

[N° CB],

[Type Paiement],

Montant,

CommProduit,

[Mode paiement],

[Date commande],

[Nom Bel],

[Prénom Bel],

AnnéeSiteIndicatif,

ApplyMap('MAP_ListeCommandes',CommProduit,Code_statistique_final) as Code_statistique_final2

Resident Ecommerce;

Drop table Ecommerce;

Merci de votre aide,

Anne

1 Solution

Accepted Solutions
francoiscave
Partner - Creator III
Partner - Creator III

Bonjour Anne,

Je pense que ton script contient une concaténation, table que tu supprimes avant de faire ton mapping.

Peux-tu tester en ne faisant pas le Drop table ListeIndicatifsPacks; à ce moment du script mais à la fin, après ton Drop table Ecommerce; par exemple.

Si cela ne fonctionne pas, peux-tu nous envoyer ton journal de log, fichier texte généré au même emplacement que ton application si l'option ci-dessous est cochée :

Merci de ton retour,

François

View solution in original post

2 Replies
francoiscave
Partner - Creator III
Partner - Creator III

Bonjour Anne,

Je pense que ton script contient une concaténation, table que tu supprimes avant de faire ton mapping.

Peux-tu tester en ne faisant pas le Drop table ListeIndicatifsPacks; à ce moment du script mais à la fin, après ton Drop table Ecommerce; par exemple.

Si cela ne fonctionne pas, peux-tu nous envoyer ton journal de log, fichier texte généré au même emplacement que ton application si l'option ci-dessous est cochée :

Merci de ton retour,

François

afguillard
Contributor III
Contributor III
Author

Bonjour,

Oui, ça fonctionne mieux comme ça. en fait, j'avais aussi fait une erreur au niveau de la construction du du champ CommProduit car il manquait un point à la fin.

Merci pour ton aide !

Anne