GenoPro Home
GenoPro Home  |  Get Started With My Genealogy Tree  |  Buy  |  Login  |  Privacy  |  Search  |  Site Map
 
Birthday listing for all individuals not only deceased ones


https://support.genopro.com/Topic40124.aspx
Print Topic | Close Window

By Regislab - Tuesday, October 15, 2019
Sometimes I will know how old would a ancestor be today when celebrating his birthday, but when I launch the report Birthday Listing or Customized Birthday Listing, there is no possibility to change parameters before to get it.
The result gives only the individuals still alive.

Unless there is a possibility, that I do not know, I propose this as a suggestion.

Best regards,

Gérard
By 1906429 - Thursday, November 14, 2019
This is an easy enough work around.
Create a second copy of your data.
go to spreadsheet tab
go to "Is Dead" column
right click on column heading
choose "erase column"
run report 
You'll have all the birthdays!!!

Remember to go back to your working data file for future work.
By genome - Friday, November 15, 2019
Alternatively, having created a 'Customized Birthday Listing' report skin by clicking 'New Skin' button in Report dialog with built-in 'Birthday Listing' selected, simply edit Customized Birthday Listing\default.htm file to remove lines 17,18,19 and 29 then save to create a template that will list all individuals with birth dates.
By Regislab - Friday, November 15, 2019
I have tried it but how count the line you propose to remove ? where are the line 17, 18, 19 and 29 ?


Here what I have :

Birthdays from @[Report.WriteText(ReportGenerator.document.Name);]@

Listing of all birthdays of living individuals.

<%[var strBirthdayPrev; // Remember the previous birthday to avoid writing the same birthday multiple timesvar colIndividualSortedByBirthday = Individuals.SortBy("Birthday"); // The collection Individuals is an alias to ReportGenerator.document.Collection("Individuals")// Loop through all individuals (already sorted by birthday)for (var i = 0; i < colIndividualSortedByBirthday.Count; i++) { var ind = colIndividualSortedByBirthday(i); if (!ind.IsDead) // Exclude any individual deceased { // The individual is alive, so fetch his/her birthday var strBirthday = ind.Birthday.ToString("MMMM d yyyy"); if (strBirthday != "") { if (strBirthday != strBirthdayPrev) Report.WriteFormatted("
{0}
", strBirthday); strBirthdayPrev = strBirthday; // Write the name of the individual in the page Report.WriteT3(" ", ind.Name); Report.Write3Br(" ( ", ind.Age.NYears + 1, " )"); } }}/* An alternative way is using the ObjectRepertory to sort the birthdaysvar colIndividualSortedByBirthday = Util.NewObjectRepertory(); // Visit http://www.genopro.com/sdk/Class/ObjectRepertory/ for more information about the 'ObjectRepertory'for (var i = 0; i < Individuals.Count; i++) { var ind = Individuals(i); colIndividualSortedByBirthday.Add(ind.Birth.Date.ToString("MM-dd"), ind); // The sort key is the Month in two-digits format, followed by the Day of birth.}colIndividualSortedByBirthday.SortByKey(); // Sort all individuals using the sort key which is the month and day of birth.*/]%>
By genome - Friday, November 15, 2019
Delete lines highlighted below:

<!--  This is a very simple skin to demonstrate how easy it is to generate custom reports with  GenoPro -->
<html>
<head> 
<title>Birthdays</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<h1>Birthdays from @[Report.WriteText(ReportGenerator.Document.Name);]@</h1>
<p><i>Listing of all birthdays of living individuals.</i></p>
<%[
var strBirthdayPrev; // Remember the previous birthday to avoid writing the same birthday multiple times
var colIndividualSortedByBirthday = Individuals.SortBy("Birthday");  // The collection Individuals is an alias to ReportGenerator.Document.Collection("Individuals")
// Loop through all individuals (already sorted by birthday)
for (var i = 0; i < colIndividualSortedByBirthday.Count; i++) 
{
  var ind = colIndividualSortedByBirthday(i); 
  if (!ind.IsDead) // Exclude any individual deceased
  {
    // The individual is alive, so fetch his/her birthday
    var strBirthday = ind.Birthday.ToString("MMMM d");
if (strBirthday != "")
{
  if (strBirthday != strBirthdayPrev)
    Report.WriteFormatted("<br/><b>{0}</b></br/>", strBirthday);
  strBirthdayPrev = strBirthday;
      // Write the name of the individual in the page
      Report.WriteT3Br(" - ", ind.Name);
}
  }
}

/* An alternative way is using the ObjectRepertory to sort the birthdays
var colIndividualSortedByBirthday = Util.NewObjectRepertory();  // Visit http://www.genopro.com/sdk/Class/ObjectRepertory/ for more information about the 'ObjectRepertory'
for (var i = 0; i < Individuals.Count; i++) 
{
  var ind = Individuals(i); 
  colIndividualSortedByBirthday.Add(ind.Birth.Date.ToString("MM-dd"), ind); // The sort key is the Month in two-digits format, followed by the Day of birth.
}
colIndividualSortedByBirthday.SortByKey(); // Sort all individuals using the sort key which is the month and day of birth.
*/
]%>
</body></html>
By Regislab - Friday, November 15, 2019
Many thanks, It was successful. I understand why I could not count the line, have open it with my navigator instead of using Notepad.

By the way, as in brackets are mentioned the age when died, is it possible to show, the birth year, next to the date shown ? e.g. March, 31 1931