Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
konieczny
Partner - Contributor II
Partner - Contributor II

Répartition montant dans tableau croisé au prorata

Bonjour à toutes et à tous.

J'ai ci-dessous un exemple de tableau croisé dans lequel je souhaiterai que le montant de charge de la ligne ROOT soit éclaté sur toutes les autres lignes en fonction du poids du produit de chaque ligne sur le produit total. (Colonne Répartition ADM)

Mon modèle de données correspond à 2 tables concaténées venant de 2 bases différentes pour les produits et les charges.

 

Modèle de données

LOAD
"Date",
Année,
Mois,
"N° de compte",
"Numéro facture",
"Montant HT",
Avocat as "Responsable",
'Produit' as "Type d'opération"
FROM [lib://QVD_DATAREPORT (interne_administrateur)/Ecriture.qvd]
(qvd)
where "Type d'opération"='FC';

Concatenate

Load
JM_Date as "Date",
year(JM_Date) as "Année",
Month(JM_Date) as "Mois",
CG_Num as "N° de compte",
EC_No as "Numéro facture",
(if(EC_Sens='Débit',EA_Montant,EA_Montant*-1)) as "Montant HT",
LOP as "Responsable",
"Rubrique comptable",
'Charge' as "Type d'opération"

FROM [lib://QVD_DATAREPORT (interne_administrateur)/Charges_SAGE.qvd]
(qvd);

Si quelqu'un à une idée 🙂

Merci par avance

1 Solution

Accepted Solutions
brunobertels
Master
Master

Bonjour 

Peut etre quelque chose comme çà : 

Sur ta colonne Répartition ADM : 

if([Rubrique Compte]='Root', 0 , Sum({$<[Rubrique Comptable]={'Root'}>}Values) * (sum(Produit)/Sum(Total Produit))

View solution in original post

3 Replies
brunobertels
Master
Master

Bonjour 

Peut etre quelque chose comme çà : 

Sur ta colonne Répartition ADM : 

if([Rubrique Compte]='Root', 0 , Sum({$<[Rubrique Comptable]={'Root'}>}Values) * (sum(Produit)/Sum(Total Produit))

konieczny
Partner - Contributor II
Partner - Contributor II
Author

Bonjour,

Désolé de la réponse tardive, j'étais en congés 🙂

Merci je vais essayer avec cela et vous fais un retour

Cordialement

konieczny
Partner - Contributor II
Partner - Contributor II
Author

Merci pour votre réponse qui m'a aidé à résoudre mon besoin.

En fait j'ai créé 3 variables

* Pour le calcul de ma ligne ROOT variable $(ADM):  sum(total{$<Responsable={'ROOT'}>} if([Type d'opération]='Charge',[Montant HT],0))  qui en fait est une charge, ce que je n'avais pas précisé

* Pour le calcul produit de chaque responsable variable $(Produit) : sum(total <Responsable> if([Type d'opération]='Produit',[Montant HT],0))*-1

* Pour le calcul du Total produit variable $(Total produit) : sum(total if([Type d'opération]='Produit',[Montant HT],0))*-1

et ma mesure finale : $(ADM)*($(Produit)/$(Total produit))

Si cela peut en aider d'autres 🙂

Merci encore