Skip to main content

Francophones

Announcements
QlikWorld 2023, a live, in-person thrill ride. Save $300 before February 6: REGISTER NOW!
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
Specialist III
Specialist III

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
Specialist III
Specialist III

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