← Back to team overview

dhis2-devs team mailing list archive

Re: [Bug 1368191] [NEW] Attributes and Data Entry form not loading in Tracker Capture

 

Hi Busoye,

1. Custom registration form is not yet possible... will come for 2.17
2. Future dates, yes you are correct current year is sort of the limit. We
really couldn't get a sensible boundary there. will make some changes to
give more space.
3. not sure I understand 3, that can only happen if the enrollment has
failed.


---
Thank you,
Abyot.

On Fri, Sep 12, 2014 at 11:36 AM, Adebusoye Anifalaje <busoye@xxxxxxxx>
wrote:

> Hi Abyot,
>
> I have just downloaded the latest 2.16 stable and the enrolment attributes
> are loading when you select register. A few problems
>  though:
>
> 1)  Customised tracked entity form does not load on enrolment page. I get
> the message below from the console when I select Register
>
> ReferenceError: data is not defined
>     at
> http://localhost:8080/dhis-web-tracker-capture/components/enrollment/enrollment-controller.js:176:43
>     at wrappedCallback (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:11046:81
> )
>     at
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:11132:26
>     at Scope.$eval (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:12075:28
> )
>     at Scope.$digest (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:11903:31
> )
>     at Scope.$apply (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:12179:24
> )
>     at done (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:7939:45
> )
>     at completeRequest (
> http://localhost:8080/dhis-web-commons/javascripts/angular/angular.js:8142:7
> )
>
>
> More details here:
>
>     //get enrollment attributes and their values - new attributes because
> of enrollment
>         angular.forEach($scope.attributesForEnrollment,
> function(attribute){
>             if(!angular.isUndefined(attribute.value)){
>                 tei.attributes.push({attribute: attribute.id, value:
> attribute.value});
>             }
>         });
>
>         var enrollment = {trackedEntityInstance: tei.trackedEntityInstance,
>                             program: $scope.selectedProgram.id,
>                             status: 'ACTIVE',
>                             dateOfEnrollment:
> $scope.newEnrollment.dateOfEnrollment,
>                             dateOfIncident:
> $scope.newEnrollment.dateOfIncident ? $scope.newEnrollment.dateOfIncident :
> $scope.newEnrollment.dateOfEnrollment
>                         };
>
>         TEIService.update(tei).then(function(updateResponse){
>
>             if(updateResponse.status === 'SUCCESS'){
>
>                 //registration is successful, continue for enrollment
>
>
> EnrollmentService.enroll(enrollment).then(function(enrollmentResponse){
>                     if(enrollmentResponse.status !== 'SUCCESS'){
>                         //enrollment has failed
>                         var dialogOptions = {
>                                 headerText: 'enrollment_error',
>                             *    bodyText: data.description*
>                             };
>                         DialogService.showDialog({}, dialogOptions);
>                         return;
>                     }
>
> 2) Future date in attribute date data type not possible beyond last month
> of current year. This works on the old Find/Add Instance module
>
> 3) When you add the registration information and click "Save and
> Continue”, the dashboard still comes up with "Not yet enrolled"
>
> Version:2.16Build revision:16420
>
> Hope this give you  bit more detail.
>
> Thanks
>
> Busoye
>
>
> On 12 Sep 2014, at 10:33, Abyot Gizaw <abyota@xxxxxxxxx> wrote:
>
> Hi Busoye,
>
> Yes it is committed properly :)
>
> I have checked the demo as well. I can see First name, Last name and
> Gender in the registration form - it is only these three attributes which
> are assigned to Child Programme.
>
> I think the issue is with your cache. Can you clear and try one more time?
>
>
> ---
> Thank you,
> Abyot.
>
> On Fri, Sep 12, 2014 at 11:07 AM, Adebusoye Anifalaje <busoye@xxxxxxxx>
> wrote:
>
>> Hi Abyot,
>>
>> Thanks for the update.
>>
>> I am checking the demo site but I see that this error still persists. If
>> you choose Ngelehun CHC -> Child Program -> Register, the attributes that
>> you get are not from the Program Attributes rather those defined as
>> "Attributes with no Programs".   The output from the console is below. I
>> can’t see the build revision but the details are and from the CI I see that
>> the fix was restored earlier this morning.
>>
>> Any chance you could see if this was committed properly?
>>
>> Thanks
>>
>> Busoye
>>
>>
>>
>> TypeError: Cannot read property 'id' of undefined
>>     at
>> https://apps.dhis2.org/demo/dhis-web-tracker-capture/scripts/services.js:437:75
>>     at Array.forEach (native)
>>     at Object.forEach (
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:322:11
>> )
>>     at
>> https://apps.dhis2.org/demo/dhis-web-tracker-capture/scripts/services.js:436:25
>>     at wrappedCallback (
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:11046:81
>> )
>>     at
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:11132:26
>>     at Scope.$eval (
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:12075:28
>> )
>>     at Scope.$digest (
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:11903:31
>> )
>>     at Scope.$apply (
>> https://apps.dhis2.org/demo/dhis-web-commons/javascripts/angular/angular.js:12179:24
>> )
>>     at
>> https://apps.dhis2.org/demo/dhis-web-tracker-capture/scripts/services.js:417:36
>>
>>
>>
>> *Demo site*
>>
>> 2.16Build revision:Build date:2014-09-12 08:54
>>
>>
>>
>> On 11 Sep 2014, at 16:14, Abyot Gizaw <abyota@xxxxxxxxx> wrote:
>>
>> Hi Busoye,
>>
>> A fix is now committed - r16418.
>>
>> ---
>> Thank you,
>> Abyot.
>>
>> On Thu, Sep 11, 2014 at 1:59 PM, Adebusoye Anifalaje <busoye@xxxxxxxx>
>> wrote:
>>
>>> Public bug reported:
>>>
>>> Hi Devs,
>>>
>>> I am having issues loading attributes for a defined program. The program
>>> assigned to the org unit shows but when I select Register only the
>>> Report Date comes up. There are no errors in the log but the Console
>>> output is below:
>>>
>>> TypeError: Cannot read property 'id' of undefined
>>>     at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:437:62
>>>     at Array.forEach (native)
>>>     at Object.forEach (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:322:11
>>> )
>>>     at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:436:25
>>>     at wrappedCallback (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11046:81
>>> )
>>>     at
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11132:26
>>>     at Scope.$eval (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:12075:28
>>> )
>>>     at Scope.$digest (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11903:31
>>> )
>>>     at Scope.$apply (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:12179:24
>>> )
>>>     at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:417:36
>>> angular.js:9509(anonymous function) angular.js:9509(anonymous function)
>>> angular.js:6950wrappedCallback angular.js:11049(anonymous function)
>>> angular.js:11132Scope.$eval angular.js:12075Scope.$digest
>>> angular.js:11903Scope.$apply angular.js:12179(anonymous function)
>>> services.js:417forEach angular.js:322(anonymous function) services.js:411k
>>> jquery.min.js:2l.fireWith jquery.min.js:2request.onsuccess
>>> dhis2.storage.idb.js:264
>>>
>>> The problem seems to be here:
>>>
>>> angular.forEach(program.programTrackedEntityAttributes,
>>> function(pAttribute){
>>>                     var att = attributes[pAttribute.attribute.id
>>> <http://pattribute.attribute.id/>];
>>>                     att.mandatory = pAttribute.mandatory;
>>>                     if(pAttribute.displayInList){
>>>                         att.displayInListNoProgram = true;
>>>
>>> I am using Version:
>>> 2.16
>>> Build revision:
>>> 16410
>>>
>>> Many thanks.
>>>
>>> Kind regards,
>>> Busoye
>>>
>>> ** Affects: dhis2
>>>      Importance: Undecided
>>>          Status: New
>>>
>>> --
>>> You received this bug notification because you are a member of DHIS 2
>>> developers, which is subscribed to DHIS.
>>> https://bugs.launchpad.net/bugs/1368191
>>>
>>> Title:
>>>   Attributes and Data Entry form not loading in Tracker Capture
>>>
>>> Status in DHIS 2:
>>>   New
>>>
>>> Bug description:
>>>   Hi Devs,
>>>
>>>   I am having issues loading attributes for a defined program. The
>>>   program assigned to the org unit shows but when I select Register only
>>>   the Report Date comes up. There are no errors in the log but the
>>>   Console output is below:
>>>
>>>   TypeError: Cannot read property 'id' of undefined
>>>       at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:437:62
>>>       at Array.forEach (native)
>>>       at Object.forEach (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:322:11
>>> )
>>>       at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:436:25
>>>       at wrappedCallback (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11046:81
>>> )
>>>       at
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11132:26
>>>       at Scope.$eval (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:12075:28
>>> )
>>>       at Scope.$digest (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:11903:31
>>> )
>>>       at Scope.$apply (
>>> https://dhis.leprosy.org/dhis-web-commons/javascripts/angular/angular.js:12179:24
>>> )
>>>       at
>>> https://dhis.leprosy.org/dhis-web-tracker-capture/scripts/services.js:417:36
>>> angular.js:9509(anonymous function) angular.js:9509(anonymous function)
>>> angular.js:6950wrappedCallback angular.js:11049(anonymous function)
>>> angular.js:11132Scope.$eval angular.js:12075Scope.$digest
>>> angular.js:11903Scope.$apply angular.js:12179(anonymous function)
>>> services.js:417forEach angular.js:322(anonymous function) services.js:411k
>>> jquery.min.js:2l.fireWith jquery.min.js:2request.onsuccess
>>> dhis2.storage.idb.js:264
>>>
>>>   The problem seems to be here:
>>>
>>>   angular.forEach(program.programTrackedEntityAttributes,
>>> function(pAttribute){
>>>                       var att = attributes[pAttribute.attribute.id
>>> <http://pattribute.attribute.id/>];
>>>                       att.mandatory = pAttribute.mandatory;
>>>                       if(pAttribute.displayInList){
>>>                           att.displayInListNoProgram = true;
>>>
>>>   I am using Version:
>>>   2.16
>>>   Build revision:
>>>   16410
>>>
>>>   Many thanks.
>>>
>>>   Kind regards,
>>>   Busoye
>>>
>>> To manage notifications about this bug go to:
>>> https://bugs.launchpad.net/dhis2/+bug/1368191/+subscriptions
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dhis2-devs
>>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dhis2-devs
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>>
>>
>
>

Follow ups

References