Issues with Upgrade from DHIS 2.26 to DHIS 2.27

Hello Team,

Did you get a chance to take a look at DHIS 2.27 upgrade issues?

Thanks,

Jhansi

···

On Wed, Nov 15, 2017 at 12:14 PM, Mani Madhoolika Bulusu mbulusu@thoughtworks.com wrote:

Hello team,

We are planning an upgrade from DHIS 2.26 to DHIS 2.27, and encountered the following blockers during analysis:

  • In DHIS 2.26, we were entering the legend translations using PUT ‘/api/25/legends/{someLegendId}/translations.json’. In DHIS 2.27 this URL is failing with 404 error code. Could you point us to an end point for translating the legends in DHIS 2.27?
  • In DHIS 2.27, Enrollments and TrackedEntityInstance APIs are returning lastUpdatedAtClient and createdAtClient timestamps instead of lastUpdated and created timestamps. On upgrading DHIS from 2.26 to 2.27, we are not getting lastUpdatedAtClient and createdAtClient timestamps for the Enrollments and TrackedEntityInstances created in DHIS 2.26. Could you point us to a migration script to migrate the lastUpdated and created to lastUpdatedAtClient and createdAtClient, if any.
    Let us know if you need more details.

Thanks,

Madhoolika/Jhansi

Hi Jhansi

Legends are now directly contained in the object where they are used, so no need to reference by UIDs anymore, translations should also be put directly in the legend payload.

created/lastUpdated should not be gone, I think thats a bug, I will look into it.

···

On Tue, Nov 21, 2017 at 1:18 PM, Jhansi Reddy Karee jhansirk@thoughtworks.com wrote:

Hello Team,

Did you get a chance to take a look at DHIS 2.27 upgrade issues?

Thanks,

Jhansi

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Wed, Nov 15, 2017 at 12:14 PM, Mani Madhoolika Bulusu mbulusu@thoughtworks.com wrote:

Hello team,

We are planning an upgrade from DHIS 2.26 to DHIS 2.27, and encountered the following blockers during analysis:

  • In DHIS 2.26, we were entering the legend translations using PUT ‘/api/25/legends/{someLegendId}/translations.json’. In DHIS 2.27 this URL is failing with 404 error code. Could you point us to an end point for translating the legends in DHIS 2.27?
  • In DHIS 2.27, Enrollments and TrackedEntityInstance APIs are returning lastUpdatedAtClient and createdAtClient timestamps instead of lastUpdated and created timestamps. On upgrading DHIS from 2.26 to 2.27, we are not getting lastUpdatedAtClient and createdAtClient timestamps for the Enrollments and TrackedEntityInstances created in DHIS 2.26. Could you point us to a migration script to migrate the lastUpdated and created to lastUpdatedAtClient and createdAtClient, if any.
    Let us know if you need more details.

Thanks,

Madhoolika/Jhansi

> Legends are now directly contained in the object where they are used, so
no need to reference by UIDs anymore, translations should also be put
directly in the legend payload.
We see that we may translate the legends through POST '/api/25/metadata'
call.
Is there any other way to translate legends? Can you point us to an
appropriate API?

The translations are now directly a part of the payload itself, you can see
that if you try and translate any part of dhis2, then go to /api/type/ID
and you will see the translations directly contained in the payload itself.

As an example, you can have a look here:
https://play.dhis2.org/dev/api/dataElements.json?fields=id,displayName,translations

the translation object itself is built up of: property (can be NAME,
SHORT_NAME, DESCRIPTION, and FORM_NAME for data elements), locale, value.

Even for contained objects like legends, you still translate in the same
way, just add a array called translations on the legend, and fill in your
props.

created/lastUpdated should not be gone, I think thats a bug, I will look
into it.
From this, we understand that the lastUpdated and created timestamps also
must be available along with lastUpdatedAtClient and createdAtClient
timestamps in the response. Could you confirm if it is true.

Both created, createdAtClient, lastUpdated, lastUpdatedAtClient will be
there. Created/lastUpdated will be read-only, while *AtClient can be
changed by the client (mostly for usage in offline systems)

···

In DHIS 2.27, the enrollments and trackedEntityInstance API responses
are returning the lastUpdatedAtClient and createdAtClient timestamps
only. Because of this, we think the lastUpdated and created timestamps have
been renamed to lastUpdatedAtClient and createdAtClient. If this is the
case, we think that the data in lastUpdated and created must be migrated
to lastUpdatedAtClient and createdAtClient. If yes, could you point us to
any such migration script?

Thanks,
Madhoolika/Jhansi

On Wed, Nov 22, 2017 at 8:12 AM, Morten Olav Hansen <morten@dhis2.org> > wrote:

Hi Jhansi

