← Back to team overview

dhis2-users team mailing list archive

Re: [Dhis2-devs] Request for Assistance

 

Hi Roger,

I think the kind of data values you are talking about here would fit under
what we in DHIS call the OnChange PeriodType (frequency).

A dataset with onChange data such as your site surveys, which sounds similar
to the WHO Service Availability Mapping (SAM) dataset, has "floating"
validity periods for the values rather than fixed routine periods. If a
facility reports that it has 10 maternity beds in 05.01.2010 then you would
get a datavalue with a start date of 05.01.2010 and an enddate of
31.12.9999. Then when something changes, say in 10.12.2010 they get another
2 beds, so totally 12 beds, then you would enter the new value 12 with a
start date of 10.12.2010. What happens then is that you get two values in
the system, one with the value 10 with start date 05.01.2010 and end date
09.12.2010, and then the new value 12 with start date 10.12.2010 and end
date 31.12.9999. So when you run a report for January 2011 or later, the
valid data value would be 12, while the value for used for reports for Nov
2010 would be 10. For Dec it would be an average for the month, weighed on
the number of days each value is valid in that month (since the change took
place in the middle of the month). That is the logic of data values
registered for data elements with the OnChange PeriodType.

Unfortunately I don't think this is fully implemented yet, at least I am not
sure that you can create a dataset and enter data for these types of
periods. It has been in the pipeline for some time, but been delayed due to
other more pressing features. The business logic of storing and processing
such values are in place though, so it is "only" a matter of adding this
functionality to the data entry process I think. Lars or others, please
correct me if I am wrong here, don't really have time to check this right
now.

Roger, would this feature cater for your site survey data needs? If not,
what would be needed do you think?


Ola
---------

On 30 April 2010 14:52, Friedman, Roger (CDC/OID/NCHHSTP) (CTR) <
rdf4@xxxxxxx> wrote:

