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

Script pour ajout d'un champ calculé dans une table existante

Bonjour,

Savez comment je dois m'y prendre pour ajouter un champ calculé à une table existante ?

La situation de départ est une table on va dire [Budgete projets] avec 3 champs : [id_projet], [budget MOA] et [budget MOE] calculés dans des étapes précédentes.

Je voudrais par script ajouter ensuite un champ qui somme mes budgets. Par ex. [budget cout complet].

Je pensais faire un left join mais après chargement des données, je ne vois pas mon champ remonter alors que je ne prends pas d'erreur. Voici le script que j'ai mis :

left join (Budgete projets)
Load
[id_projet],
[budget MOA] + [budget MOE] as [budget cout complet];

Merci par avance pour votre aide !

1 Solution

Accepted Solutions
Frederic92
Contributor
Contributor
Author

Bon, en fait je m'en suis sortie finalement en passant par une table intermédiaire. Ce n'est certainement pas la façon la plus propre de faire et si quelqu'un à une solution propre à me remonter, je suis preneur ;). Mais comme cela, ça passe :

[temp_table]:
Load
*,
[Budget MOA] + [Budget MOE] as [Budget Global ]
Resident [Budgete_projet];

drop Table Budgete_projet;

rename Table temp_table to Budgete_projet;

En attendant, je clôture le sujet.

View solution in original post

3 Replies
Taoufiq_Zarra

Bonjour,

est ce que vous pouvez partager un extrait des DATA avec un exemple du output souhaité ?

 

Regards,
Taoufiq ZARRA

"Please LIKE posts and "Accept as Solution" if the provided solution is helpful "

(you can mark up to 3 "solutions") 😉
Frederic92
Contributor
Contributor
Author

Re bonjour,

En fait, voici mon script actuel :

[Budgete_projet]:
Load
[Code projet],
[Libellé Investissement projet],
[Portefeuille]
Resident [Extraction projet];

// Ajout du budgété MOA
Outer Join(Budgete_projet)
[temp_budgete]:
Load
[Code projet],
sum([Budgété]) as [Budget MOA]
Resident [Extraction projet]
where [Sous type de coût] = 'MOA non defini'
group by [Code projet];

// Ajout du budgété MOE
Outer Join(Budgete_projet)
[temp_budgete]:
Load
[Code projet],
sum([Budgété]) as [Budget MOE]
Resident [Extraction projet]
where [Sous type de coût] = 'MOE ED'
group by [Code projet];

Toute cette première partie de code fonctionne correctement et j'ai en sortie quelque chose qui ressemeble à ce stade à cela :

Code projetLibellé Investissement projetPortefeuilleBudget MOABudget MOE
id_projet1mon projet num 1ptf projet131250
id_projet2mon projet num2ptf projet500750

 

Ce que je souhaite est par script ajouter une colonne à ma table [Budgete_projet] qui effectue la somme des 2 colonnes budgets. Comme cela :

Code projetLibellé Investissement projetPortefeuilleBudget MOABudget MOEBudget global
id_projet1mon projet num 1ptf projet131250381
id_projet2mon projet num2ptf projet5007501250

 

C'est là ou j'atteinds mes limites étant débutant sous Qlik Sense. J'ai inséré le code suivant mais qui ne me donne aucun résultat :

left join(Budgete_projet)
[temp_budgete]:
Load
[Code projet],
([Budget MOA] + [Budget MOE]) as [Budget Global];

Merci beaucoup !

Frederic92
Contributor
Contributor
Author

Bon, en fait je m'en suis sortie finalement en passant par une table intermédiaire. Ce n'est certainement pas la façon la plus propre de faire et si quelqu'un à une solution propre à me remonter, je suis preneur ;). Mais comme cela, ça passe :

[temp_table]:
Load
*,
[Budget MOA] + [Budget MOE] as [Budget Global ]
Resident [Budgete_projet];

drop Table Budgete_projet;

rename Table temp_table to Budgete_projet;

En attendant, je clôture le sujet.