Legends are now directly contained in the object where they are used, so
no need to reference by UIDs anymore, translations should also be put
directly in the legend payload.

created/lastUpdated should not be gone, I think thats a bug, I will look
into it.

--
Morten Olav Hansen
Senior Engineer, DHIS 2
University of Oslo
http://www.dhis2.org

On Tue, Nov 21, 2017 at 1:18 PM, Jhansi Reddy Karee < >> jhansirk@thoughtworks.com> wrote:

Hello Team,

Did you get a chance to take a look at DHIS 2.27 upgrade issues?

Thanks,
Jhansi

On Wed, Nov 15, 2017 at 12:14 PM, Mani Madhoolika Bulusu < >>> mbulusu@thoughtworks.com> wrote:

Hello team,

We are planning an upgrade from DHIS 2.26 to DHIS 2.27, and encountered
the following blockers during analysis:

   - In DHIS 2.26, we were entering the legend translations using PUT '
   /api/25/legends/{someLegendId}/translations.json'. In DHIS 2.27
   this URL is failing with 404 error code. Could you point us to an end point
   for translating the legends in DHIS 2.27?
   - In DHIS 2.27, Enrollments and TrackedEntityInstance APIs are
   returning lastUpdatedAtClient and createdAtClient timestamps instead of
   lastUpdated and created timestamps. On upgrading DHIS from 2.26 to 2.27, we
   are not getting lastUpdatedAtClient and createdAtClient timestamps for the
   Enrollments and TrackedEntityInstances created in DHIS 2.26. Could you
   point us to a migration script to migrate the lastUpdated and created to
   lastUpdatedAtClient and createdAtClient, if any.

Let us know if you need more details.

Thanks,
Madhoolika/Jhansi

Please try again with latest 227

···

On Thu, Nov 23, 2017 at 11:00 AM, Morten Olav Hansen morten@dhis2.org wrote:

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

Legends are now directly contained in the object where they are used, so no need to reference by UIDs anymore, translations should also be put directly in the legend payload.

We see that we may translate the legends through POST ‘/api/25/metadata’ call.

Is there any other way to translate legends? Can you point us to an appropriate API?

The translations are now directly a part of the payload itself, you can see that if you try and translate any part of dhis2, then go to /api/type/ID and you will see the translations directly contained in the payload itself.

As an example, you can have a look here:

https://play.dhis2.org/dev/api/dataElements.json?fields=id,displayName,translations

the translation object itself is built up of: property (can be NAME, SHORT_NAME, DESCRIPTION, and FORM_NAME for data elements), locale, value.

Even for contained objects like legends, you still translate in the same way, just add a array called translations on the legend, and fill in your props.

created/lastUpdated should not be gone, I think thats a bug, I will look into it.

From this, we understand that the lastUpdated and created timestamps also must be available along with lastUpdatedAtClient and createdAtClient timestamps in the response. Could you confirm if it is true.

Both created, createdAtClient, lastUpdated, lastUpdatedAtClient will be there. Created/lastUpdated will be read-only, while *AtClient can be changed by the client (mostly for usage in offline systems)

In DHIS 2.27, the enrollments and trackedEntityInstance API responses are returning the lastUpdatedAtClient and createdAtClient timestamps only. Because of this, we think the lastUpdated and created timestamps have been renamed to lastUpdatedAtClient and createdAtClient. If this is the case, we think that the data in lastUpdated and created must be migrated to lastUpdatedAtClient and createdAtClient. If yes, could you point us to any such migration script?

Thanks,

Madhoolika/Jhansi

On Wed, Nov 22, 2017 at 8:12 AM, Morten Olav Hansen morten@dhis2.org wrote:

Hi Jhansi

Legends are now directly contained in the object where they are used, so no need to reference by UIDs anymore, translations should also be put directly in the legend payload.

created/lastUpdated should not be gone, I think thats a bug, I will look into it.

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Tue, Nov 21, 2017 at 1:18 PM, Jhansi Reddy Karee jhansirk@thoughtworks.com wrote:

Hello Team,

Did you get a chance to take a look at DHIS 2.27 upgrade issues?

Thanks,

Jhansi

On Wed, Nov 15, 2017 at 12:14 PM, Mani Madhoolika Bulusu mbulusu@thoughtworks.com wrote:

Hello team,

