Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
J'ai une table Salarié avec les dates de naissance et les dates d'entrée dans la société.
Je souhaiterai catégoriser selon la tranche d'âge / la tranche d'ancienneté. Je suppose que la base de calcul est la même pour les deux aspects.
J'ai donc un tableau croisé dynamique avec la situation au 31/12 des 3 dernières années. Mais quand je compare la date anniversaire / d'entrée avec la date de la colonne, aucun résultat n'est affiché. D'où peut provenir l'erreur ?
EXPRESSION DE LA MESURE : Count({$<num(ContratTravailDateEntreeReference)={">$(vDateAnciennete1An)"}>}%ContratTravailID) VARIABLE vDateAnciennete1An : num(AddMonths(MakeDate(Année,Mois,Jour),(-12*1)))
Bonjour,
Je pense qu'il faut préparer les données dans le script pour ton besoin. Donc avoir pour chaque fin d'année la situation du salarié avec son âge et son ancienneté.
Tu auras par exemple 3 lignes pour un salarié entré avant 2016.
Voici un script d'exemple :
SalariésTmp:
load * Inline [
SalarieId,DateNaissance,DateEntree
A,21/02/1975,20/03/2015
B,12/07/1990,12/04/2016
C,11/11/1985,02/03/2018
];
join(SalariésTmp)
load * Inline [
Année
31/12/2016
31/12/2017
31/12/2018
];
NoConcatenate
Salariés:
Load *,
ceil(age(Année,DateEntree)) as Ancienneté,
ceil(age(Année,DateNaissance)) as AgeSalarié
resident SalariésTmp
where DateEntree<=Année;
drop table SalariésTmp;
Dans un TCD, tu mets Ancienneté et Année en dimension, et Count(SalarieId) en Mesure.
A ta disposition si tu veux plus d'explication
Bonjour,
Fais un tableau avec en dimension :
le matricule du salarié
sa date de naissance
sa date d'ancienneté
la variable vDateAnciennete1An
en mesure
la soustraction entre la variable et la date de naissance
Ça devrait te mettre sur la piste d'un éventuel pb de format, par exemple.
Merci pour ta réponse, j'ai donc bien les deux dates au format numérique, en mesure, il fait bien le tri entre les <1an et les autres :
Dans le set analysis, par contre, ça ne passe toujours pas... il me met tout à 0 :
Count( {$< ContratTravailDateEntreeReference = {"> $(vDateAnciennete1An)"} >} %SalarieID)
Bonjour,
Je pense qu'il manque le =
Count( {$< ContratTravailDateEntreeReference = {"> $(=vDateAnciennete1An)"} >} %SalarieID)
Même avec, toujours à 0...
de mon côté, ça fonctionne :
ARNAUD:
NoConcatenate
LOAD * inline [
%SalarieID,ContratTravailDateEntreeReference,vDateAnciennete1An
A,41606,42735
B,41606,43100
C,43356,43100
D,42935,42735
E,43383,43100
F,43010,42735
];
=Count({<ContratTravailDateEntreeReference={"<$(vDateAnciennete1An)"} >} %SalarieID)
Seyko, ta solution fonctionne... mais seulement quand je sélectionne une seule date.
Si je choisis les 3 derniers 31/12 pour avoir un suivi, toutes les lignes sont à 0.
Voici la sélection sur le 31/12/2018, puis sur les 31/12/2016-2017-2018 :