Developing the "OCL for OpenMRS" Application

Hello community,

The OCL Clint Sprint 14 Planning starts in a few minutes (5pm EAT). If u can, kindly join using this link https://hangouts.google.com/hangouts/_/ytl/yyAktwycvcTbfFsjcGQ-TIRtX9X8RT3oju5rLL9sbdM=?eid=107163098052414183455&hl=en_US

Hello community

We just had our 14th sprint planning. For those that missed the call, here is a link to the call.

Regards!

cc: @darius, @akanter, @dkayiwa, @shine, @collinewait, @samdiano, @tittoh, @sheriff, @abulojoshua1, @brucemakallan, @judeatu, @ayesh

@darius the development team would like more clarity on ( Subscribe to a released implementation dictionary from a fresh OpenMRS installation of Platform + Legacy UI.) the fifth point for MVP in the OCL document (https://docs.google.com/document/d/1R_Fgr5SBl4xFNJgj6yMJNVY63b5H_OUqM55o1GFqFKs/edit#) .

cc @akanter, @dkayiwa

The idea is that you should be able to

  1. create your dictionary in OCL
  2. release a dictionary version
  3. install a blank OpenMRS Platform with the latest release version + the legacy ui module
  4. in the OpenMRS admin screens, subscribe to the OCL dictionary from step one, by URL
  5. do “sync now” (or whatever the action is called) and have the dictionary be downloaded and installed.

Your team should test this workflow out. If you run into bugs these are likely to be in the OCL module for OpenMRS, so I expect that someone else would debug and fix them (@dkayiwa can help with this), but your team should be able to identify and publicize them.

Does this make sense?

Hi Andela team and @akanter

I see a recurring invite on my calendar for Fridays at 7am Seattle time. Is this a confirmed good day/time that also works for Andy?

Hello @darius, We are currently working on this ticket that fixes a bug in the application. However, we have noticed the problem could be coming from the backend. For example, if you test this endpoint in Postman, it returns a response with a dictionary object that contains a count of the active_concepts. If we also test out this other endpoint, it returns an array of that same dictionary’s concepts. The issue is that active_concepts (in this case 7) are not equal to the length or number of concepts returned by the later endpoint (10). I would like to hear your thoughts on this. I also highly think this is a backend issue. We can hack around it though on the frontend and ignore the count returned by active_concepts.

CC: @akanter @dkayiwa @stonecoder @collinewait @samdiano @shine @judeatu @brucemakallan

Yes it does. Thank you

I took a quick peek at the data and I noticed that in the /concepts endpoint there are 3 entries that have

"is_latest_version": false

This line of code suggests that excluding retired concepts might be the difference: https://github.com/OpenConceptLab/oclapi/blob/a4f63397ef06b177d54d52c4b0b944cfa0fe56d2/ocl/collection/models.py#L284

I suggest you just display the active counts. You should definitely not fetch all the concepts and then count them, because there could potentially be thousands. If for some reason the active count is a bit inaccurate, maybe you can change the display to show “about X” concepts", or if the active count is very inaccurate, just get rid of the display.

Hope this helps!

PS- I should add that if this is the problem, it may mean that some of your other displays are in fact showing retired/deleted concepts, or old concept versions…

1 Like

FYI, the active counts of concepts and mappings that are returned as attributes of sources and collections exclude retired resources. Note that a GET/HEAD request to a repository (with or without a search term or other filter criteria) does return the total number of results as a response header.

@shine if you cannot answer me until next Monday, I will undo the change, as it doesn’t seem to be right

I am sorry for the late response. I made use of the indeterminate pagination suggested by Darius a while back to solve the issue. In regards to the issue, we can have a video call so that I can explain properly the issue as the task might be helpful to someone later.

Hello @darius

Basing on this Doodle poll that @akanter and you participated in, the time seems to be convenient for him too.

cc: @dkayiwa, @shine, @collinewait, @samdiano, @sheriff, @stonecoder, @brucemakallan, @judeatu, @ayesh.

@shine,

Video for me is usually so hard I’ve given up.

Can you please instead follow the instructions I asked?

If you prefer to record audio/video from your computer, it’s fine. But I need the whole request and response, otherwise it’s not useful.

Ok, I will do just that

While trying to upload the video I made, I found out that Mp4 is not an acceptable file extension here. So I uploaded the file on my google drive. This is the url https://drive.google.com/open?id=1bwHvdeflfjwixhdT34V1gZ6uvBsdvWON

A get Request, URl : https://api.qa.openconceptlab.org/orgs/CIEL/sources/CIEL/concepts/?limit=10&page=1&&verbose=true

Header Response

Server →nginx/1.10.3 (Ubuntu)

Date →Fri, 25 Jan 2019 12:54:13 GMT

Content-Type →application/json; charset=utf-8

Transfer-Encoding →chunked

Connection →keep-alive

Vary →Accept, Cookie

next →https://api.qa.openconceptlab.org/orgs/CIEL/sources/CIEL/concepts/?limit=10&page=2&verbose=true

ETag →"7b9a7357c0c4d736317ee9ac24ff220a"

num_found →1217

Allow →GET, HEAD, OPTIONS

offset →0

num_returned →10

Hello @darius, @akanter,

This is a reminder of the weekly sync (Fridays 6pm - 7pm EAT). I will share a link to the call 15minutes before the call. kindly attend if you can make it.

cc: @dkayiwa, @shine, @collinewait, @samdiano, @sheriff, @stonecoder, @brucemakallan, @judeatu, @ayesh.

Here is the link to the call (Weekly sync) https://hangouts.google.com/hangouts/_/ytl/KNuWCruVYFollOYy27D2FjdFf26OZXgKQiSg0lIx0JI=?eid=107163098052414183455&hl=en_US.

cc: @darius, @akanter, @dkayiwa, @shine, @collinewait, @samdiano, @sheriff, @stonecoder, @brucemakallan, @judeatu, @ayesh.

Unfortunately, this week in particular I have a conflict with the OpenMRS strategic planning meeting on content. I will try to join as soon as I can.

Could I ask that in future these calls be done on UberConference because I am trying to get on the call and its saying the group is full