Mijn Communities
Help
Jo-lean
CHAMPION *

Leeftijd op datum in dienst

door Jo-lean

Weet iemand of het mogelijk is om in een rapport de leeftijd op de datum in dienst eenvoudig naar voren te halen?

17 ANTWOORDEN 17
Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

Ik ben opzoek naar de leeftijd uit dienst zelfde soort vraag. Ik wil alleen nog een stap verder gaan, dat de formule dan niet alleen kijkt naar het jaar, maar ook naar de dag en maand. Wanneer iemand op 9 mei jarig is en op 06 april uit dienst gaat, dan heeft diegene een andere leeftijd dan wanneer dit 14 juli is.


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

Jo-lean
CHAMPION *

door Jo-lean

Hoi @Raymond_de_Rozario,

Zie het script hieronder, het wordt een getal met 2 decimalen dus je ziet wel de precieze leeftijd.

Groet Jolien

Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

Dank je wel voor het taggen. Ik ga er mee stoeien!


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

funkma
CONTRIBUTOR **

door funkma

Ik ben op zoek naar een methode om de leeftijd op een willekeurige peildatum (uit een datumslicer) te bepalen. Lijkt een vergelijkbare vraag

 

funkma
CONTRIBUTOR **

door funkma

Met de verschillende varianten die benoemd zijn heb ik met de volgende meting in persoon de gewenste leeftijd gevonden (als geheel getal op de exacte datum):

@@lft_peildatum =
VAR peildatumLASTDATE('Reference date filters'[Date])
VAR geb_dat = MIN('Person'[DateOfBirth])
VAR leeftijd = DATEDIFF(geb_dat, peildatum, year)
Return leeftijd + IF (date(year(geb_dat), month(peildatum), day(peildatum)) < geb_dat , -1, 0)
 
de MIN mag ook MAX zijn
 

deze zoek ik ook

Jo-lean
CHAMPION *

Hoi @funkma en @Jacqueline van Meeuwen 

Dit is in een rapportenuurtje besproken en had ik daar wel toegevoegd als reactie, maar hier alsnog even:

Dit script werd gegeven (als meting):

INT(DATEDIFF(MAX(Person[DateOfBirth]), 'Reference date filters'[Selected date], DAY)/365.25)

waarmee je dus de leeftijd kunt berekenen op de ingevoerde datum in een slicer.

 

Voor de leeftijd op de datum in dienst werd het volgende script gegeven (als kolom):

DIVIDE(DATEDIFF(RELATED(Person[DateOfBirth]),'Contract History'[Date_in_service],DAY),365.25)

Het is mij niet gelukt deze werkend te krijgen, toen ik gebruik ging maken van de eerste datum in dienst werkte die wel. Script vraagt dus nog een kleine aanpassing.

 

Hopelijk kunnen jullie hier ook mee verder!

Mathew-DC
CHAMPION *

door Mathew-DC

@Jo-lean De berekende kolom DIVIDE(DATEDIFF(RELATED(Person[DateOfBirth]),'Contract History'[Date_in_service],DAY),365.25) werkt bij mij wel goed als ik die plaats onder de entiteit Dienstverband historie, heb je dat al geprobeerd?

Jo-lean
CHAMPION *

door Jo-lean

Hoi @Mathew-DC ,

Dat had ik dacht ik gedaan maar weet ik niet zeker meer, ik ga het later nog eens proberen, bedankt!

Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

Bij mij ging het om de datum uit dient, maar dat was een kleine aanpassing. Ik heb onderstaande formules geprobeerd:....

 

DIVIDE(DATEDIFF(RELATED('Person'[DateOfBirth]),'Contract History'[Date out of service],DAY),365.25)

 

en 

 

DIVIDE(DATEDIFF(RELATED('Person'[DateOfBirth]),'Contract  History'[Date_out_of_service],DAY),365.25)

Beide komen met de melding

 

Raymond_de_Rozario_0-1731655181818.png

 

Wanneer ik naar contract (dus niet historische gegevens) verwijs, dan blijft Youforce Reporting de hele tijd op "in behandeling" staan

 

DIVIDE(DATEDIFF(RELATED('Person'[DateOfBirth]),'Contract'[Date out of service],DAY),365.25)

 


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

Mathew-DC
CHAMPION *

door Mathew-DC

@Jo-lean en @Raymond_de_Rozario Voor een meting maakt het niet uit, maar onder welke entiteit hebben jullie de berekende kolom toegevoegd in het datamodel? Ik denk dat de RELATED-functie vanuit deze entiteit probeert een relatie te leggen met de tabel Dienstverband(historie); misschien dat dat niet kan en daarom de meting wel lukt en de berekende kolom niet?

Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

@Mathew-DC met DIVIDE(DATEDIFF(RELATED('Person'[DateOfBirth]),'Contract'[Date out of service],DAY),365.25) krijg ik dezelfde melding. Ik heb de meeting onder Person geplaatst.


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

Mathew-DC
CHAMPION *

door Mathew-DC

Als het een meting is, dan zou het niet moeten uitmaken. Maar als het bij de berekende kolom hoort die Jo-lean postte, dan kan ik me voorstellen dat RELATED niet werkt, omdat je vanuit de entiteit 'Person' verwijst naar een ander veld uit dezelfde entiteit.

Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

@Mathew-DC In mijn formule verwijs ik naar twee verschillende entiteiten/tabellen


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

Mathew-DC
CHAMPION *

door Mathew-DC

@Raymond_de_Rozario Wat ik bedoel is dat RELATED('Person'[DateOfBirth]) niet werkt vanuit de entiteit Person. Ik krijg in dat geval dezelfde foutmelding die jij noemde.

Raymond_de_Rozario
ACTIVE CONTRIBUTOR ***

door Raymond_de_Rozario

Heb je het op kunnen lossen @Mathew-DC ? Zo ja, op welke wijze?


Met vriendelijke groeten,

Raymond de Rozario
Bedrijfskundig applicatiemedewerker

Medisch Centrum Leeuwarden

Mathew-DC
CHAMPION *

door Mathew-DC

Ik heb even gekeken en als je de berekende kolom toevoegt onder de entiteit Dienstverband, en als je bij 'Contract'[Date out of service] de spaties vervangt door underscores, dus:

 

DIVIDE(DATEDIFF(RELATED('Person'[DateOfBirth]),'Contract'[Date out of service],DAY),365.25)
 
dan zou het goed moeten gaan. Bij mij werkt het dan in ieder geval in de desktop-versie.