>  Ola --
>
>             Sorry not to get back to you sooner.  Thanks for the info.
>
>             Re 2, site surveys are conducted on a rolling 5-year cycle with
> new data added or revised when they open, when they are renovated or when
> they suffer a catastrophe.  So we are only interested in the most recent
> data.  Another use case of this would be using the most recent available
> data as a proxy for missing current data.
>
> Thanks, Roger
>
>
>
> *From:* Ola Hodne Titlestad [mailto:olatitle@xxxxxxxxx]
> *Sent:* Thursday, April 29, 2010 10:45 AM
> *To:* Friedman, Roger (CDC/OID/NCHHSTP) (CTR)
> *Cc:* dhis2-users@xxxxxxxxxxxxxxxxxxx; DHIS 2 developers; Johan Ivar Sæbø
> *Subject:* Re: [Dhis2-devs] Request for Assistance
>
>
>
> Hi Roger,
>
> Lot's of good questions and reminders that our documentation on reports is
> not completed.
>
> I don't have a lot of time right now, but will try to give you some
> pointers anyway. I'll try to find more time tomorrow to continue, and
> hopefully others like Edem and Jason could join in.
>
> See my text inline..
>
> On 29 April 2010 14:07, Friedman, Roger (CDC/OID/NCHHSTP) (CTR) <
> rdf4@xxxxxxx> wrote:
>
> Listers --
>
>             I am trying to build some reports, and this part of the user
> manual has no text.  Here are some of the questions I have:
>
>             1.         What triggers a roll-up of data through the org
> hierarchy?
>
> Aggregation of data takes place either as a stand-alone data mart process
> which populates two database tables (aggregateddatavalue and
> aggregatedindicatorvalue), or as a built in service to some of the other
> tools (report tables and charts, and perhaps more...).
>
> You can read more on how to set up your datamart exports here:
>
> http://dhis-developers-list.1563109.n2.nabble.com/Aggregation-in-the-datamart-and-orgunit-level-specification-tt4627202.html#a4627378
>
> but that part definitely lacks in the manual. A more conceptual
> introduction to how DHIS aggregates data up the hierarchy and across time
> can be found in section 9.1 of the manual.
>
> Datamart is mainly needed for external reporting tools that are not
> integrated into the DHIS2, like Excel pivot tables. The mapping component
> also still requires manual datamart exports I think (although that needs to
> change).
>
> Report tables (Service->Reports->report Table) are a bit like the datamart,
> but more specified reporting data sources with names written out( not only
> IDs), with cross tab options (periods, data elements, indicators, or
> categories) on columns, and they can be set up with relative periods
> (reporting month) and orgunit parameters to be easily reusable with e.g.
> the same monthly report template design from BIRT every month.
>
> Report tables can be linked to report design templates in the integrated
> BIRT or Jasper reports module (Service->Reports->Standard Report).
>
> I would guess that either BIRT reports or Jasper (designed in iReport)
> combined with report tables, and sometimes to your custom sql datasets would
> meet many of your reporting needs.
>
>
>              2.         How can I get a "most recent" period for reporting
> site survey data?  (I find much about relative periods but no way to
> select/specify)
>
>  I am not sure I understand your question, could you clarify a bit more or
> use an example?
> When you run a predefined report table that has reporting month as a
> parameter then the report table gets populated with the month selected by
> the user, would that help? A BIRT report design linked to a report table
> would then get the same parameter popup before generating the report, if set
> up as a standard report in DHIS with reference to the design template and
> the report table(s) needed.
>
>
>
>              3.         How can I partially roll up disaggregations (e.g.
> if numerator is disaggregated sex-age and denominator is only disaggregated
> sex; or a data element is disaggregated sex-age and I want to display it by
> year by sex)?
>
>  The report table supports categories crosstabbed on columns and include
> subtotals and totals for those categories. Have a look at the report table
> type called Data Element Dimensions Table. When defining indicators you must
> add together the various categoryoptioncombos to form your partial roll-ups,
> this right now is a bit tedious if you have lots of options combined, and
> for 2.0.5 there will be support for picking subtotals and totals for data
> elements and categories directly when defining indicator formulas.
>
>
>
>              4.         How can I get disaggregations in a "banked" way
> (e.g. like default input format) for reports?
>
>  The default input format (data collection form) can be printed with raw
> or aggregated data using the dataset report functionality. You could also
> use the report tables for data element dimensions (categories).
>
>
>
>              5.         How can I get disaggregations x orgunitgroupset?
>
>  Right now that is only possible in external tools and using your custom
> sql, but will be supported in report tables from 2.0.5. At least to have
> report tables aggregated by orgunit groups within one group set, e.g by
> facility type in stead of the individual facilities themselves.
>
>
>              6.         Can I create org groups/data elements based on
> indicators (e.g. high incidence/low incidence districts)?
>
>  Sounds like a great idea, but not supported. We should write up a
> blueprint for this.
> For now you could set up Excel pivot tables that would give you this kind
> of data analysis view to the data.
>
>
>
>              7.         How can I get data on a period per column basis?
> How can I get both period per column and cumulative or year-to-date ?  How
> can I get period per column with corresponding period of previous years?
>
>  Report tables with the period dimension ticked as one of the cross tab
> dimensions. Under relative periods you could select both reporting month and
> this_month_last_year, and if periods are crosstabbed and you select
> reporting month as a parameter then you would get these two columns in your
> report table, and combined with a few selected indicators on columns if you
> tick indicators as crosstab, or simply list indicators on the rows of one
> indicator column if not set as cross tab.
>
>              8.         If I have to build SQL for some of these, can I
> store this SQL for later reuse?  Can I trigger the SQL to run during
> roll-ups?
>
>  Jason has been working on something like this I think. I know that there
> are plans for 2.0.5 to build in a few so called pivot views (sql queries)
> into the system, but don't know the details, and I'm not sure they will be
> completely custom for the 2.0.5 release.
>
>
>              9.         What are the mechanics of locking for roll-up and
> report generation?  Do I have to worry about people running reports during
> monthly peak data entry load?
>
>  I guess you could block the datamart module for some of the users and
> make sure a system admin generates the necessary datamarts for all users.
> For reports it is possible to run the reports from existing data source, so
> if one users has already generated a report for March 2010 then the report
> table is already populated and can be reused by other users later. We could
> think of ways to block the option to run the report with new data source
> (which triggers the aggregation process), but that sounds complicated. For
> now what you could do is to train users to use the right button for running
> reports.
>
>
>
>  I was wondering if somebody would have some time for a phone call or some
> type of internet work sharing to help me with some of this stuff.
>
>  Not today, but maybe tomorrow. I'm a bit rushed now preparing for my
> Sierra Leone trip on Sunday. I will be there all next week.
>
> WE really need to get our acts together and document all of this... sorry.
>
>
> Ola
> ---------
>
>
>  Thanks, Roger
>
>
>
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
> More help   : https://help.launchpad.net/ListHelp
>
>
>

Follow ups

References