← 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 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.16
Build 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.16
> Build 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];
>>                     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];
>>                       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