Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
ab92
Creator II
Creator II

Création d'un CAL sur champ DATE

Bonjour à tous,

Environnement:

Je suis confronté à une base de comptabilité avec ces informations sur une table:

ECRITURES => DATE_ECRIT, CREDIT, CODE_BTQ, PLAN_COMPT, COMPTE,

ID_SI, FAMILLE

Contexte :

Le responsable informatique aimerait obtenir le montant des factures réalisés pour chaque mois au cours de l'année sur différentes BTQ. Le champ ID_SI (renseigne le type de facture = data, téléphonie par différent 'prestataire'). J'ai confronté les données avec le logiciel je remonte les bonnes informations. Cependant je n'ai pas crée de calendrier : j'ai crée les champs 'année' et 'mois' par rapport au champ DATE_ECRIT.

Problématique :

Je dois créer un tableau calculant le total de facture réalisé en fonction de la famille 'de facture' sur chaque mois pour le confronter au budget. J'aimerai donc du coup :

  • Créer un calendrier pointant sur le champ DATE_ECRIT
  • Créer une variable indiquant le numéro de mois de 1 à 12 : Bon cette variable n'est pas la plus dure à réaliser.
  • Différencier les différents montant par rapport au champ ID_SI pour ainsi faire le filtre sur Syntes Analysis

Capture Ecran de ce que j'aimerai obtenir :

Pour le moment je suis bloqué sur la création de mon Calendrier, le gros est fait la recherche de données il me manque je pense quelque chose : une approche ou une idée ...

En vous remerciant de votre aide,

A.

1 Solution

Accepted Solutions
lcloatre
Partner - Creator III
Partner - Creator III

J'imagine qu'actuellement ton calendrier n'est relié à aucune autre table.

Il faut que tu renommes le champ Date de ta table Calendrier en ECRIT_DATE_F.

View solution in original post

5 Replies
lcloatre
Partner - Creator III
Partner - Creator III

Axel,

Je te recommande la lecture de ce tuto :Calendrier QlikView

ab92
Creator II
Creator II
Author

Bonjour Laurent,

En te remerciant pour ton attention et ton partage d'opinion...

Justement j'ai appliqué exactement ce calendrier mais je crains ne pas utilisé encore le bon champ lorsque j'utilise mon développement, enfin pour être honnête je ne sais pas sur qu'elle champ du script utilisé je dois joindre la table calendrier ...

J'ai ordonner comme l'indique le tuto les données en ordre ASC dans une table résident ...

J'ai peut être loupé un truc : j'ai ça :

ID_FOURNI:
load

AutoNumberHash256(date(ecr_date),V_CODE_ETB) as @CLE_REALISE,

ecr_repere  as ID_SI,
V_CODE_ETB  as ETB,
ecr_plan  as PLAN_COMP,
date(ecr_date) as ECRIT_DATE_F,
//Ecrit_année as ECRIT_ANNNE_F,
//Ecrit_mois as ECRIT_MOIS_F,
COMPTE as COMPTE_F,
ecr_libel as LIBELLE_F
//ecr_credit as CREDIT_F TEST
Resident Ecritures
Where ecr_plan='F'
and len(ecr_repere)>0
order by ecr_date ASC;

left  join
LOAD
famille  as FAMILLE,
compte  as COMPTE_6,
ecr_repere  as ID_SI
FROM
[COMPTE-SI.xlsx]
(
ooxml, embedded labels, table is Feuil1);

Drop Table Ecritures; // TEST

// Définir les Dates Min et Max
Let vMinDate = Num(Makedate($(V_AnneeRef),1,1));
Let vMaxDate = Num(Makedate(Year(Now()),Month(Now()),Day(Now())));

//LET vMinDate = Num(peek('VentesDate',0,'Ventes'));
//LET vMaxDate = Num(peek('VentesDate',-1,'Ventes'));

// Générer toutes les dates possibles entre la date Min et la Date Max
ChampDate:
LOAD date($(vMinDate)+IterNo()-1) AS MaDate
AUTOGENERATE (1)
WHILE $(vMinDate)+IterNo()-1<= $(vMaxDate);

// Créer une table Calendrier qui va contenir les différentes représentations des dates
Calendrier:
LOAD
MaDate AS Date,
Year(MaDate) AS Année,
'T ' &
Num(Ceil(Month(MaDate)/3),'(ROM)0') AS Trimestre,
Month(MaDate) as Mois,
MonthEnd(MaDate)as DateFinMois,
Week(MaDate) AS Semaine,
Weekday(MaDate) AS JourSemaine,
Day(MaDate) AS Jour

RESIDENT ChampDate;

//supprimer la table ChampDate
DROP TABLE ChampDate;

//Supprimer les variables vMinDate et vMaxDate
SET vMinDate = ;
SET vMaxDate = ;


ab92
Creator II
Creator II
Author

Ca y est je viens de faire des test je devais tout simplement appeler mon champ date par le bon titre du champ calendrier qui rassemblé les données de date donc par ce champ Date

Merci Laurent erreur d'attention, excellente journée à toi

lcloatre
Partner - Creator III
Partner - Creator III

J'imagine qu'actuellement ton calendrier n'est relié à aucune autre table.

Il faut que tu renommes le champ Date de ta table Calendrier en ECRIT_DATE_F.

ab92
Creator II
Creator II
Author

C'est fait je te remercie Laurent, j'ai la tête ailleurs je crois ce matin...

Manque plus du coup à résoudre mon Set Analysis pour ainsi bloquer les bon champ au bonne endroit, tout en sachant que tout est relié maintenant, ça devrait être plus simple ... ^^

Merci encore pour ton aide,

A.