Using age-type attributes in program indicator calculations

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. >From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

···

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp

Nayeem, thanks for the workaround.

Nick, the proposed usage should have worked. Age should be treated as a normal date data type in the program indicators. Can you create a bug in jira?

Markus

···
  1. apr. 2018 kl. 03:41 skrev Nayeem Al Mifthah n.mifthah@gmail.com:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

Hi Markus and the team,

I think the issue is already created on JIRA since last year. May be we should push for it because this is stopping community from benefiting with this useful feature. The Jira link to the link is

https://jira.dhis2.org/browse/DHIS2-1309?jql=text%20~%20%22Age%22

Issue Navigator - DHIS 2 JIRA

Issue Navigator - DHIS 2 JIRA

Regards

Sele

Nayeem, thanks for the workaround.

Nick, the proposed usage should have worked. Age should be treated as a normal date data type in the program indicators. Can you create a bug in jira?

Markus

···

On Tuesday, April 3, 2018, 9:30:31 AM GMT+3, Markus Bekken markus@dhis2.org wrote:

  1. apr. 2018 kl. 03:41 skrev Nayeem Al Mifthah n.mifthah@gmail.com:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

Hi Nayeem, this is very useful but the statement below was not very clear at least for me.

“Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.”

Do you mind to elaborate a bit more, and which version of DHIS2 are referring to?

Thanks in advance

Regards

Sele

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

···

On Tuesday, April 3, 2018, 4:42:08 AM GMT+3, Nayeem Al Mifthah n.mifthah@gmail.com wrote:

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

1 Like

Hey Seleman,
The issue you are referring to here asks for a change in how the Age data type functions. I think the behavior you want should already be supported, but with the syntax that Nick provided below.

One strength of calculating the age using the d2:yearsBetween() is that you would explicitly state the point in time where you want the calculation to be based on. If you look at an Age data element in the user interface, the calculation is done based on the current date - but this is not always what you want when writing program indicators. Nicks example below was calculating based on event date for example.

Markus

···
  1. apr. 2018 kl. 08:52 skrev Seleman Ally seleman_ally@yahoo.com:

Hi Markus and the team,

I think the issue is already created on JIRA since last year. May be we should push for it because this is stopping community from benefiting with this useful feature. The Jira link to the link is

https://jira.dhis2.org/browse/DHIS2-1309?jql=text%20~%20%22Age%22

Issue Navigator - DHIS 2 JIRA

Issue Navigator - DHIS 2 JIRA

Regards

Sele

On Tuesday, April 3, 2018, 9:30:31 AM GMT+3, Markus Bekken markus@dhis2.org wrote:

Nayeem, thanks for the workaround.

Nick, the proposed usage should have worked. Age should be treated as a normal date data type in the program indicators. Can you create a bug in jira?

Markus

  1. apr. 2018 kl. 03:41 skrev Nayeem Al Mifthah n.mifthah@gmail.com:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

Hi Sale

Create a data element ie. age in year

Assign to stage.

Create a program rule variable with age/DoB attribute as any name ie. DOB

Create program rule to assign value to newly created data element

The calculation should be d2:yearsBetween(DoB, event_date)

···

On Tue, Apr 3, 2018 at 12:57 PM, Seleman Ally seleman_ally@yahoo.com wrote:

Hi Nayeem, this is very useful but the statement below was not very clear at least for me.

“Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.”

Do you mind to elaborate a bit more, and which version of DHIS2 are referring to?

Thanks in advance

Regards

Sele

On Tuesday, April 3, 2018, 4:42:08 AM GMT+3, Nayeem Al Mifthah n.mifthah@gmail.com wrote:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

Nayeem Al Mifthah
Consultant for HSS, Health MIS, M&E and Surveillance
Email: n.mifthah@gmail.com
Cell:+8801914030574

Skype: nayeem.a.m

Dear Markus and Nayeem,

Thanks a lot, i will test that and definitely I will share my feedback.

Thanks a lot

Regards

Hi Sale

Create a data element ie. age in year

Assign to stage.

Create a program rule variable with age/DoB attribute as any name ie. DOB

Create program rule to assign value to newly created data element

The calculation should be d2:yearsBetween(DoB, event_date)

Nayeem Al Mifthah
Consultant for HSS, Health MIS, M&E and Surveillance
Email: n.mifthah@gmail.com
Cell:+8801914030574

Skype: nayeem.a.m

···

On Tuesday, April 3, 2018, 10:23:04 AM GMT+3, Nayeem Al Mifthah n.mifthah@gmail.com wrote:

On Tue, Apr 3, 2018 at 12:57 PM, Seleman Ally seleman_ally@yahoo.com wrote:

Hi Nayeem, this is very useful but the statement below was not very clear at least for me.

“Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.”

Do you mind to elaborate a bit more, and which version of DHIS2 are referring to?

Thanks in advance

Regards

Sele

On Tuesday, April 3, 2018, 4:42:08 AM GMT+3, Nayeem Al Mifthah n.mifthah@gmail.com wrote:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2- users

Post to : dhis2-users@lists.launchpad. net

Unsubscribe : https://launchpad.net/~dhis2- users

More help : https://help.launchpad.net/ ListHelp


Mailing list: https://launchpad.net/~dhis2- users
Post to : dhis2-users@lists.launchpad. net
Unsubscribe : https://launchpad.net/~dhis2- users
More help : https://help.launchpad.net/ ListHelp

Thanks Markus, just wanted to confirm.

https://jira.dhis2.org/browse/DHIS2-3312

···

On Tue, Apr 3, 2018 at 2:30 AM, Markus Bekken markus@dhis2.org wrote:

Nayeem, thanks for the workaround.

Nick, the proposed usage should have worked. Age should be treated as a normal date data type in the program indicators. Can you create a bug in jira?

Markus

  1. apr. 2018 kl. 03:41 skrev Nayeem Al Mifthah n.mifthah@gmail.com:

Hi Nick
I have also notice the same problem. Later created a data element in program stage and assign age in year as a calculative value from program attribute ‘age’.

It works!

Regards,
Nayeem Al Mifthah
Consultant for HSS, HMIS, M&E, GIS and Surveillance

Kindly ignore typos.

On Mon, 2 Apr 2018, 23:07 Shurajit Dutta, shurajitdutta@gmail.com wrote:

Hi

I am trying to figure out the best method to use age-type attributes in program indicator calculations. As a simple example, let us say I want a program indicator which displays the age in years of a person. From what I can see, the age-type attribute stores its value as a date, according to the date of birth either selected or estimated based on what is entered in the years, weeks and months fields respectively during registration. If I want to use this date in a program indicator however it seems to not work correctly.

ie d2:yearsBetween(age, event_date) when used as an expressions as an example would not give me the correct age in years. Is there another way in which to make these types of program indicators work with the age-type attribute?

Thanks,

Nick


Mailing list: https://launchpad.net/~dhis2-users

Post to : dhis2-users@lists.launchpad.net

Unsubscribe : https://launchpad.net/~dhis2-users

More help : https://help.launchpad.net/ListHelp


Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help : https://help.launchpad.net/ListHelp

Shurajit Dutta (MPH, MHI)
Health Information Systems Adviser