← Back to team overview

dhis2-devs team mailing list archive

Re: [Branch ~dhis2-devs-core/dhis2/trunk] Rev 1207: automatically breaking data entry form into sections using categorycombinations

 

Hi Lars,

Yes I have started looking at it. And I was thinking of writing a mail about
it, but the commit was very late and went to bed :(

What I have done is

   1. made 2 methods in dataElementService
      1. method 1 takes collection of dataElements and returns a sorted
      collection of categoryCombos that the passed dataElements contain. The
      sorting is simple based on the number of optioncombos each categorycombo
      has.Say for example default categorycombos will appear first, then with 2
      optioncombos, with 3 ... it goes on. This will help to have a consistent
      look in the dataentry form
      2. method 2 takes collection of dataElements and returns a mapped
      collection of dataelements. The mapping is Map<CategoryCombo,
      Collection<DataElement>>. My assumption is you can throw whatever
      dataElement in your dataset. And using this method then possible to
      filter/group the dataElements based on their categorycombo
   2. in multidimensional dataentry
      1. get the dataset
      2. get collection dataelements for the selected dataset
      3. use the 2 newly created methods and get the categorycombos
      4. generate table heading for each categorycombo
      5. populate the dataentry form using the table headers generated
      6. under each table list the dataelements that belong to the
      corresponing tableheading/categorycombo
      7. then of course dataentry

My next plan is to apply this for default dataset reports.

The section thing ... I haven't looked into it - am not even sure what to do
there. Because I thought the idea of sectioning was to break a long list of
dataelements into smaller pieces.

Yes it should be possible to generate the sections automatically based on
categorycombos, and while doing that we are not breaking into pieces but
rather grouping based on categorycombos. My worry is while identifying a
collection of dataelements belonging to the same categorycombo and call it a
section, we might endup with a long list of dataelements. If a long list
then we need to think of sectioning a section which is a bit complicated or
else put some kind of assumption - like no more than 10 dataelements in a
section !

Are we using the section functionality by the way?

Thank you
Abyot.


2009/12/11 Lars Helge Øverland <larshelge@xxxxxxxxx>

>
> Hi Abyot, great that you are taking initiative on this. Could you explain a
> bit what you did, is this sorting out some of the short-term needs Ola wrote
> about in that last mail?
>
> Lars
>
>
> On Fri, Dec 11, 2009 at 3:20 AM, <noreply@xxxxxxxxxxxxx> wrote:
>
>> ------------------------------------------------------------
>> revno: 1207
>> committer: Abyot Asalefew Gizaw <abyota@xxxxxxxxx>
>> branch nick: trunk
>> timestamp: Fri 2009-12-11 03:18:27 +0100
>> message:
>>  automatically breaking data entry form into sections using
>> categorycombinations
>> modified:
>>
>>  dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java
>>  dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/DataSetService.java
>>
>>  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java
>>
>>  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/DefaultDataSetService.java
>>
>>  dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/multidimensional/FormAction.java
>>
>>  dhis-2/dhis-web/dhis-web-dataentry/src/main/resources/META-INF/dhis/beans.xml
>>
>>  dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/multidimensional/form.vm
>> The size of the diff (1391 lines) is larger than your specified limit of
>> 1000 lines
>>
>> --
>> lp:dhis2
>> https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk<https://code.launchpad.net/%7Edhis2-devs-core/dhis2/trunk>
>>
>> Your team DHIS 2 developers is subscribed to branch lp:dhis2.
>> To unsubscribe from this branch go to
>> https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription<https://code.launchpad.net/%7Edhis2-devs-core/dhis2/trunk/+edit-subscription>
>> .
>>
>> _______________________________________________
>> 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