* Age of all individuals
Age of all individuals
I am a new user of FH6 having come across from FTM.
Is there a way to get a report or listing of the ages of every individual in the system?
I have had a look through the forum and tried the FH6 help, but was unable to find anything.
Regards
David
Is there a way to get a report or listing of the ages of every individual in the system?
I have had a look through the forum and tried the FH6 help, but was unable to find anything.
Regards
David
- BillH
- Megastar
- Posts: 2258
- Joined: 31 May 2010 03:40
- Family Historian: V7
- Location: Washington State, USA
Re: Age of all individuals
David,
What age do you want? If you want current age, that only works for people who are still alive. If you want age at death, that only works for people who are dead for which you know the actual birth date and death date. Can you give more detail on what you actually want?
Bill
What age do you want? If you want current age, that only works for people who are still alive. If you want age at death, that only works for people who are dead for which you know the actual birth date and death date. Can you give more detail on what you actually want?
Bill
Bill Henshaw
Re: Age of all individuals
I want both so I can see and compare the ages of everyone.
If it takes 2 reports that would be OK.
If it takes 2 reports that would be OK.
- tatewise
- Megastar
- Posts: 28436
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
Re: Age of all individuals
Welcome to the FHUG David.
BTW: As a newcomer I recommend you work through how_to:key_features_for_newcomers|> Key Features for Newcomers.
One way of achieving those Ages is to add a Column to the Records Window.
In the Records Window on the Individuals tab use Lists > Configure Record Window Columns.
Scroll to bottom of left-hand list and select <Other...> then click > in centre.
In Heading: enter Largest Age
In Expression: enter =TextIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), EstimatedAgeAt(%INDI%,Today(),AVG) )
(Copy and Paste that Expression to avoid typing mistakes.)
Finally click OK and OK again.
What that Expression does is test if a Death Event exists.
If so, it computes the Age At Estimated Death Date which uses actual Death Date if it exists, otherwise estimates it from other events.
If no Death Event, it computes Estimated Age Today.
Of course if any person has no Birth Date, or insufficient other dates, then no Age can be computed.
BTW: As a newcomer I recommend you work through how_to:key_features_for_newcomers|> Key Features for Newcomers.
One way of achieving those Ages is to add a Column to the Records Window.
In the Records Window on the Individuals tab use Lists > Configure Record Window Columns.
Scroll to bottom of left-hand list and select <Other...> then click > in centre.
In Heading: enter Largest Age
In Expression: enter =TextIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), EstimatedAgeAt(%INDI%,Today(),AVG) )
(Copy and Paste that Expression to avoid typing mistakes.)
Finally click OK and OK again.
What that Expression does is test if a Death Event exists.
If so, it computes the Age At Estimated Death Date which uses actual Death Date if it exists, otherwise estimates it from other events.
If no Death Event, it computes Estimated Age Today.
Of course if any person has no Birth Date, or insufficient other dates, then no Age can be computed.
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
- BillH
- Megastar
- Posts: 2258
- Joined: 31 May 2010 03:40
- Family Historian: V7
- Location: Washington State, USA
Re: Age of all individuals
David,
For the age at death there is also a standard query. Use View > Standard Queries > Age at Death (all).
Bill
For the age at death there is also a standard query. Use View > Standard Queries > Age at Death (all).
Bill
Bill Henshaw
- tatewise
- Megastar
- Posts: 28436
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
Re: Age of all individuals
Yes, but that Query only works if there is both a specified Birth Date and a specified Death Date.
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
-
- Superstar
- Posts: 256
- Joined: 18 Dec 2014 11:06
- Family Historian: V7
- Location: Suffolk, England
- Contact:
Re: Age of all individuals
Mike
I thought I would give your Query a try. Is there any way of filtering out estimated ages in excess of say 110 years. I have numerous estimated ages over 100, the oldest being 367 year!
Many thanks
Brian
I thought I would give your Query a try. Is there any way of filtering out estimated ages in excess of say 110 years. I have numerous estimated ages over 100, the oldest being 367 year!
Many thanks
Brian
- tatewise
- Megastar
- Posts: 28436
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
Re: Age of all individuals
I actually suggested using the Records Window because you asked to obtain an Age for every Individual.
But a Query is an alternative approach that allows Individuals to be conditionally excluded.
I have slightly revised the Column Expression for Age to convert it to a number:
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), EstimatedAgeAt(%INDI%,Today(),AVG) )
To exclude large values use a Rows tab filter such as:
Condition: Exclude if
Expression: =NumberIf( ...as above... )
Operator: is greater than
Value: 110
You can similarly exclude those without an Age by using a filter the same as above but with Operator: is null
But a Query is an alternative approach that allows Individuals to be conditionally excluded.
I have slightly revised the Column Expression for Age to convert it to a number:
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), EstimatedAgeAt(%INDI%,Today(),AVG) )
To exclude large values use a Rows tab filter such as:
Condition: Exclude if
Expression: =NumberIf( ...as above... )
Operator: is greater than
Value: 110
You can similarly exclude those without an Age by using a filter the same as above but with Operator: is null
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
-
- Superstar
- Posts: 256
- Joined: 18 Dec 2014 11:06
- Family Historian: V7
- Location: Suffolk, England
- Contact:
Re: Age of all individuals
Sorry Mike - I used the wrong terminology as it wasn't a Query but using the Expression in the Records Window that gave the high ages. Can these be eliminated via the Expression or is it something that we have to live with.
- tatewise
- Megastar
- Posts: 28436
- Joined: 25 May 2010 11:00
- Family Historian: V7
- Location: Torbay, Devon, UK
- Contact:
Re: Age of all individuals
Yes, I presume it is only the EstimatedAgeAt() that needs restricting and so the following will work:
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), TextToNumber( TextIf( EstimatedAgeAt(%INDI%,Today(),AVG) <= 110, EstimatedAgeAt(%INDI%,Today(),AVG), "" ) ) )
Alternatively, perhaps slightly clearer, TextToNumber("") appears to be the only way to yield an empty number:
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), NumberIf( EstimatedAgeAt(%INDI%,Today(),AVG) <= 110, EstimatedAgeAt(%INDI%,Today(),AVG), TextToNumber("") ) )
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), TextToNumber( TextIf( EstimatedAgeAt(%INDI%,Today(),AVG) <= 110, EstimatedAgeAt(%INDI%,Today(),AVG), "" ) ) )
Alternatively, perhaps slightly clearer, TextToNumber("") appears to be the only way to yield an empty number:
=NumberIf( Exists(%INDI.DEAT%), AgeAt(%INDI%,EstimatedDeathDate(%INDI%, MID)), NumberIf( EstimatedAgeAt(%INDI%,Today(),AVG) <= 110, EstimatedAgeAt(%INDI%,Today(),AVG), TextToNumber("") ) )
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
-
- Superstar
- Posts: 256
- Joined: 18 Dec 2014 11:06
- Family Historian: V7
- Location: Suffolk, England
- Contact:
Re: Age of all individuals
Thanks Mike - Perfect!