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

YTD en fonction d'un exercice fiscal

Bonjour,

Voila ma société a un exercice fiscal qui debute va du 01/10/N au 30/09/N+1

J'ai bien trouvé la possibilité d'avoir un TCD avec une fonction YTD  la voila :

sum({<ANNEE={$(vMaxYear)},DATE={'<=$(vMaxDate)'},MOIS=>}(MNT_CREDIT-MNT_DEBIT))

Cette ligne fait reference a 2 variables :

vMaxYear = Year(Max(DATE))

vMaxDate = Date(max(DATE),)

le problème doit certainement venir de la, car avec tous ces éléments j'ai bien un tableau qui calcul en YTD mais il debute en janvier au lieu de commencer en octobre !!

pouvez vous m'aider svp ??

22 Replies
rfe
Employee
Employee

Bonjour,

La formule trouvée permet de calculer un YTD sur une année calendaire standard :

La première variable fixe l année et la seconde indique de prendre toutes les dates inférieures à la sélection.

Dans votre cas, il faut utiliser ce principe de formule mais en utilisant (j imagine soit une date soit une période) en indiquant quelque chose du type

Sum({$<date periode={">=$(date ou période min) <=$(date ou période Max)"}>} calcul)

J espère que cela vous aidera

Not applicable
Author

ca veux donc dire qu'il faut que j'arrive a generer 2 variables

1 pour mon début d'exercice

1 pour la fin d'exercice

c'est bien cela ?

avez vous une idée de comment proceder ?

merci

rfe
Employee
Employee

On peut le gérer avec deux variables ou on peut aussi le gérer dans une table calendrier

Je vais poster une réponse plus détaillée des que possible

Not applicable
Author

J'ai a presque resolu mon problème avec votre aide

mais il reste me reste quand même un souci pour comparer N / N-1

Voila la formule que j'ai utilisé pour N

=sum({$<ANNEE=,ANNEE_FISCAL={$(#=max(ANNEE_FISCAL))},MOIS=,MOIS_FISCAL={"<=$(#=only(MOIS_FISCAL))"}>}CREDIT-DEBIT)

je pensais faire comme ceci pour N-1 mais cela ne fonctionne pas (désolé pour mon ignorance)

=sum({$<ANNEE=,ANNEE_FISCAL={$(#=max(ANNEE_FISCAL)-1)},MOIS=,MOIS_FISCAL={"<=$(#=only(MOIS_FISCAL))"}>}CREDIT-DEBIT)

merci de votre aide

rlp
Creator
Creator

Créez un tableau comportant le champ ANNEE comme dimension et utiliser l'expression suivante:

sum( { 1< DATE={

'>= MakeDate(01 , 10 , num(ANNEE) )' ,

'<MakeDate(30,09, num(ANNEE)+1)'

} > } CREDIT-DEBIT )

Not applicable
Author

Merci de votre aide mais cela ne fonctionne pas

je joins mon fichier d'exemple au cas ou

il y a le tableau 1 avec ma formule :

sum({$<ANNEE=,ANNEE_FISCAL={$(#=max(ANNEE_FISCAL))},MOIS=,MOIS_FISCAL={"<=$(#=only(MOIS_FISCAL))"}>}CREDIT-DEBIT)

et votre formule (qui ne fonctionne pas)

sum({1<DATE={'>=MakeDate(01,10,num(ANNEE))','<MakeDate(30,09,num(ANNEE)+1)'}>}CREDIT-DEBIT)

au cas ou je souhaiterai aussi dans le tableau 2

comparer N à N-1

Merci d'avance

rlp
Creator
Creator

Pourriez-vous reposter le même fichier mais en forcant une interprétation numérique pour DATE en le chargeant avec num() ?

cje
Employee
Employee

Bonjour,

en pièce jointe une appli qui permet des calculs sur les champs date. Cela devrait peut-être vous aider à avanceer.

Cdt

Christophe Jouve

rlp
Creator
Creator

Petite correction (j'avais fait les tests trop vite):

Pour faire une intersection en set analysys, il faut utiliser la syntaxe:

Field = { 1er_ensemble} * { 2eme_ensemble}

Mais dans votre cas, ce qui semble poser problème c'est l'utilisation de formules comme critères: j'obtiens des résultats quand je filtre sur des valeurs codées en dur mais dès que j'utilise un <=, ca me renvoie 0.

Je ne comprends pas car cette syntaxe fonctionne très bien sur mes fichiers...