We are planning an upgrade from DHIS 2.26 to DHIS 2.27, and encountered the following blockers during analysis:

  • In DHIS 2.26, we were entering the legend translations using PUT ‘/api/25/legends/{someLegendId}/translations.json’. In DHIS 2.27 this URL is failing with 404 error code. Could you point us to an end point for translating the legends in DHIS 2.27?
  • In DHIS 2.27, Enrollments and TrackedEntityInstance APIs are returning lastUpdatedAtClient and createdAtClient timestamps instead of lastUpdated and created timestamps. On upgrading DHIS from 2.26 to 2.27, we are not getting lastUpdatedAtClient and createdAtClient timestamps for the Enrollments and TrackedEntityInstances created in DHIS 2.26. Could you point us to a migration script to migrate the lastUpdated and created to lastUpdatedAtClient and createdAtClient, if any.
    Let us know if you need more details.

Thanks,

Madhoolika/Jhansi

Hi Morten,

Thanks for fixing the enrollments and trackedEntityInstance APIs to continue to return the lastUpdated and created timestamps.

We are still not able to figure out on how can we provide translations for legends through legendSet web API.

The only way we are able to translate legends is through POST ‘/api/25/metadata’ call.

Even for contained objects like legends, you still translate in the same way, just add a array called translations on the legend, and fill in your props.

Could you give more details on this or point us to an endpoint.

Thanks,

Jhansi

···

On Fri, Nov 24, 2017 at 9:40 AM, Morten Olav Hansen morten@dhis2.org wrote:

Please try again with latest 227

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Thu, Nov 23, 2017 at 11:00 AM, Morten Olav Hansen morten@dhis2.org wrote:

Legends are now directly contained in the object where they are used, so no need to reference by UIDs anymore, translations should also be put directly in the legend payload.

We see that we may translate the legends through POST ‘/api/25/metadata’ call.

Is there any other way to translate legends? Can you point us to an appropriate API?

The translations are now directly a part of the payload itself, you can see that if you try and translate any part of dhis2, then go to /api/type/ID and you will see the translations directly contained in the payload itself.

As an example, you can have a look here:

https://play.dhis2.org/dev/api/dataElements.json?fields=id,displayName,translations

the translation object itself is built up of: property (can be NAME, SHORT_NAME, DESCRIPTION, and FORM_NAME for data elements), locale, value.

Even for contained objects like legends, you still translate in the same way, just add a array called translations on the legend, and fill in your props.

created/lastUpdated should not be gone, I think thats a bug, I will look into it.

From this, we understand that the lastUpdated and created timestamps also must be available along with lastUpdatedAtClient and createdAtClient timestamps in the response. Could you confirm if it is true.

Both created, createdAtClient, lastUpdated, lastUpdatedAtClient will be there. Created/lastUpdated will be read-only, while *AtClient can be changed by the client (mostly for usage in offline systems)

In DHIS 2.27, the enrollments and trackedEntityInstance API responses are returning the lastUpdatedAtClient and createdAtClient timestamps only. Because of this, we think the lastUpdated and created timestamps have been renamed to lastUpdatedAtClient and createdAtClient. If this is the case, we think that the data in lastUpdated and created must be migrated to lastUpdatedAtClient and createdAtClient. If yes, could you point us to any such migration script?

Thanks,

Madhoolika/Jhansi

On Wed, Nov 22, 2017 at 8:12 AM, Morten Olav Hansen morten@dhis2.org wrote:

Hi Jhansi

Legends are now directly contained in the object where they are used, so no need to reference by UIDs anymore, translations should also be put directly in the legend payload.

created/lastUpdated should not be gone, I think thats a bug, I will look into it.

Morten Olav Hansen

Senior Engineer, DHIS 2

University of Oslo

http://www.dhis2.org

On Tue, Nov 21, 2017 at 1:18 PM, Jhansi Reddy Karee jhansirk@thoughtworks.com wrote:

Hello Team,

Did you get a chance to take a look at DHIS 2.27 upgrade issues?

Thanks,

Jhansi

On Wed, Nov 15, 2017 at 12:14 PM, Mani Madhoolika Bulusu mbulusu@thoughtworks.com wrote:

Hello team,

We are planning an upgrade from DHIS 2.26 to DHIS 2.27, and encountered the following blockers during analysis:

  • In DHIS 2.26, we were entering the legend translations using PUT ‘/api/25/legends/{someLegendId}/translations.json’. In DHIS 2.27 this URL is failing with 404 error code. Could you point us to an end point for translating the legends in DHIS 2.27?
  • In DHIS 2.27, Enrollments and TrackedEntityInstance APIs are returning lastUpdatedAtClient and createdAtClient timestamps instead of lastUpdated and created timestamps. On upgrading DHIS from 2.26 to 2.27, we are not getting lastUpdatedAtClient and createdAtClient timestamps for the Enrollments and TrackedEntityInstances created in DHIS 2.26. Could you point us to a migration script to migrate the lastUpdated and created to lastUpdatedAtClient and createdAtClient, if any.
    Let us know if you need more details.

Thanks,

Madhoolika/Jhansi