← Back to team overview

dhis2-devs team mailing list archive

Re: [Dhis2-users] Set data approvals with dhis 2.23


Hi Adolphe,

Thank you for your report.

*1. Workflows:*

As you saw, when upgrading your database to include workflows, one workflow
is created for each dataset for which approvals had been enabled. If you
wish to approve/unapprove multiple datasets always together, you can
reassign the dataset workflows so they refer to the same workflow. You can
also change the name of a workflow if you wish.

If this results in any unused workflows that you don't need any more, you
can delete them after all their datasets have been reassigned, and after
removing any approvals for them. (This last step can be done through the
UI, or you may find it more practical to do this through a SQL script if
there are many approvals for the workflow. If you do this through SQL, be
sure to clear the Hibernate cache or restart Tomcat afterwards.)

Note that in 2.23, under Reports, the Data Approval Report still asks you
to select a dataset for approval. But what is actually approved is the
workflow associated with the dataset for that org unit and period. This
means that when you select other datasets using the same workflow, they
will also be approved. Data will be locked for all dataset associated with
that workflow. We will change the user interface in the future so that the
workflow will be selected instead of the dataset, to make this clearer.

*2. Levels:*

Before you upgraded, did you have only one approval level defined -- at the
Province level? If the upgrade left you with Province as the only approval
level, then this would be my guess.

Do you want approvals at only the Province level? In other words, data may
be freely entered at any facility until approved at the Province level,
which locks data entry for all facilities in the Province for that dataset
and period? Then, if the data is unapproved at the Province level, data
entry is allowed again for all facilities in that Province for that dataset
and period? If this is true, then the workflow should be linked to only one
approval level, at the Province level.

If you have the workflow linked to multiple approval levels, then data must
first be approved at the lowest of these levels, and it must be approved
for every org unit at the lower level before it can be approved at the
higher level. For example, if you have a workflow assigned to Province, Sub
district and facilities levels, then you must approve every facilities in a
sub district before you can approve the sub district. Then you must approve
every sub district in the Province before you can approve the Province. If
you haven't done all of this, then you will get the message "Waiting for
lower levels to approve" when looking at the higher level. This should have
functioned the same way in 2.20 (when approving by dataset) as in 2.23
(when approving by workflow.)

*3. Data Locking:*

You say that "after upgrading to 2.23,  the approval couldn't lock data
 for reporting unit, rather it locks data for  upper levels excluding
reporting facility. ie the data manager can still change data freely." I am
so far unable to reproduce this. For example on https://play.dhis2.org/demo
(running 2.25) I tried approving the dataset "Mortality < 5 years" for
Serria Leone -> Bo -> Badjia for December 2016. (This approved the related
workflow "Mortality < 5 years" for Badjia for Dec 2016.) I then went to
data entry for the facility Ngelehun CHC under Badjia, and the data was
locked for Mortality < 5 years, Dec 2016 (but not, for example for Nov
2016). I then created a data entry user with access to Ngelehun CHC only,
and that user also could not enter data for Ngelehun CHC, Mortality < 5
years, December 2016.

If you are still having trouble with this, please try one of the following:

- See if you can reproduce the same kind of problem on

- Give a more detailed description of the problem and configuration so I
can try better to reproduce it.

- Give me access to a system where I can see the problem myself, if you can.


On Fri, Nov 4, 2016 at 5:50 AM, Kamugunga Adolphe <kaadol@xxxxxxxxx> wrote:

> Hi
> We had HMIS system with 6 Org levels (National, Province, District, Sub
> district, Sector,  facilities) running the version 2.20. The approval was
> working fine, users at province level could  approve/ unapprove data  from
> facilities of respective provinces. The constraints in this version was
> that a person couldn't approve for individual reporting unit, it was done
> once for all facilities under a province, but the it was working fine and
> lock data.
> However after upgrading to 2.23,  the approval couldn't lock data  for
> reporting unit, rather it locks data for  upper levels excluding reporting
> facility. ie the data manager can still change data freely.
> checking from the settings, we realized that for every data set the system
> has created and assign workflow with identical dataset name together with
> Province as approval level only.
> Reading from the doc, for the dataset to be approved in same time they
> have to be assigned to the the same  workflow. I did that but while testing
> it this message is displayed " Approval status: Waiting for lower levels
> to approve"  while the workflow assigned to it  has Prov, sub district and
> facilities  as approval levels.
> What we want is to have user at province level to approve  data from
> facilities under his supervision  and has possibilities to unlock data for
> specific dataset in given reporting unit
> Has any one experienced this  situation or someone who can provide a hint
>  on how to set this approval?
> Regards,
> *Adolphe Kamugunga*
> *MIS Technical Advisor*
> Mobile: +250 788 740 578
> Email:kaadol@xxxxxxxxx
> Skype: ka.adolphe
> _______________________________________________
> Mailing list: https://launchpad.net/~dhis2-users
> Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dhis2-users
> More help   : https://help.launchpad.net/ListHelp

Jim Grace
Core developer, DHIS 2
http://www.dhis2.org <https://www.dhis2.org/>

Follow ups