00:19:13
|
*** finbrein has quit IRC
|
00:19:22
|
*** finbrein has joined #openmrs
|
00:20:53
|
*** finbrein has joined #openmrs
|
00:27:25
|
*** bryq has joined #openmrs
|
00:27:25
|
*** ChanServ sets mode: +v bryq
|
00:45:43
|
*** maurya has joined #openmrs
|
00:53:48
|
*** finbrein has quit IRC
|
01:02:41
|
*** bryq has quit IRC
|
01:05:24
|
*** downey has joined #openmrs
|
01:05:24
|
*** ChanServ sets mode: +o downey
|
01:05:24
|
*** OpenMRSBot sets mode: +o downey
|
01:15:50
|
*** downey has quit IRC
|
01:16:15
|
*** mathiaslin has joined #openmrs
|
01:34:40
|
*** harshadura has quit IRC
|
01:34:53
|
*** harshadura has joined #openmrs
|
01:56:36
|
<maurya> djazayeri: hi
|
02:19:11
|
*** maurya has quit IRC
|
02:27:35
|
<harshadura> mccallumg, u thr
|
02:47:35
|
<mccallumg> I'm here briefly, harshadura
|
02:49:00
|
<harshadura> maccallumg, I am hving NPE in my test case, can u review whats wrong with that
|
02:50:41
|
<mccallumg> Hi harshadura. I can't do it tonight. I'm just about to go out. catch me tomorrow morning and I'll have a look.
|
02:51:06
|
<harshadura> its okay mccallumg, thanks
|
03:02:14
|
*** finbrein has joined #openmrs
|
03:09:05
|
*** finbrein has quit IRC
|
03:09:20
|
*** finbrein has joined #openmrs
|
03:30:08
|
*** suranga has joined #openmrs
|
03:30:08
|
*** ChanServ sets mode: +v suranga
|
03:34:03
|
*** lh has quit IRC
|
03:51:52
|
*** mccallumg has quit IRC
|
03:56:58
|
*** mathiaslin has quit IRC
|
04:01:44
|
*** bwolfe has quit IRC
|
04:07:56
|
*** kavuri has joined #openmrs
|
04:20:44
|
*** gauravpaliwal has joined #openmrs
|
04:20:44
|
*** ChanServ sets mode: +v gauravpaliwal
|
04:29:33
|
*** jmiranda has quit IRC
|
04:30:46
|
*** pulasthi7 has joined #openmrs
|
04:33:57
|
*** suranga has quit IRC
|
05:18:33
|
*** gauravpaliwal has left #openmrs
|
05:51:05
|
*** pulasthi7 has quit IRC
|
06:07:37
|
*** applecool has joined #openmrs
|
06:20:46
|
*** maurya has joined #openmrs
|
06:20:51
|
*** applecool has quit IRC
|
06:20:56
|
<maurya> hi djazayeri
|
06:21:26
|
<maurya> wanted to speak to you about the dynamic list html widget
|
06:25:12
|
*** bryq has joined #openmrs
|
06:25:12
|
*** ChanServ sets mode: +v bryq
|
06:25:51
|
*** maurya has quit IRC
|
06:37:09
|
*** goutham has joined #openmrs
|
06:48:13
|
*** suranga has joined #openmrs
|
06:48:13
|
*** ChanServ sets mode: +v suranga
|
06:54:38
|
*** dkayiwa has joined #openmrs
|
07:16:32
|
*** suranga has quit IRC
|
07:42:34
|
*** maurya has joined #openmrs
|
07:42:40
|
<maurya> hi djazayeri
|
07:47:23
|
*** Fabian__ has joined #openmrs
|
07:48:27
|
<Fabian__> Can somebody please tell me how to save details of a jsp form to openmrs? Any references?
|
07:52:56
|
*** Fabian__ has quit IRC
|
07:53:13
|
*** Fabian__ has joined #openmrs
|
07:55:19
|
<Fabian__> How do I save jsp form details to openmrs database? Any references?
|
08:00:21
|
<dkayiwa> Fabian__: you can look at other existing openmrs jsp pages and copy from there
|
08:01:41
|
<Fabian__> dkayiwa: Do you have a module in mind that I can use as reference?
|
08:01:49
|
*** robbyoconnor has joined #openmrs
|
08:01:49
|
*** ChanServ sets mode: +v robbyoconnor
|
08:02:52
|
<dkayiwa> Fabian__: have you looked at the basic module?
|
08:03:56
|
<Fabian__> dkayiwa: I have looked at it but it does not have code that I can use to refer for saving purposes.
|
08:05:25
|
<dkayiwa> Fabian__: have you already written the spring controller?
|
08:06:46
|
<Fabian__> Yes, I have written the files in the model, service, impl and DAO .
|
08:07:44
|
<dkayiwa> Fabian__: did you mention the controller too?
|
08:09:17
|
<Fabian__> Yes. I have the controller too. The controller populates the jsp's content, which also has a form whose contents I want to save.
|
08:09:40
|
<dkayiwa> finbrein: do the jsp will use the controller to save your data
|
08:11:33
|
<Fabian__> dkayiwa: What code do I put in the controller to facilitate this?
|
08:12:59
|
<dkayiwa> Fabian__: an example to look at is: org.openmrs.web.controller.visit.VisitFormController
|
08:13:17
|
<dkayiwa> Fabian__: look at its saveVisit
|
08:13:19
|
<dkayiwa> method
|
08:14:04
|
<Fabian__> dkayiwa: Is that part of openmrs core code?
|
08:14:11
|
<dkayiwa> Fabian__: yes
|
08:16:16
|
*** maurya has quit IRC
|
08:16:29
|
<Fabian__> dkayiwa:Thanks. Let me give it a try
|
08:16:37
|
<dkayiwa> 8)
|
08:16:58
|
*** rafa has joined #openmrs
|
08:16:58
|
*** ChanServ sets mode: +v rafa
|
08:27:06
|
*** Fabian__ has quit IRC
|
08:34:12
|
*** finbrein has quit IRC
|
08:35:15
|
*** maurya has joined #openmrs
|
08:54:41
|
*** snoppy has joined #openmrs
|
09:00:10
|
*** bryq has quit IRC
|
09:11:43
|
*** dkayiwa has quit IRC
|
09:11:43
|
*** dkayiwa_ has joined #openmrs
|
09:11:44
|
*** dkayiwa_ is now known as dkayiwa
|
09:21:33
|
<harshadura> hi dkayiwa
|
09:21:46
|
<dkayiwa> hey
|
09:23:11
|
<harshadura> dkayiwa pls can u review one of my patches. I tried lot, but still gives the NPE problem
|
09:24:16
|
<dkayiwa> harshadura: which patch is that?
|
09:24:22
|
<harshadura> I think something very small is missing, but I was unable to find it :(
|
09:24:55
|
<harshadura> dkayiwa, heres the ticket : https://tickets.openmrs.org/browse/TRUNK-2751
|
09:25:27
|
<dkayiwa> harshadura: and where is the patch?
|
09:25:45
|
<harshadura> wait dkayiwa, ill giv u nw
|
09:35:44
|
<harshadura> dkayiwa, this patch consist with a new java file which include new test case, shall i send u the patch and the new file separately
|
09:36:43
|
<dkayiwa> harshadura: let all be in one patch that i can apply and test
|
09:43:30
|
<harshadura> dkayiwa, here it is > http://pastebin.com/77XC8jEP
|
09:47:06
|
<dkayiwa> harshadura: can you break down that line into parts in order to find out what is null?
|
09:47:32
|
<harshadura> okay dkayiwa
|
09:50:49
|
<harshadura> dkayiwa : Context.getPersonService().getPerson(10) is null
|
09:51:35
|
<dkayiwa> harshadura: so that means no person with that id was saved
|
09:52:38
|
<harshadura> yes dkayiwa, but I hv done it in the correct way no ? :(
|
09:52:47
|
*** finbrein has joined #openmrs
|
09:52:51
|
<dkayiwa> harshadura: remember that personId is assigned by the database
|
09:53:01
|
<dkayiwa> harshadura: so you cannot assign it from the client
|
09:53:34
|
<dkayiwa> harshadura: so you assuming the the created personId wiil be 10 is NOT correct
|
09:54:23
|
<harshadura> Got it dkayiwa, So is thr a way to find out whats the ID it has been saved to the DB?
|
09:55:55
|
<dkayiwa> harshadura: will the controller reject invalid birth dates?
|
09:56:16
|
<harshadura> yeah it does
|
09:56:55
|
<dkayiwa> harshadura: so how about asserting that there are no binding errors?
|
09:57:22
|
<dkayiwa> harshadura: or simply asserting that the person count has increased by 1
|
09:58:59
|
<harshadura> dkayiwa, I hv tried the binding errors approach too. but it gives a NPE
|
09:59:30
|
<harshadura> BeanPropertyBindingResult bindingResult = (BeanPropertyBindingResult) modelAndView.getModel().get(
|
09:59:30
|
<harshadura> "org.springframework.validation.BindingResult.people");
|
09:59:30
|
<harshadura> Assert.assertTrue(bindingResult.hasFieldErrors());
|
09:59:48
|
<harshadura> I did like this dkayiwa, sorry for flooding the IRC
|
10:00:06
|
<dkayiwa> harshadura: and which was the NULL variable?
|
10:01:47
|
<harshadura> dkayiwa, bindingResult is null
|
10:04:46
|
<dkayiwa> harshadura: can you pastebin the unit test class with the error binding alternative?
|
10:05:00
|
<harshadura> okay dkayiwa
|
10:06:43
|
<harshadura> dkayiwa : http://pastebin.com/TsaXWVsk
|
10:12:24
|
<dkayiwa> harshadura: you can use the alternative where the total number of people increases by one
|
10:13:13
|
<harshadura> okay dkayiwa, pls finally can u point me to a code sample written like that.
|
10:17:15
|
<harshadura> dkayiwa, can u provide me jz some keyword for that :)
|
10:23:29
|
<dkayiwa> harshadura: something like
|
10:23:32
|
<dkayiwa> harshadura: int previousPersonCount = Context.getPersonService().getPeople("Gayan", false).size();
|
10:23:55
|
<dkayiwa> harshadura: and then after calling the controller:
|
10:23:57
|
<dkayiwa> harshadura: Assert.assertEquals(previousPersonCount + 1, Context.getPersonService().getPeople("Gayan", false).size());
|
10:24:30
|
<harshadura> thanks lot dkayiwa, really helpful info
|
10:49:59
|
*** suranga has joined #openmrs
|
10:49:59
|
*** ChanServ sets mode: +v suranga
|
10:52:32
|
<suranga> hi rafa
|
10:52:39
|
<rafa> hi suranga
|
10:52:52
|
<suranga> mm.. i was trying out posting Hl7 messages... mm...
|
10:53:04
|
<suranga> seem to run into problems
|
10:53:19
|
<suranga> I added the Hl7 source AMRS.ELD
|
10:53:43
|
<suranga> i tried using both curl and the TEST page... uum... but seem to run into errors
|
10:53:56
|
<rafa> can you pastebin them?
|
10:54:13
|
<suranga> sure, will do...
|
10:56:59
|
<suranga> rafa, http://pastebin.com/k6uS5Hk2 :-(
|
10:57:42
|
<rafa> suranga: do you have access to full server logs?
|
10:58:08
|
<suranga> rafa, mm.. where can I get them frm ? the command line is not showing anything, im afraid
|
10:58:32
|
<rafa> suranga: how do you start your server?
|
10:59:08
|
<suranga> mm.. rafa I do the usual mvn jetty:run
|
10:59:29
|
<suranga> on the webapp
|
10:59:45
|
<rafa> suranga: hmm and no exception in the log...?
|
11:00:28
|
<suranga> rafa, just this :
|
11:00:29
|
<suranga> MSH|^~\\&|FORMENTRY|AMRS.ELD|HL7LISTENER|AMRS.ELD|20110805104142||ORU^R01|REl7wt78q9Pzlqe9ecJB|P|2.5|1||||||||3^AMRS.ELD.FORMID\rPID|||3^^^^||Patient^John^D||\rPV1||O|1||||1|||||||||||||||||||||||||||||||||||||20110805|||||||V\rORC|RE||||||||20110805104141|1^Super
|
11:00:30
|
<suranga> User\rOBR|1|||1238^MEDICAL RECORD
|
11:00:30
|
<suranga> OBSERVATIONS^99DCT\rOBX|1|NM|5089^WEIGHT
|
11:00:30
|
<suranga> (KG)^99DCT||67.2|||||||||20110805
|
11:00:35
|
<suranga> or sorry, i mean, just
|
11:00:50
|
<suranga> INFO - LoggingAdvice.invoke(117) |2012-04-13 16:13:31,508| In method HL7Service.saveHL7Source. Arguments: HL7Source=org.openmrs.hl7.HL7Source[8257d693
|
11:00:51
|
<suranga> -ea40-40fc-a7b4-b5efe20b09c1],
|
11:00:51
|
<suranga> INFO - LoggingAdvice.invoke(142) |2012-04-13 16:13:31,523| Exiting method saveHL7Source
|
11:01:10
|
<suranga> I wil try via curl and see ?
|
11:01:40
|
<rafa> suranga: hmmm that means the message was saved...
|
11:02:37
|
<rafa> suranga: did it end up in the queue?
|
11:03:17
|
<suranga> rafa, mm.. not really
|
11:03:24
|
<kavuri> Question: does openmrs have the concept of group of hospitals? Or is it expected that one instance is just for one hospital?
|
11:03:33
|
<suranga> I retried, the size of the table remans the same..
|
11:03:46
|
<kavuri> wyclif: ^^ ?
|
11:05:54
|
<rafa> suranga: ahh ok it was hl7source not hl7InQueue
|
11:06:21
|
<suranga> rafa I also tried curl, that gives a better error- let me pastie ;-)
|
11:10:15
|
<suranga> rafa, a much better error using curl :- http://pastebin.com/08VPML6p
|
11:11:54
|
<rafa> suranga: which version of OpenMRS are you running?
|
11:12:22
|
<suranga> rafa almost the head, I belive... :-)
|
11:12:34
|
<suranga> maybe 3-4 days behind the head
|
11:13:23
|
<rafa> suranga: okay, let met test
|
11:13:37
|
<suranga> rafa :-)
|
11:13:53
|
<suranga> rafa, im also looking at my curl commands now ..
|
11:17:01
|
<suranga> rafa, I think there was also an error in me using "Content-Type: application/json". I switched to text/xml
|
11:17:14
|
<suranga> rafa, mm.. which seems to give a prettier exception :p
|
11:18:32
|
<rafa> suranga: that is?
|
11:19:46
|
<suranga> rafa, http://pastebin.com/vkH0r4St :-(
|
11:20:17
|
*** maro has joined #openmrs
|
11:22:22
|
<rafa> suranga: can you try with text/plain?
|
11:23:33
|
*** finbrein has quit IRC
|
11:23:39
|
<suranga> rafa mm... "message":"Content type 'text/plain' not supported"
|
11:23:58
|
<suranga> were u able to recreate this issue ? :-(
|
11:24:18
|
<rafa> suranga: yes, I see the same problem
|
11:24:26
|
<rafa> suranga: not sure what is the cause yet
|
11:24:59
|
<suranga> rafa, when using curl, do u include the post in the body of the command itself ?
|
11:25:15
|
<suranga> or do u use a external file like me ?
|
11:25:32
|
<suranga> rafa, but the funy thig is, it works with json
|
11:25:47
|
<suranga> if i give a link to JSON, things are just fine
|
11:27:20
|
<suranga> rafa, curl -i -u admin:Password1 -X POST -H "Content-Type: application/json" --data @test.json http://localhost:8080/openmrs/ws/rest/v1/hl7 works
|
11:27:38
|
<suranga> if the test.json contains : {"source":"LOCAL","sourceKey":"test","data":"MSH|^~\\&|FORMENTRY|AMRS|HL7LISTENER|AMRS|20060809121931||ORU^R01|formentry-20060809121931|P|2.5|1||||||||2^AMRS-ELDORET^http://schema.openmrs.org/2006/FormEntry/formId^URI\rPID|||123^^^^||jeff^marc^price||20011114|M|||20371^02^2400^724||||||724^Y||||||02|||11|20371|724^ESPA?A^N||N\rPV1||O|1^Unknown||||2^Ima Doc (2-6)|||||||||||||||||||||||||||||||||||||20060807|||||||V\rORC|RE|||||
|
11:27:39
|
<suranga> |||20060807161605|1^Super User\rOBR|1|||1238^MEDICAL RECORD OBSERVATIONS^99DCT\rOBX|1|NM|5089^WEIGHT (KG)^99DCT||70|||||||||20060807"}
|
11:28:11
|
*** maro has quit IRC
|
11:28:17
|
<rafa> it should also work for { "hl7" : "MSH|^~\\&|FORMENTRY|AMRS|HL7LISTENER|AMRS|20060809121931||ORU^R01|formentry-20060809121931|P|2.5|1||||||||2^AMRS-ELDORET^http://schema.openmrs.org/2006/FormEntry/formId^URI\rPID|||123^^^^||jeff^marc^price||20011114|M|||20371^02^2400^724||||||724^Y||||||02|||11|20371|724^ESPA?A^N||N\rPV1||O|1^Unknown||||2^Ima Doc (2-6)|||||||||||||||||||||||||||||||||||||20060807|||||||V\rORC|RE|||||
|
11:28:17
|
<rafa> ~-+96772704+-~8[13:26] suranga: |||20060807161605|1^Super User\rOBR|1|||1238^MEDICAL RECORD OBSERVATIONS^99DCT\rOBX|1|NM|5089^WEIGHT (KG)^99DCT||70|||||||||20060807"}
|
11:28:23
|
*** finbrein has joined #openmrs
|
11:28:50
|
<rafa> but we want it to work for plain text
|
11:32:47
|
<suranga> rafa, /me is going to download the REST module source code from SVN :P
|
11:33:17
|
*** kavuri has quit IRC
|
11:38:19
|
<rafa> suranga: actually what version of the module are you using?
|
11:38:47
|
<suranga> rafa, mm... the latest from the module repo...
|
11:38:53
|
<rafa> suranga: I've just figured that I've got some old version from the repo
|
11:38:54
|
<rafa> 0.8.21639
|
11:39:29
|
<suranga> rafa, :-) this makes me a happy man, because this means u have already solved the bug :-)
|
11:39:54
|
<rafa> suranga: haha
|
11:41:50
|
<suranga> rafa, u r right, I have webservices.rest-0.8.21639.omod
|
11:42:00
|
<rafa> suranga: I don't know why we've got so ancient version in the module repo :/
|
11:42:22
|
*** harshadura has quit IRC
|
11:42:31
|
<suranga> rafa, mm.. so I assume you have not erased the more recent code by mistake ? :P
|
11:43:17
|
<suranga> rafa, have u commited these changes to Svn ? :-)
|
11:43:36
|
<rafa> suranga: yes, all is in svn
|
11:59:14
|
<suranga> rafa,mm... hi
|
11:59:29
|
<rafa> suranga: hi
|
11:59:34
|
<suranga> rafa, um... i seem to be getting errors from the svn code as well....
|
11:59:43
|
<suranga> rafa, have u tried it out ?
|
11:59:54
|
<rafa> yes, I have
|
11:59:56
|
<rafa> it worked
|
12:03:58
|
<suranga> rafa, mm... let me try again...
|
12:06:28
|
*** bwolfe has joined #openmrs
|
12:06:28
|
*** ChanServ sets mode: +o bwolfe
|
12:10:28
|
<suranga> mm.. rafa .. I seem to be getting a {"error":{"message":"Unable to convert object into response content","code":"org.openmrs.module.webservices.rest.web.v1_0.controller.HL7MessageControl
|
12:10:28
|
<suranga> ler:75","detail":"java.lang.NullPointerException\r\n\tat org.openmrs.module.webservices.rest.web.v1_0.controller.HL
|
12:10:36
|
<suranga> when trying for json objects
|
12:11:21
|
*** james_regen has joined #openmrs
|
12:11:21
|
*** ChanServ sets mode: +v james_regen
|
12:11:40
|
<rafa> how does your curl look like?
|
12:11:46
|
*** wyclif has quit IRC
|
12:14:48
|
<suranga> rafa, give me 5 minutues, i may be able to hack this :-)
|
12:17:12
|
<bwolfe> suranga, one of the subobjects might not be convertable. you might need to add a Converter class for it
|
12:17:50
|
<suranga> bwolfe, I am getting ConversionException: The HL7 message is too short or has a wrong format: \r\n\tat o
|
12:18:04
|
<suranga> maybe my Hl7 message is wrong, d'you think ?
|
12:18:29
|
<rafa> suranga: I used the very same message :)
|
12:18:30
|
<bwolfe> strange
|
12:18:41
|
<bwolfe> what is throwing that ?
|
12:19:10
|
<rafa> bwolfe: HL7MessageController
|
12:19:21
|
<suranga> bwolfe, I have this Hl7 message in the POST body, but maybe I have formatted it wrong
|
12:19:35
|
<suranga> rafa, do u use \r\n breaks ? :-)
|
12:20:25
|
<rafa> suranga: it shouldn't matter
|
12:20:45
|
<rafa> suranga: did you try with openmrs/module/webservices/rest/test.htm?
|
12:20:48
|
<bwolfe> dkayiwa, rafa, I like your dueling responses on the mailing list. :-)
|
12:21:24
|
<dkayiwa> bwolfe: d:)
|
12:21:26
|
<rafa> bwolfe: haha same thinking :D
|
12:21:36
|
<rafa> our mailing list is too lazy :P
|
12:21:55
|
<dkayiwa> rafa: i guessed so :)
|
12:22:47
|
<suranga> rafa, mm.. the TEST page continues to give me errors... so I had kinds given up :p
|
12:23:26
|
<suranga> m.. does anyone see anything wrong in this ?
|
12:23:28
|
<suranga> MSH|^~\\&|FORMENTRY|AMRS|HL7LISTENER|AMRS|20060809121931||ORU^R01|formentry-20060809121931|P|2.5|1||||||||2^AMRS-ELDORET^http://schema.openmrs.org/2006/FormEntry/formId^URI\rPID|||123^^^^||jeff^marc^price||20011114|M|||20371^02^2400^724||||||724^Y||||||02|||11|20371|724^ESPA?A^N||N\rPV1||O|1^Unknown||||2^Ima Doc (2-6)|||||||||||||||||||||||||||||||||||||20060807|||||||V\rORC|RE||||||||20060807161605|1^Super User\rOBR|1|||1238^MEDICAL RECORD OBSERVATIONS^
|
12:23:28
|
<suranga> 99DCT\rOBX|1|NM|5089^WEIGHT (KG)^99DCT||70|||||||||20060807
|
12:26:30
|
<rafa> suranga: now you're using AMRS source
|
12:26:46
|
<suranga> rafa, oooh :P
|
12:26:47
|
<rafa> suranga: previously AMRS.ELD
|
12:28:40
|
<suranga> rafa, it works now !
|
12:28:58
|
<suranga> rafa, thanks a lot, that was a major help !
|
12:29:48
|
<rafa> suranga: np
|
12:39:57
|
*** nribeka has joined #openmrs
|
12:39:57
|
*** ChanServ sets mode: +v nribeka
|
12:40:46
|
<suranga> nribeka, why ur country always have earthquakes ? when ur ppl have earthquakes, we get tsunami warnings :-)
|
12:44:30
|
<nribeka> suranga boy :D
|
12:45:07
|
<nribeka> i have to blame mother earth for that one. nothing we can do :P
|
12:46:00
|
<suranga> nribeka, :D
|
12:46:11
|
<suranga> everyone, i think u will have an easier time on IRC today.
|
12:46:27
|
<suranga> today is Sinhaleese new year, so all sri lankans off celebrating :P
|
12:46:41
|
*** maurya has joined #openmrs
|
12:46:45
|
<suranga> (hence noone to ask questions on IRC - other than me :P)
|
12:47:03
|
*** Echidna has quit IRC
|
12:48:39
|
<nribeka> have fun suranga
|
12:49:24
|
*** maurya has quit IRC
|
12:49:52
|
*** mathiaslin has joined #openmrs
|
12:50:06
|
<suranga> ah, im not really celebrating nribeka ... :P
|
12:52:49
|
*** wyclif has joined #openmrs
|
12:53:47
|
*** Echidna has joined #openmrs
|
12:53:47
|
*** ChanServ sets mode: +v Echidna
|
12:54:05
|
*** wyclif has joined #openmrs
|
13:00:24
|
*** jmiranda has joined #openmrs
|
13:04:36
|
*** goutham has quit IRC
|
13:10:14
|
*** reader has joined #openmrs
|
13:10:23
|
*** harshadura has joined #openmrs
|
13:11:46
|
*** reader has quit IRC
|
13:13:41
|
*** maro has joined #openmrs
|
13:13:50
|
*** mailerd has joined #openmrs
|
13:15:43
|
*** maro has quit IRC
|
13:16:19
|
*** applecool has joined #openmrs
|
13:16:39
|
*** reader has joined #openmrs
|
13:17:09
|
*** downey has joined #openmrs
|
13:17:09
|
*** ChanServ sets mode: +o downey
|
13:17:09
|
*** OpenMRSBot sets mode: +o downey
|
13:17:14
|
<reader> Hi all
|
13:17:56
|
*** mailerd has quit IRC
|
13:19:14
|
<bwolfe> hi reader
|
13:20:04
|
<reader> <@bwolfe> hw has ur day been?
|
13:20:18
|
<bwolfe> fine so far. only a few hours into it. :-)
|
13:20:50
|
<reader> are u a newbie or pro
|
13:21:28
|
<reader> <@bwolfe> av just joined here. so hw is it
|
13:22:31
|
*** applecool has quit IRC
|
13:22:44
|
<bwolfe> I am more towards the pro side
|
13:23:21
|
<reader> <@bwolfe> do u av any guide for me?
|
13:23:48
|
*** maurya has joined #openmrs
|
13:24:21
|
*** maurya has quit IRC
|
13:24:35
|
<bwolfe> reader, depends what you want to do. :-)
|
13:25:31
|
*** applecool has joined #openmrs
|
13:26:15
|
<applecool> hi rafa
|
13:26:47
|
<applecool> i have updated the proposal with the timeline
|
13:27:00
|
<applecool> did you get a chance to look at it
|
13:29:36
|
*** reader has quit IRC
|
13:29:56
|
*** sgithens has joined #openmrs
|
13:30:52
|
*** maurya has joined #openmrs
|
13:30:59
|
<maurya> hi sgithens
|
13:32:28
|
<maurya> u there sgithens
|
13:32:35
|
<sgithens> maurya: Hello!
|
13:32:54
|
<maurya> did you get a chance to go through the proposal
|
13:32:58
|
<sgithens> Just finished looking over the updates.
|
13:33:18
|
<maurya> ok
|
13:33:18
|
*** reader has joined #openmrs
|
13:33:20
|
<maurya> the submission is some what confusing
|
13:33:25
|
<downey> Hi reader and welcome to the #openmrs IRC channel.
|
13:33:48
|
<reader> bwolfe: I would like to contribute to OpenMRS
|
13:34:14
|
<applecool> rafa: u there
|
13:34:16
|
<reader> downey: thx
|
13:34:21
|
<bwolfe> reader, cool! as a programmer?
|
13:34:37
|
<reader> yes, but a beginner
|
13:36:30
|
<sgithens> Looking good. That's fine, we can work out those impl details. Can you maybe add some details under the testing section and documenation section?
|
13:36:36
|
<sgithens> maurya ^^
|
13:37:08
|
<maurya> sure like writing the junit test cases
|
13:37:30
|
<maurya> and documentation as too how to use the tag
|
13:37:52
|
<maurya> sgithens: i was even thinking if there are two concepts
|
13:37:58
|
<maurya> i mean a complex kind of condition
|
13:38:07
|
<maurya> like mentioned in HTML-50
|
13:38:23
|
<sgithens> maurya: Yeah, just what you would expect to be included in the final documenation at the end of the project
|
13:38:38
|
<maurya> in a template one formedication and the other for dosage , both should occur as a group
|
13:38:39
|
<sgithens> whether it's code samples, or a tutorial of using the tags
|
13:38:40
|
<sgithens> etc
|
13:39:00
|
<maurya> should i include that in timeline
|
13:39:21
|
<sgithens> maurya: interesting
|
13:39:42
|
<sgithens> yeah, put this stuff in
|
13:39:51
|
<maurya> sure
|
13:39:55
|
<maurya> would do that now
|
13:40:09
|
<sgithens> awesome!
|
13:41:01
|
<bwolfe> reader: have you seen "getting started as a developer" ? https://wiki.openmrs.org/display/docs/Getting+Started+as+a+Developer
|
13:41:02
|
<OpenMRSBot> <http://ln-s.net/8bkO> (at wiki.openmrs.org)
|
13:41:05
|
<bwolfe> !gettingstarted
|
13:41:06
|
<OpenMRSBot> bwolfe: "gettingstarted" --- https://wiki.openmrs.org/display/docs/Getting+Started+as+a+Developer
|
13:41:10
|
<bwolfe> ooo, it is there
|
13:41:19
|
*** chopin has joined #openmrs
|
13:41:33
|
*** ChanServ sets mode: +v chopin
|
13:41:50
|
<chopin> dkayiwa, hey man ... how do i specify which port to use in a standalone for mysql?
|
13:42:15
|
*** mseaton has joined #openmrs
|
13:42:15
|
*** ChanServ sets mode: +v mseaton
|
13:42:27
|
<suranga> bwolfe, in regard to Trunk 2030. I seen the mistake as soon as I done it, and updated the comment.. but still, mistake is mistake i guess :P
|
13:42:31
|
<dkayiwa> chopin: in the runtime properties file under the standalone folder
|
13:42:50
|
<chopin> dkayiwa, when i specify it in the connection url, it changes
|
13:43:04
|
<chopin> dkayiwa, i set it to 3316 and when openmrs-standalone runs, it changes to 3317
|
13:43:23
|
<chopin> dkayiwa, is there a environment variable or command line parameter to use so i can force it to be on a given port?
|
13:44:15
|
<dkayiwa> chopin: which version of the standalone are you using?
|
13:44:20
|
<chopin> 1
|
13:44:23
|
<chopin> ehe
|
13:44:25
|
<chopin> 1.8.2
|
13:44:32
|
<dkayiwa> chopin: that has a bug
|
13:44:45
|
<dkayiwa> chopin: use the one for 1.9RC2 or RC3
|
13:44:50
|
*** MarkG has joined #openmrs
|
13:45:27
|
<chopin> dkayiwa, for some reason that one always wants to install i think ... i'll try again though. strange, it was working very well for a while now.
|
13:45:38
|
<dkayiwa> chopin: just copy over the openmrs-standalone.jar file from that of 1.9 RC3 into the 1.8.2 standalone folder
|
13:46:08
|
<chopin> dkayiwa, okay ... does the jar file have to be custom or can it just be a downloaded openmrs.war of the official 1.8.2 release?
|
13:46:27
|
<chopin> dkayiwa, i want to work within the same environment as AMPATH :-/
|
13:46:44
|
<chopin> ohhh wait, jar != war
|
13:46:45
|
<dkayiwa> chopin: the standalone is independent of the openmrs version
|
13:46:45
|
<chopin> got it
|
13:46:48
|
<chopin> hahahahahaha
|
13:47:01
|
<chopin> okay, i'll get the latest openmrs-standalone
|
13:47:23
|
*** applecool_ has joined #openmrs
|
13:47:41
|
<dkayiwa> chopin: the standalone which was shipped with 1.8.2 has a bug of not using the mysql port in the runtime properties file
|
13:48:37
|
<chopin> ohh
|
13:56:00
|
<bwolfe> fail
|
13:56:17
|
<bwolfe> luckily 1.8.3 is available for a low-cost upgrade of $14.95 !
|
13:56:44
|
<bwolfe> suranga, no worries. first time mistake ;-)
|
13:56:59
|
<bwolfe> reader, what brought you to us?
|
13:57:05
|
<nribeka> mseaton, more question for you today
|
13:57:17
|
<mseaton> nribeka: what's up?
|
13:57:47
|
<chopin> dkayiwa, can we someday change the log names in openmrs-standalone to be yyyy-mm-dd instead of dd-mm-yyyy?
|
13:57:56
|
*** reader has quit IRC
|
13:58:43
|
<dkayiwa> chopin: that is already fixed :)
|
13:58:50
|
<chopin> it is?
|
13:58:54
|
<dkayiwa> chopin: atlease in all the 1.9 standalones
|
13:58:57
|
<chopin> in 1.9?
|
13:58:57
|
<chopin> hrm
|
13:59:11
|
<chopin> uhhh
|
13:59:14
|
<chopin> doesn't seem like it
|
13:59:17
|
<chopin> heheh
|
13:59:23
|
<dkayiwa> chopin: are you sure????
|
13:59:24
|
<chopin> something funky must be happening
|
13:59:31
|
<chopin> lemme see ...
|
13:59:34
|
<dkayiwa> chopin: can you delete the log folder
|
13:59:48
|
<dkayiwa> then see what file name will be created chopin
|
14:00:00
|
<chopin> ok one sec
|
14:00:11
|
<nribeka> so mseaton i have another need here that i don't know which path to go.
|
14:00:11
|
<nribeka> in ampath we try to match the lab request obs (in encounter form) and the actual lab obs (coming from the lab system).
|
14:00:11
|
<nribeka> if the lab request and lab result match (max 1 day apart), then we don't say anything.
|
14:00:11
|
<nribeka> if lab request is sent but no lab result coming, we say lab pending.
|
14:00:11
|
<nribeka> if lab result is coming but no lab request, we say no order
|
14:00:20
|
<chopin> i think i need to make sure i don't have another openmrs-standalone.jar on my path somewhere
|
14:00:39
|
<chopin> ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
|
14:00:54
|
<chopin> dkayiwa, run-on-linux.sh --> standalone-1.1.jar
|
14:01:38
|
<dkayiwa> chopin: is that in 1.9 standalones?
|
14:01:49
|
<chopin> i copied over the jar file like you said
|
14:01:50
|
<chopin> :-D
|
14:01:52
|
<dkayiwa> chopin: i remember having fixed that
|
14:02:01
|
<mseaton> nribeka, ok
|
14:02:02
|
<nribeka> mseaton, i was thinking to use the formatter to do the checking, but i'm not sure how efficient it would be
|
14:02:04
|
<dkayiwa> chopin: oh i seeeeee
|
14:02:05
|
<dkayiwa> :)
|
14:02:13
|
<dkayiwa> chopin: so you need to change it
|
14:02:18
|
<dkayiwa> chopin: nice catch :)
|
14:02:50
|
<mseaton> nribeka, sounds more like a custom data definition
|
14:02:59
|
<nribeka> i can see this will be some sort of custom dataset? is there any example in the reporting to create custom dataset that is not returning obs, encounter?
|
14:03:02
|
<nribeka> yeah mseaton
|
14:03:23
|
<mseaton> custom data set? or custom data?
|
14:04:25
|
<nribeka> custom dataset maybe? because i need the obs value, obs datetime, obs status (pending, no order)
|
14:04:44
|
*** snoppy has quit IRC
|
14:05:25
|
<dkayiwa> hi bwolfe
|
14:05:31
|
<bwolfe> hi dkayiwa
|
14:05:34
|
<nribeka> maurya, the he-man apps looks pretty cool
|
14:05:36
|
<dkayiwa> bwolfe: do you have any ideas for REPORT-287 :)
|
14:05:43
|
<dkayiwa> !ticket REPORT-287
|
14:05:44
|
<OpenMRSBot> dkayiwa: [#REPORT-287] Location hierarchy, tree widget, should be used by the Reporting Module - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-287
|
14:05:56
|
<mseaton> nribeka, sounds maybe like 2 independent needs maybe:
|
14:06:15
|
*** chopin has quit IRC
|
14:06:18
|
<wyclif> no scrum? bwolfe djazayeri, rafa, dkayiwa
|
14:06:24
|
<maurya> thanks nribeka
|
14:06:34
|
<dkayiwa> wyclif: no Dawn :)
|
14:06:35
|
<djazayeri> Scrum is supposed to be now, right?
|
14:06:44
|
<bwolfe> dawn is in another meeting. I was waiting for mseaton/nribeka to finish before starting the scrum...
|
14:06:45
|
<rafa> hi
|
14:06:53
|
<djazayeri> !scrumon bwolfe
|
14:06:53
|
* OpenMRSBot says the DAILY SCRUM MEETING is STARTING. This meeting should not last longer than 15 minutes. Please hold other comments until the end of the meeting, or message someone privately. Thank you! ScrumMaster bwolfe- you may begin when ready.
|
14:07:10
|
*** sgithens has quit IRC
|
14:07:26
|
<nribeka> ugh scrum started. we can talk after scrum mseaton
|
14:07:34
|
<mseaton> saved by the bell
|
14:07:35
|
<bwolfe> today's order: djazayeri, rafa, wyclif, dkayiwa, mseaton, nribeka, bwolfe
|
14:07:44
|
<wyclif> finally am not first
|
14:07:49
|
<djazayeri> Thursday 12-Apr-2012
|
14:07:49
|
<djazayeri> * Dev call
|
14:07:49
|
<djazayeri> * Call with jembi about hl7 input/output
|
14:07:49
|
<djazayeri> * Leadership call
|
14:07:49
|
<djazayeri> * Meet with Bill and Jan from ITECH
|
14:07:49
|
<djazayeri> * Reviewed GSoC apps
|
14:07:50
|
<djazayeri> Friday 13-Apr-2012
|
14:07:50
|
<djazayeri> * More work on REPORT-330 (First pass at Data Export replacement in the reporting framework)
|
14:07:59
|
<djazayeri> (I really have to work on that one)
|
14:08:01
|
<djazayeri> no blockers
|
14:08:14
|
<rafa> Today:
|
14:08:15
|
<rafa> * Working on REPORT-223: Run Report page does not properly handle Collection parameters
|
14:08:15
|
<rafa> https://tickets.openmrs.org/browse/REPORT-223
|
14:08:15
|
<rafa> No blockers.
|
14:08:38
|
<wyclif> Thursday:
|
14:08:38
|
<wyclif> * dev call
|
14:08:38
|
<wyclif> * Added type attribute to encounterLocation tag and documented it
|
14:08:38
|
<wyclif> * TRUNK-1868 - Force password change page help text should reflect security global properties
|
14:08:38
|
<wyclif> * Investigated TRUNK-3149 on 1.6.5 and couldn't reproduce it - Changing concept names with the ui doesn't save
|
14:08:40
|
<wyclif> Friday:
|
14:08:41
|
*** applecool_ has quit IRC
|
14:08:42
|
<wyclif> * TRUNK-1955 - Relationships lost when creating a new patient and results not refreshed
|
14:08:44
|
<wyclif> * RCM-15 - Include Patient Attributes when doing a data export
|
14:08:46
|
<wyclif> * pick another sprint ticket
|
14:08:48
|
<wyclif> Blockers: None
|
14:08:49
|
*** chopin__ has joined #openmrs
|
14:09:06
|
*** chopin has joined #openmrs
|
14:09:36
|
<bwolfe> wyclif, for after: share your query with me so I can update the bug fixing dashboard
|
14:09:46
|
<bwolfe> dkayiwa, you're up
|
14:09:49
|
<dkayiwa> IRC
|
14:09:49
|
<dkayiwa> Blocked on and then unassigned myself: Location hierarchy, tree widget, should be used by the Reporting Module - REPORT-287
|
14:09:49
|
<dkayiwa> Blocked with a question on: Spaces or underscores in any of the "Searches to Combine" CohortDefinition keys breaks Composition String in CompositionQuery - REPORT-247
|
14:09:49
|
<dkayiwa> Not yet got a reporting module ticket small enough to finish quickly since sprint is about to end
|
14:10:15
|
<djazayeri> wyclif: also, one of your todos today is to send an email summarizing your bug-fixing work this week
|
14:10:19
|
<mseaton> dkayiwa: we can discuss at end. i have a few tickets for you.
|
14:10:30
|
<dkayiwa> mseaton: ok
|
14:10:46
|
<wyclif> djazayeri, ok
|
14:11:00
|
<mseaton> Thursday 12-Apr-2012
|
14:11:00
|
<mseaton> * Openmrs Developers call
|
14:11:00
|
<mseaton> * Openmrs Leadership call
|
14:11:00
|
<mseaton> * Malawi EMR Presentation / Discussion
|
14:11:00
|
<mseaton> * Completed tickets:
|
14:11:00
|
<mseaton> !TICKET REPORT-360
|
14:11:00
|
<mseaton> !TICKET REPORT-361
|
14:11:01
|
<OpenMRSBot> mseaton: [#REPORT-360] One the "custom report" page, if a data set is added with a key that contains spaces, you will not be able to edit or remove this key - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-360
|
14:11:01
|
<mseaton> * Planning of Rwanda work with Lara (mainly reporting and oncology)
|
14:11:01
|
<mseaton> * Design for report tagging for REPORT-49
|
14:11:02
|
<OpenMRSBot> mseaton: [#REPORT-361] Long description on the report editor page does not wrap appropriately - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-361
|
14:11:02
|
<mseaton> !TICKET REPORT-49
|
14:11:02
|
<mseaton> * Review, planning, support for Reporting Sprint
|
14:11:03
|
<mseaton> Friday 13-Apr-2012
|
14:11:03
|
<mseaton> * Design / UI Review for Provider-mgmt Dashboard
|
14:11:04
|
<OpenMRSBot> mseaton: [#REPORT-49] Add a mechanism for tagging / categorizing reports and other reporting elements - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-49
|
14:11:04
|
<mseaton> * Reporting Sprint development, review, support, including tagging
|
14:11:04
|
<mseaton> * Starting Oncology regimen design
|
14:11:05
|
<mseaton> Blockers:
|
14:11:05
|
<mseaton> * None
|
14:11:11
|
<nribeka> thursday:
|
14:11:11
|
<nribeka> - ampath call
|
14:11:11
|
<nribeka> - dev call
|
14:11:11
|
<nribeka> - creating encounter provider, date created, created by data definition and evaluator
|
14:11:11
|
<nribeka> - continuing my work to create summary sheet using reporting
|
14:11:12
|
<nribeka> today:
|
14:11:14
|
<nribeka> - discussing and creating custom data (or custom dataset) i mention earlier in irc
|
14:11:16
|
<nribeka> - continuing my work to create summary sheet using reporting
|
14:11:18
|
<nribeka> blocker: none
|
14:11:20
|
<nribeka> discussion: creating custom data (or custom dataset) i mention earlier in irc
|
14:11:40
|
<nribeka> brb (getting coffee) :)
|
14:12:43
|
<bwolfe> today:
|
14:12:44
|
<bwolfe> slogged through rest of email and commented/reviewed a bunch of happenings
|
14:12:44
|
<bwolfe> applied TRUNK-2498, validate email address
|
14:12:44
|
<bwolfe> applied TRUNK-2616, validate name regex in api
|
14:12:44
|
<bwolfe> yesterday:
|
14:12:45
|
<bwolfe> emails
|
14:12:47
|
<bwolfe> reviewed a bunch of tickets (which I should link to)
|
14:12:49
|
<bwolfe> commented on more tickets (which I don't really need to link to)
|
14:12:49
|
*** suranga has quit IRC
|
14:12:51
|
<bwolfe> triaged 2 tickets (which I should link to)
|
14:12:53
|
<bwolfe> dev call
|
14:12:55
|
<bwolfe> call with jembi about hl7 input/output
|
14:12:57
|
<bwolfe> leadership call
|
14:12:59
|
<bwolfe> reviewed gsoc projects
|
14:13:04
|
<bwolfe> no blockers.
|
14:13:15
|
<bwolfe> discussion point: mseaton: status of sprint?
|
14:13:25
|
<bwolfe> discussion point: mseaton: have a ticket for me to do?
|
14:13:53
|
<bwolfe> anyone I miss? I don't see sgithens or mvrobey
|
14:14:12
|
<bwolfe> !scrumoff
|
14:14:12
|
* OpenMRSBot says the DAILY SCRUM MEETING has ENDED. This channel is now returned to normal hacking operations. Post-scrum meeting follow-up conversations may now begin.
|
14:14:29
|
<bwolfe> discussion time:
|
14:14:36
|
<bwolfe> wyclif, send the query or link to me via email
|
14:15:09
|
<bwolfe> dkayiwa, how long have you been blocked on REPORT-287 ? did mseaton's suggestion not work?
|
14:15:15
|
<wyclif> bwolfe, http://pastebin.com/B3kVqwGV
|
14:15:15
|
<mseaton> bwolfe: depends on how much time you have. i'd love if you would take on REPORT-352. it deals with threading, etc. so i'd want someone with experience with this doing it.
|
14:15:34
|
<dkayiwa> bwolfe: it did not work
|
14:15:37
|
<djazayeri> !report-352
|
14:15:37
|
<OpenMRSBot> djazayeri: Error: "report-352" is not a valid command.
|
14:15:41
|
<djazayeri> !ticket report-352
|
14:15:42
|
<OpenMRSBot> djazayeri: [#REPORT-352] Provide ability to stop reports during the course of an execution - OpenMRS JIRA - https://tickets.openmrs.org/browse/report-352
|
14:16:03
|
<djazayeri> !ticket report-287
|
14:16:04
|
<OpenMRSBot> djazayeri: [#REPORT-287] Location hierarchy, tree widget, should be used by the Reporting Module - OpenMRS JIRA - https://tickets.openmrs.org/browse/report-287
|
14:16:11
|
<dkayiwa> bwolfe: the fieldgen needs things like pagecontext, etc which i do not have access to
|
14:16:37
|
<wyclif> that ticket would require running each report in a separate thread though the threads should be waiting on each other in a queue
|
14:16:57
|
<wyclif> for REPORT-352
|
14:17:34
|
*** bryq has joined #openmrs
|
14:17:34
|
*** ChanServ sets mode: +v bryq
|
14:17:50
|
<mseaton> REPORT-335 is just a new UI layout for the run report page that would pull in additional data to the view. it should be easy/straightforward.
|
14:17:52
|
<mseaton> !REPORT-335
|
14:17:53
|
<OpenMRSBot> mseaton: Error: "REPORT-335" is not a valid command.
|
14:17:58
|
<mseaton> !ticket REPORT-335
|
14:17:59
|
<OpenMRSBot> mseaton: [#REPORT-335] Update the "Run Report" page to include information about previous and current evaluations of the report - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-335
|
14:18:06
|
<djazayeri> dkayiwa: if you tried something on REPORT-287 and it didn't work, please comment on the ticket saying so, so the next person is saved from re-trying the same thing.
|
14:18:22
|
<dkayiwa> djazayeri: sure. doing so now :)
|
14:18:35
|
<djazayeri> dkayiwa: what is the complete list of things that need to be passed to fieldgen/tag
|
14:18:37
|
<djazayeri> ?
|
14:19:50
|
<mseaton> when you access htmlwidgets via the tag library (eg. the widgettag, it puts the current HttpServletRequest into the WidgetConfig for use by any of the widgets as needed)
|
14:20:16
|
<dkayiwa> djazayeri: one of them is PageContext
|
14:21:10
|
<djazayeri> mseaton: so presumably dkayiwa could modify the htmlwidgets code to also pass the pageContext?
|
14:21:10
|
<dkayiwa> djazayeri: and i think it gets PageContext from the base class TagSupport ?
|
14:21:27
|
<mseaton> i suppose we could put the page context into the WidgetConfig as well, instead. right now we are just taking the request off of the page context and putting it in the widget config. we could just pass the pagecontext in fully instead. i'm not sure why i didn't do that originally - there might or might not have been a good reason
|
14:21:49
|
<mseaton> https://svn.openmrs.org/openmrs-modules/htmlwidgets/web/src/org/openmrs/module/htmlwidgets/web/taglib/WidgetTag.java
|
14:21:59
|
<djazayeri> mseaton: probably you didn't want to force the widgets to only be runnable from jsp pages
|
14:22:20
|
<mseaton> djazayeri: this was likely my intent, but in practice unnecessary
|
14:22:51
|
<mseaton> i think i envisoned these being used by htmlforms, etc. and didn't want to place undue restrictiosn on this
|
14:23:21
|
*** maurya has quit IRC
|
14:23:32
|
<djazayeri> dkayiwa: so, does this seem like a solution?
|
14:23:57
|
<dkayiwa> djazayeri: let me try it now and get back to you in a few minutes :)
|
14:24:03
|
<mseaton> bwolfe, dkayiwa: any of the remaining tickets should be straightforward (one is being done by win, he needs to claim it)
|
14:24:32
|
<mseaton> dkayiwa: if you are looking for a v. quick ticket, you can take REPORT-46
|
14:24:36
|
<mseaton> !ticket REPORT-46
|
14:24:39
|
<OpenMRSBot> mseaton: [#REPORT-46] Reporting module: Increase readability of default render for Period Indicator Reports - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-46
|
14:24:49
|
<mseaton> it basically just says "put a border on a table"
|
14:25:01
|
*** applecool has quit IRC
|
14:25:16
|
<dkayiwa> mseaton: thanks! Let me give REPORT-287 another shot using what has been discussed :)
|
14:25:50
|
<mseaton> REPORT-338 and REPORT-335 are both just UI work, and should not require anything but jsp, javascript, and calling existing services to put some more data into the model for use
|
14:25:55
|
<bwolfe> dkayiwa's other discussion point: Blocked with a question on: Spaces or underscores in any of the "Searches to Combine" CohortDefinition keys breaks Composition String in CompositionQuery - REPORT-247
|
14:26:09
|
<dkayiwa> bwolfe: yes
|
14:26:18
|
<mseaton> djazayeri: any thoughts?
|
14:26:22
|
<mseaton> i don't have a strong preference
|
14:26:33
|
<djazayeri> commenting on ticket, but basically the easy way would be to just disallow spaces
|
14:26:36
|
<mseaton> my main preference would be not to require any delimiters
|
14:26:56
|
<mseaton> djazayeri: the thing is, you have to declare all of the keys in the actual composition cohort definition.
|
14:26:58
|
<djazayeri> but obviously the code could be rewritten to look for known tokens explicitly
|
14:27:03
|
<mseaton> so you know the full keys available.
|
14:27:13
|
<mseaton> we should be able to allow anything
|
14:27:32
|
<djazayeri> I said: the _easiest_ fix is to disallow spaces. :-)
|
14:27:37
|
<mseaton> and have the _first_ thing that is done, rename the known keys in the expression if needed
|
14:27:46
|
<mseaton> to ease parsing
|
14:27:48
|
<djazayeri> I haven't looked at the code, but presumably you could just do a first pass and find those tokens, yes
|
14:27:49
|
<mseaton> or whatever
|
14:28:06
|
<mseaton> dkayiwa, do you follow?
|
14:28:12
|
<dkayiwa> mseaton: yes
|
14:29:43
|
*** chopin has quit IRC
|
14:29:43
|
*** chopin__ has quit IRC
|
14:29:54
|
<bwolfe> mseaton, is the sprint on track to finish?
|
14:29:56
|
<mseaton> so my feeling is that if you know there is a named search called "male patients", then you should be able to change the parsing of the expression such that if it finds "male patients" it can handle it, rather than thinking of it as 2 differnet tokens
|
14:30:17
|
<mseaton> bwolfe: well, depends on what you take on today and what i secretly move out of the sprint
|
14:30:38
|
<mseaton> we will finish what we finish
|
14:30:54
|
<djazayeri> mseaton, dkayiwa: are we sure that underscores also break things?
|
14:31:04
|
<mseaton> unless we get the tagging done though, we will not be in a position to finish everything and release
|
14:31:15
|
<dkayiwa> djazayeri: i have failed to reproduce breaking with underscores
|
14:31:39
|
<bwolfe> mseaton, ok. what is the output of the sprint? a release? or just some completed tickets?
|
14:31:45
|
<mseaton> i don't see why underscores would break anything. i haven't reproduced it
|
14:31:55
|
<bwolfe> who is working on tagging?
|
14:32:05
|
<mseaton> bwolfe: i was hoping for a release. realistically, this won't happen immediately.
|
14:32:54
|
<mseaton> bwolfe: wyclif initially did the tagging. i pulled it since i decided to re-design it mid-sprint (boo me). you've seen the dev list emails. i have it currently assigned to me. you're welcome to it if you want
|
14:33:27
|
<bwolfe> I don't want in the middle of that. whatever is written will not be approved by grand master burke. ;-)
|
14:33:49
|
<mseaton> well, this is why i'm not putting tagging in core :)
|
14:34:00
|
<mseaton> you guys can write gmail if you want
|
14:34:01
|
<bwolfe> I have less strict ideas about tagging, more along the lines of what you've suggested
|
14:34:04
|
<mseaton> i just want categories
|
14:34:07
|
<bwolfe> heh
|
14:35:26
|
<mseaton> nice one picking up REPORT-352 bwolfe!
|
14:35:55
|
<bwolfe> theres middle ground there. I don't think it should be loosey-goosey like blog tagging, but it doesn't have to be 3 api calls to add a tag (like burke fears)
|
14:36:26
|
<mseaton> bwolfe: totally agree.
|
14:36:32
|
<bwolfe> mseaton, yeah, we'll see about REPORT-352. FYI: I've never said I'm an expert in threads and I don't want really want to be come the resident one...
|
14:36:56
|
<djazayeri> we could always have an addTag(object, tag) that creates the tag if it doesn't exist yet. That doesn't need to be exposed in the UI if you don't want.
|
14:38:17
|
<mseaton> as long as tag = Tag, not String
|
14:38:39
|
<djazayeri> what were the remaining points of disagreement from the email thread?
|
14:40:38
|
<bwolfe> mseaton, why not both? If just a String do a lookup on it first to see if it exists
|
14:41:12
|
<nribeka> !ticket REPORT-352
|
14:41:15
|
<OpenMRSBot> nribeka: [#REPORT-352] Provide ability to stop reports during the course of an execution - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-352
|
14:42:20
|
<djazayeri> bwolfe: my concern is that if we're allowing creating via a String, especially someplace like the reporting module where there are lots of consumers of the API, that we be very explicit about locale
|
14:42:37
|
<mseaton> bwolfe: i really like the idea. i just want to make sure we know how to create a tag given only a string
|
14:43:08
|
<bwolfe> mseaton, are you referring to the (eventual) merging of Lu's metadata localization?
|
14:43:09
|
<mseaton> yes, if we pass the locale too (or have well-defined default behavior), that could work
|
14:43:15
|
<mseaton> bwolfe: yes
|
14:43:42
|
<bwolfe> do tags need localized?
|
14:44:02
|
<mseaton> i've laid out my case in the dev list threads.
|
14:44:13
|
<mseaton> i need a way to be able to have categorized reports
|
14:44:19
|
<mseaton> i need to display those categories in the ui
|
14:44:35
|
<mseaton> i need users in english, french, and kreyol to understand these
|
14:44:54
|
<mseaton> this doesn't have to be via tags if this is too controversial
|
14:44:59
|
<mseaton> but i need _some_ mechanism
|
14:45:30
|
<mseaton> in a fully multi-lingual system, i think it is odd to think of tags as being "dataQuality" or something
|
14:45:35
|
<mseaton> and displaying this to the end user
|
14:45:51
|
<mseaton> this works if tags are user-specific like in gmail, where a user defines the tags they want and understand
|
14:45:59
|
<mseaton> and it works in jira because it's developer-facing
|
14:46:06
|
<mseaton> but openmrs is not either of these
|
14:48:19
|
<mseaton> bwolfe, is this convincing? do you think we should not be thinking tags for what we need, but instead attributes / types / something else?
|
14:49:49
|
*** dawn_ has joined #openmrs
|
14:49:56
|
*** ChanServ sets mode: +v dawn_
|
14:51:28
|
*** snoppy has joined #openmrs
|
14:51:30
|
<snoppy> к же
|
14:51:42
|
<bwolfe> mseaton, what are some example categories?
|
14:51:52
|
<bwolfe> mseaton, wordpress has both tags and categories
|
14:52:45
|
*** sgithens has joined #openmrs
|
14:53:31
|
<mseaton> bwolfe, could be anything and dependent on the type of definitions. for report definitions, i'm thinking things ilke:
|
14:53:34
|
<mseaton> Data Quality Reports
|
14:53:39
|
<mseaton> Clinical Summary Reports
|
14:53:46
|
<mseaton> Indicator Reports
|
14:53:48
|
<mseaton> MOH Reports
|
14:53:50
|
<mseaton> HIV Reports
|
14:53:51
|
<mseaton> etc.
|
14:54:09
|
<djazayeri> mseaton: also things like "Display on Report Dashboard"?
|
14:54:30
|
<djazayeri> (and reports can have multiple categories)
|
14:59:27
|
<mseaton> djazayeri: yes, we also need to support use cases where certain reports can be configured as "display on dashboard" or "quick link reports" or something. we're thinking this is the same mechanism
|
14:59:59
|
<mseaton> and as we move toward supporting specific UIs for particular users and roles, we also want to show appropriate data for that context.
|
15:00:39
|
<mseaton> eg. if we create a Rehab Program Dashboard in a module, I'd like a way to configure it with 1-N categories of reports that it displays, so that you can get any "Rehab" report here, but not "HIV Program" reports, for example bwolfe
|
15:01:48
|
<bwolfe> hmm, yes, sounds more "taggish"
|
15:02:19
|
<bwolfe> but if you want that flexibility you have to put up with the possibility that people create a bunch of tags.
|
15:02:31
|
<mseaton> well, i don't have to allow that
|
15:02:41
|
<MarkG> haggis, did someone say haggis?
|
15:02:53
|
<nribeka> lol
|
15:02:55
|
<mseaton> the reporting UI could be more restrictive than another UI for tagging patients
|
15:02:57
|
<bwolfe> I suppose tags can be localized, but I don't see a strong case for it really.
|
15:03:04
|
<bwolfe> yes, true
|
15:03:23
|
<bwolfe> MarkG, dyslexia ftl
|
15:03:29
|
<mseaton> is it that lack of a strong case that still have all of our metadata in a single language bwolfe? :)
|
15:03:43
|
<bwolfe> heh
|
15:03:48
|
<mseaton> seriously though.
|
15:03:50
|
<bwolfe> no, thats just a lack of manpower. I really want that in
|
15:04:11
|
<nribeka> i would to see the display on dashboard option too
|
15:04:21
|
<mseaton> to be clear. i don't need tags localized. but i need a way for them to show up that way in certain contexts. how to do that?
|
15:04:38
|
<mseaton> i don't want to hard-code tag names in a UI
|
15:06:50
|
<mseaton> bwolfe, djazayeri: without an alternative solution for showing "Data Quality Reports" to me and "Rapports sur la qualité des données" to our French-speaking users, I need to leave the door open for metadatalocalization to handle this
|
15:08:12
|
<djazayeri> I agree that handling this via metadata localization sounds strategic
|
15:08:23
|
<wyclif> bwolfe, are you working on REPORT-352
|
15:08:55
|
<wyclif> bwolfe, is yes, cool, there are currently 2 tickets(i think one is closed) that would benefit from it
|
15:11:11
|
<mseaton> nribeka: can you claim REPORT-371 if you are on it?
|
15:11:13
|
<bwolfe> wyclif, link them on the ticket
|
15:14:19
|
*** sgithens has quit IRC
|
15:16:01
|
<mseaton> bwolfe (beating a dead horse), do you think that wordpress model of tags _and_ categories is one we should adopt here?
|
15:16:14
|
<wyclif> one already is, let add the second
|
15:16:17
|
<nribeka> !ticket REPORT-371
|
15:16:18
|
<OpenMRSBot> nribeka: [#REPORT-371] Create ObsDataSetDefinition along with Obss Data definition and Obss Query - OpenMRS JIRA - https://tickets.openmrs.org/browse/REPORT-371
|
15:16:48
|
<nribeka> mseaton, can we start talking about the custom data / custom dataset thing?
|
15:17:02
|
<mseaton> nribeka, sure.
|
15:17:29
|
<bwolfe> mseaton, they're used for similar but different things. I'd prefer we only have one of them, but as such we need to compromise on the strengths of each a little bit
|
15:17:49
|
<nribeka> so what do you think about the issue mseaton
|
15:19:00
|
<mseaton> bwolfe. fair enough. given that i'm doing this for reporting and not for core, and my requirement is for localized categorization rather than a folksonomy, i am going to lean towards optimizing for that.
|
15:19:21
|
<mseaton> nribeka. i forget :) can you remind me?
|
15:19:23
|
*** sgithens has joined #openmrs
|
15:19:45
|
<bwolfe> mseaton, fair enough. if you add that addTag(String, Locale) method it might make burke happy (enough)
|
15:20:10
|
<djazayeri> mseaton: are you going to add this to reporting?
|
15:20:24
|
<djazayeri> or are you going to make a "tagging" module, and put this there, then have reporting depend on it?
|
15:20:27
|
<mseaton> djazayeri: not if you are volunteering?
|
15:20:35
|
<mseaton> NO
|
15:20:41
|
<mseaton> i am putting it in reporting :)
|
15:21:04
|
<mseaton> i suppose i could be convinced otherwise though
|
15:21:31
|
<mseaton> why? which would you prefer?
|
15:23:38
|
<djazayeri> I was thinking that if this is its own tagging module, this will actually solve tagging. :-)
|
15:24:49
|
<mseaton> want to code it up?
|
15:25:02
|
*** chopin has joined #openmrs
|
15:25:22
|
*** dkayiwa has left #openmrs
|
15:25:27
|
<nribeka> so mseaton i have another need here that i don't know which path to go.
|
15:25:27
|
<nribeka> in ampath we try to match the lab request obs (in encounter form) and the actual lab obs (coming from the lab system).
|
15:25:27
|
<nribeka> if the lab request and lab result match (max 1 day apart), then we don't say anything.
|
15:25:27
|
<nribeka> if lab request is sent but no lab result coming, we say lab pending.
|
15:25:27
|
<nribeka> if lab result is coming but no lab request, we say no order
|
15:25:43
|
<mseaton> right
|
15:25:53
|
<nribeka> i can see this will be some sort of custom dataset? is there any example in the reporting to create custom dataset that is not returning obs, encounter?
|
15:26:17
|
*** ChanServ sets mode: +v chopin
|
15:26:32
|
*** lh has joined #openmrs
|
15:26:47
|
<mseaton> nribeka: what is your end goal? to have a single column in a row-per-patient data set that has either: obs.value or "Pending" or "No Order" as the value?
|
15:26:49
|
<chopin> bwolfe, have you ever seen a module not be able to load another module's service via Context.getService(x.class)?
|
15:27:05
|
<chopin> I keep getting Service not found: interface org.openmrs.module.household.service.HouseholdService
|
15:27:05
|
<chopin> .
|
15:27:15
|
*** dawn__ has joined #openmrs
|
15:27:15
|
*** ChanServ sets mode: +v dawn__
|
15:27:16
|
<chopin> but the household module is loaded and running
|
15:27:19
|
<mseaton> chopin. do you require the Household module in your module?
|
15:27:27
|
<mseaton> you need to
|
15:27:33
|
<mseaton> in config.xml
|
15:27:44
|
<chopin> mseaton, pretty sure ... checking ...
|
15:27:59
|
<nribeka> i need multi column mseaton. obs datetime, obs value (coded and numeric), obs status (and probably some extended info from obs comment)
|
15:28:07
|
*** dawn_ has quit IRC
|
15:28:07
|
*** dawn__ is now known as dawn_
|
15:28:12
|
<chopin> mseaton, blargh! thanks.
|
15:28:45
|
<mseaton> ok nribeka. probably a DataConverter is all you will need actually
|
15:28:51
|
<mseaton> because you already have the Obs
|
15:29:53
|
*** dawn__ has joined #openmrs
|
15:29:53
|
*** ChanServ sets mode: +v dawn__
|
15:29:53
|
*** dawn_ has quit IRC
|
15:29:54
|
*** dawn__ is now known as dawn_
|
15:30:34
|
<bwolfe> mseaton++ for answering chopin before I got to it
|
15:30:38
|
<nribeka> yeah i was thinking like that mseaton, but not sure how efficient it would be. because i need to merge the test obs and the obs result
|
15:30:44
|
<chopin> heh
|
15:31:03
|
<bwolfe> chopin-- for nto checking his config.xml file first
|
15:31:06
|
<chopin> ugh, i'm also getting a very strange getter error that keeps cropping up
|
15:31:28
|
<mseaton> nribeka, the problem is that in some cases you have an Order and no Obs, in other cases you have both, and in other cases you have Obs and no Order, right?
|
15:31:40
|
<nribeka> yep
|
15:31:46
|
<chopin> bwolfe, this is happening even though there's a getStartDate() clear as day on the pojo: org.hibernate.PropertyNotFoundException: Could not find a getter for startDate in class org.openmrs.module.household.model.Household
|
15:31:46
|
<chopin> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
|
15:31:50
|
<nribeka> that's the problem mseaton
|
15:32:24
|
<chopin> bwolfe, and that's when I'm trying to start AMRS Mobile Form Entry (not Household)
|
15:32:27
|
<nribeka> mseaton, brb. papa paul need me.
|
15:32:30
|
<mseaton> chopin, make sure the version of household module actually running and the one you are looking at are the same
|
15:32:46
|
<bwolfe> that ^^
|
15:32:58
|
<bwolfe> and also make sure there isn't a household omod in amrsmodulefoemtnry
|
15:33:00
|
<chopin> mseaton, haha i knew that one already
|
15:33:03
|
<bwolfe> open/unzip it and look in lib
|
15:34:06
|
<chopin> uggggggggh ... i think i messed something up in the dependencies.
|
15:34:09
|
<chopin> bwolfe, thanks
|
15:34:22
|
<bwolfe> was it there?
|
15:37:35
|
*** snoppy has quit IRC
|
15:37:55
|
<chopin> bwolfe, apparently i never loaded household-1.0.0 into nexus
|
15:38:26
|
<mseaton> nribeka: one solution might be to have a new datatype called an "OrderableObs", which wraps an Order and an Obs property. then have an OrderableObsDataDefinition, which can be configured with "orderType" and "obsConcept" (and anything else you need), and returns an OrderableObs object. Then, you would have a DataConverter which can tell you the underlying Order, underlying Obs, and also do any necessary comparisons between them to output things like "
|
15:39:00
|
<mseaton> djazayeri might have some bright ideas too...
|
15:39:13
|
<chopin> bwolfe, erm ... i did ... but it's not picking up? /me looks at poms
|
15:40:03
|
<djazayeri> on a call now, don't have brain power to think of another solution
|
15:42:40
|
*** jmiranda has quit IRC
|
15:43:24
|
<nribeka> i think your idea make sense mseaton
|
15:45:48
|
<chopin> bwolfe, this is crazy ... parent pom: http://pastebin.com/2WKNh5Ya ... api pom: http://pastebin.com/253NnqqN
|
15:46:23
|
<chopin> bwolfe, i've added module dependencies to POMs before, not sure why i'm required to put a version on the household dependency in the api pom
|
15:48:07
|
*** dawn__ has joined #openmrs
|
15:48:08
|
*** ChanServ sets mode: +v dawn__
|
15:48:08
|
*** dawn_ has quit IRC
|
15:48:08
|
*** dawn__ is now known as dawn_
|
15:49:04
|
<mseaton> nribeka: cool, can you annotate the ticket with this so that we have the history there?
|
15:50:10
|
<nribeka> ok mseaton
|
15:50:14
|
<nribeka> will do
|
15:51:24
|
*** MarkG has quit IRC
|
15:54:56
|
*** rafa has quit IRC
|
15:56:36
|
<chopin> bwolfe, nvm ... something funky is going on there but i got it working
|
15:58:03
|
<nribeka> mseaton, i think you're talking about Order from the order entry right? i think ampath still use regular Obs to do the lab request
|
15:58:17
|
<nribeka> so i will wrap Obs (order) and Obs (result)
|
15:58:26
|
<mseaton> nribeka: makes sense
|
15:58:47
|
<mseaton> might want to rename the data definition then
|
15:59:03
|
<nribeka> suggestion?
|
16:00:00
|
<mseaton> not really - RelatedObsDataDefinition, MultipleObsDataDefinition?
|
16:00:07
|
<mseaton> depends on what it is going to return
|
16:00:39
|
<mseaton> i assume it's going to be something like "LAST obs with concept X and LAST obs with concept Y".
|
16:02:06
|
<nribeka> one example is:
|
16:02:06
|
<nribeka> lab order obs: Test Ordered (concept) --> CD4 Panel (value coded)
|
16:02:06
|
<nribeka> lab result obs: CD4 (concept) --> 350 (value numeric)
|
16:02:33
|
*** maurya has joined #openmrs
|
16:06:17
|
<nribeka> i guess i can use the RelatedObsDataDefinition mseaton
|
16:07:18
|
<mseaton> nribeka, well, they aren't necessarily "related" in the Data Definition like this
|
16:07:47
|
<mseaton> all you really want to do is get a bunch of different LAST obs values, rather than a single one
|
16:08:04
|
<mseaton> and then in the DataConverter, make decisions based on this
|
16:08:48
|
<mseaton> in your use case, you want to look at these Obs in relation to one another, but i wouldn't pre-suppose that's what everyone wants to do
|
16:09:12
|
<mseaton> so i would lean towards MultiObsDataDefinition or something
|
16:09:50
|
<nribeka> in ampath use case we need the first and last 4. so our output would look like this: 1. 350 (datetime) 2. Pending (datetime) 3. 450 (No Order, datetime) 4. Pending (datetime) 5. 600 (datetime)
|
16:12:02
|
*** dawn__ has joined #openmrs
|
16:12:02
|
*** dawn_ has quit IRC
|
16:12:02
|
*** ChanServ sets mode: +v dawn__
|
16:12:02
|
*** dawn__ is now known as dawn_
|
16:12:37
|
*** nribeka has quit IRC
|
16:12:50
|
*** nribeka has joined #openmrs
|
16:13:00
|
*** ChanServ sets mode: +v nribeka
|
16:13:35
|
<mseaton> well, you could just make your ObsDataDefinition take in a List<Concept> rather than a single Concept question, a TimeQualifier, and an Integer howMany, and if you say "LAST", "4", {Test Ordered, CD4}, have it return the Last 4 obs for both of these concepts.
|
16:14:41
|
<mseaton> then use a DataConverter to construct 4 different column values based on this data.
|
16:15:07
|
<mseaton> nribeka
|
16:15:20
|
<nribeka> mseaton, sorry i got disconnected a bit there
|
16:15:26
|
*** sgithens has quit IRC
|
16:16:10
|
<nribeka> brb mseaton. in a meeting. i will talk with you in a bit. sowwy
|
16:17:56
|
*** maurya has quit IRC
|
16:19:04
|
*** dawn_ has quit IRC
|
16:42:13
|
*** rohitgoyal18 has joined #openmrs
|
16:52:53
|
*** kavuri has joined #openmrs
|
16:58:05
|
*** gauravpaliwal has joined #openmrs
|
16:58:05
|
*** ChanServ sets mode: +v gauravpaliwal
|
17:02:26
|
*** gauravpaliwal has quit IRC
|
17:03:06
|
*** kavuri has quit IRC
|
17:11:39
|
*** robbyoconnor has quit IRC
|
17:12:01
|
*** robbyoconnor has joined #openmrs
|
17:12:01
|
*** ChanServ sets mode: +v robbyoconnor
|
17:15:24
|
*** kavuri has joined #openmrs
|
17:22:06
|
<nribeka> mseaton, back
|
17:23:15
|
<nribeka> mseaton, i can't just get the last 4 obs and get the status for that last obs. the process i have in place right now do this:
|
17:23:37
|
<nribeka> 1. get the order observations and get the lab result observations
|
17:25:28
|
<mseaton> nribeka: that's fine, then just say "ALL" instead of "LAST 4"
|
17:25:34
|
<nribeka> 2. merge the two types of observation. iterate through both and merge them if they are on the same day, retain order if no result around it and retain result if no order around it.
|
17:26:50
|
<nribeka> and then get the last 5 or 4
|
17:27:14
|
<nribeka> so i'm wondering what path should i go if i want to create something like this in reporting :D
|
17:28:18
|
<mseaton> well, you either do something generically useful if you can, and put it in reporting. or you make something specific to your needs and you put it in your module that depends on reporting
|
17:28:35
|
*** mccallumg has joined #openmrs
|
17:28:35
|
*** ChanServ sets mode: +v mccallumg
|
17:28:46
|
<mseaton> eg. AmpathOrderedLabTestDataDefinition
|
17:34:54
|
<nribeka> i would say OrderableObs definition will be useful for reporting
|
17:35:09
|
<nribeka> but for this case, i would say it's too ampath specific
|
17:39:09
|
*** suranga has joined #openmrs
|
17:39:09
|
*** ChanServ sets mode: +v suranga
|
17:39:36
|
*** dawn_ has joined #openmrs
|
17:39:36
|
*** ChanServ sets mode: +v dawn_
|
17:46:19
|
<bwolfe> mseaton, who/when/why on the Report Administration being renamed and moved sections?
|
17:48:51
|
*** rohitgoyal18 has quit IRC
|
17:49:45
|
<mseaton> bwolfe, no real reason other than starting to better organize things, but not very well thought out admittedly. you can feel free to move it back the way it was.
|
17:50:10
|
<bwolfe> it means updating the documentation
|
17:50:23
|
<bwolfe> (if you leave it as what you changed it to)
|
17:50:34
|
<bwolfe> and also means updating the page to use the right header
|
17:50:36
|
<mseaton> documentation? i didn't know there was any!
|
17:50:55
|
<bwolfe> https://wiki.openmrs.org/display/docs/Building+Reports+%28Step+By+Step+Guide%29#BuildingReports%28StepByStepGuide%29-BuildSimpleRPPDSD
|
17:51:01
|
<bwolfe> looks like its Rita's documentation
|
17:51:13
|
<bwolfe> had the hardest time just finding where to create the report :-/
|
17:51:19
|
<mseaton> bwolfe, fine to move it back. it should be re-organized when we re-organize everything at once anyway, not piecemeal
|
17:51:26
|
<mseaton> sorry
|
17:52:09
|
<bwolfe> there are also a lot of ui inconsistencies, ui flaws, usability issues, etc. are you aware of these? any use in my pointing them out?
|
17:52:49
|
*** dawn_ has quit IRC
|
17:53:28
|
<mseaton> bwolfe: any and all feedback welcome. it may be well known, it may not be. probably it is, but still worth documenting and discussing.
|
17:55:01
|
<mseaton> anything major?
|
18:05:02
|
*** harshadura has quit IRC
|
18:05:40
|
*** harshadura has joined #openmrs
|
18:07:24
|
*** harshadura has joined #openmrs
|
18:27:49
|
*** dileepsisila has joined #openmrs
|
18:28:31
|
<mseaton> bwolfe, djazayeri: remember that issue on the dev list about sync interceptor stopping for someone?
|
18:28:49
|
<djazayeri> yes, I remember it.
|
18:29:00
|
<mseaton> we seem to be deep in it ourselves
|
18:29:11
|
<djazayeri> that's not good.
|
18:29:35
|
<bwolfe> the interceptor just stops?
|
18:29:36
|
<mseaton> we are trying to track down what happened
|
18:29:45
|
<bwolfe> or doesn't restart after some module?
|
18:30:06
|
<mseaton> so far we can see that tomcat was restarted at the suspected time, and 2 new omod versions were added:
|
18:30:15
|
<mseaton> htmlformentry-1.9.1
|
18:30:20
|
<mseaton> metadatasharing-1.0.5
|
18:30:26
|
<bwolfe> not good at all. perhaps we need another fail safe in the sync module for it to check to make sure its intercepting things every 10 seconds
|
18:30:58
|
<bwolfe> those modules don't provide interceptors, do they?
|
18:31:15
|
<mseaton> htmlformentry does not. anyone know about metadatasharing?
|
18:31:28
|
<djazayeri> I doubt it has an interceptor
|
18:32:39
|
<bwolfe> but after restarting tomcat again the interceptor came back?
|
18:32:50
|
<mseaton> bwolfe: yes, would be nice to have a fail safe in sync just to alert someone. in our case we think this happened monday at noon :(
|
18:33:00
|
*** MarkG has joined #openmrs
|
18:33:04
|
<bwolfe> ugh
|
18:33:21
|
<bwolfe> (side note: who does a restart/module upgrade on a monday....at lunchtime??)
|
18:33:21
|
<mseaton> still debugging though
|
18:33:39
|
<MarkG> pretty sure it was something to do with hfe-1.9.1 or mds-1.0.5
|
18:33:55
|
<MarkG> may be even more sure once i check somethig else
|
18:33:57
|
<djazayeri> you're trying to reproduce adding those modules with sync running?
|
18:34:20
|
<mseaton> wouldn't matter when it would have been done, but yes, guildy
|
18:34:27
|
*** kavuri has quit IRC
|
18:34:55
|
<mseaton> djazayeri: no, not yet. still trying to look at the server and identify what we can from logs, etc
|
18:36:40
|
*** snoppy has joined #openmrs
|
18:38:53
|
<mseaton> so, on our child server, we upgraded both of those modules about a day later, and sync stopped working there at that time. so it's pretty clear that it's likely due to something in hfe or mds
|
18:40:15
|
<mseaton> djazayeri/bwolfe: eg. on our parent, we updated modules on monday and parent stopped logging changes, but children were still sending changes to it successfully. on tuesday we updated modules on child and from then on it stopped sending updates to parent.
|
18:40:46
|
<djazayeri> mseaton: this is with no change to the core version, right?
|
18:40:59
|
<mseaton> djazayeri: yes i believe so
|
18:41:24
|
<bwolfe> very strange
|
18:41:33
|
<bwolfe> what were the previous versions of hfe and mds?
|
18:41:51
|
<mseaton> don't know. MarkG?
|
18:42:18
|
<MarkG> i believe it was hfe 1.9.0
|
18:42:45
|
<MarkG> don't know about mds, except that there was a bug in MDS 1.0.4, so i don't think we ever upgraded to that...
|
18:43:53
|
<MarkG> we just upgrade rwanda to hfe 1.9.2 yesterday. lara is checking it out now... if you don't here from me again, it means hfe broke rwanda and lara has killed me... :)
|
18:45:03
|
<djazayeri> sync still sends complete objects, rather than deltas to objects, right?
|
18:46:32
|
<djazayeri> so once you've figured out why this broke, you can recover by going through every object that has been modified since Monday at noon, and saving it?
|
18:46:43
|
<mseaton> we hope so
|
18:46:59
|
<mseaton> assuming no conflicts since then
|
18:48:32
|
<dileepsisila> is there any one know how to integrate metadata sharing module to open mrs
|
18:49:00
|
<djazayeri> dileepsisila: what do you mean exactly? Something more than installing the module and using it?
|
18:50:36
|
<mseaton> djazayeri/bwolfe/mgoodrich: i'm doing a diff of mds from 1.0 to now.
|
18:50:41
|
<mseaton> one thing i see so far is this:
|
18:50:42
|
<mseaton> <!-- It overwrites the conceptDAO bean from the OpenMRS core to fix an issue when working in the MANUAL flush mode -->
|
18:50:42
|
<mseaton> <bean id="conceptCustomDAO" class="org.openmrs.module.metadatasharing.api.db.hibernate.HibernateCustomConceptDAO">
|
18:50:42
|
<mseaton> <property name="sessionFactory"><ref bean="sessionFactory"/></property>
|
18:50:42
|
<mseaton> </bean>
|
18:51:20
|
<djazayeri> that seems highly likely to be the cause...
|
18:51:44
|
<mseaton> that was my instinct
|
18:52:00
|
<mseaton> then this:
|
18:52:07
|
<mseaton> @Component
|
18:52:07
|
<mseaton> public class BeanReplacer implements BeanFactoryPostProcessor {
|
18:52:07
|
<mseaton>
|
18:52:07
|
<mseaton> /**
|
18:52:07
|
<mseaton> * @see org.springframework.beans.factory.config.BeanFactoryPostProcessor#postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory)
|
18:52:07
|
<mseaton> */
|
18:52:08
|
<mseaton> @Override
|
18:52:08
|
<mseaton> public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
|
18:52:09
|
<mseaton> ConceptServiceImpl conceptService = (ConceptServiceImpl) beanFactory.getBean("conceptServiceTarget");
|
18:52:09
|
<mseaton> ConceptDAO conceptCustomDAO = (ConceptDAO) beanFactory.getBean("conceptCustomDAO");
|
18:52:10
|
<mseaton> conceptService.setConceptDAO(conceptCustomDAO);
|
18:52:10
|
<mseaton> }
|
18:52:11
|
<mseaton>
|
18:52:11
|
<mseaton> }
|
18:53:10
|
<mseaton> also a new "CustomSessionFlushTask". uh oh.
|
18:53:45
|
<MarkG> i just pretty much confirmed it is mds 1.0.5
|
18:53:50
|
<mseaton> ok, mark just did a local test. hfe didn't break it. mds did
|
18:54:15
|
<MarkG> and, fwiw, lara is running mds 1.0.4 in rwanda and everything is working for me, so it is likely to be 1.0.5
|
18:54:29
|
<djazayeri> things broke in Haiti?
|
18:54:33
|
<mseaton> yes
|
18:54:58
|
<djazayeri> Unfortunately Rafal must be off for the weekend
|
18:55:14
|
<MarkG> can we see if the above metadata sharing changes happened between 1.0.4 and 1.0.5
|
18:55:16
|
<mseaton> we might want to pull 1.0.5
|
18:55:46
|
<MarkG> re: Rafal... yeah, if we've identified the problem we don't really need him asap anymore... just pull 1.0.5 and then start dealing with the mess and worry about fixing 1.0.5 next week... :)
|
18:56:28
|
<mseaton> there are tags in svn for 1.0 and 1.0.5 nothing in between. so these are what i compared.
|
18:56:35
|
<djazayeri> MarkG: while you've got this setup running, can you step through module startup and figure out at which point the interceptor is removed?
|
18:57:11
|
<djazayeri> By "pull" do you mean remove from the module repo, or remove from your haiti install?
|
18:57:52
|
<mseaton> so mark uninstalled mds and sync started working again
|
18:58:04
|
<mseaton> no real surprise there, but just confirming
|
18:58:07
|
<MarkG> from the module repo... and someone should send out a warning to the dev/implementors list...
|
18:58:17
|
<MarkG> i am installing mds 1.0.4 to confirm that it DOESN'T break sync
|
18:58:20
|
<mseaton> i mean "remove from the moduile repo"
|
18:58:47
|
<MarkG> hmm... looks like 1.0.4 might break it too...
|
18:59:01
|
<djazayeri> AFAIK very few people are running sync, so I tend to think that sending an email to the dev & impl lists warning people not to use MDS 1.0.5 and sync together, is sufficient.
|
18:59:21
|
<MarkG> i disagree....
|
18:59:35
|
<djazayeri> rather than removing 1.0.5 from the module repo without letting rafal (the module owner) know...
|
19:00:13
|
<MarkG> but this is a potentially catastrosphic error for users...
|
19:00:14
|
<djazayeri> let us know about 1.0.4 too (I thought you said they were running that successfully in Rwanda)
|
19:00:19
|
<mseaton> djazayeri: this is a major blocker issue. we need to pull it. why justify keeping it there?
|
19:00:35
|
<MarkG> looks like 1.0.4 might block it as well... i am going to double-check with lara
|
19:00:38
|
<mseaton> who knows if this is buggering up hibernate in general for people?
|
19:00:45
|
<MarkG> make sure it is really working for her
|
19:01:43
|
<bwolfe> how would it bugger up in general?
|
19:01:49
|
<bwolfe> meaning nothing is saved??
|
19:02:21
|
<mseaton> bwolfe: point is that hibernate is affected by this. we are experience one impact of that. i don't know if there may be others.
|
19:02:46
|
<mseaton> and regardless, this is enough to pull it.
|
19:02:50
|
<djazayeri> If we have no reason to suspect this is broken for people not using sync, then I don't see the need to do an emergency removal of that version from the module repo on Friday afternoon/night, rather than sending an email, and letting Rafal (the module owner) decide
|
19:03:04
|
<mseaton> do you want to go out and debug sync across implementations?
|
19:03:07
|
<mseaton> i certainly don't
|
19:04:04
|
<mseaton> djazayeri: what do you gain by leaving it there?
|
19:04:11
|
<djazayeri> So: send an email with ALL CAPS about not using sync and MDS 1.0.5 together, and we can edit the description in the module repo to say DO NOT USE THIS VERSION WITH SYNC
|
19:05:20
|
<MarkG> what if you don't read the dev list (i realize the odds are very unlikely that someone will download and install mds on a sync server this weekend and also not read the dev list, but this is a potentially non-recoverable error)
|
19:05:29
|
<OpenMRSBot> Recent updates in the world of openmrs: On Twitter: OpenMRS: RT @RegenstriefGHI: @openmrs Paul and Burke discussing the history of #openmrs in IU student interview. @Regenstrief @pbiondich @ekrub h ... <http://twitter.com/OpenMRS/statuses/190876004431044608> || On Twitter: OpenMRS: Blast from the past: #OpenMRS user group meeting attendee portfolio, 2006 http://t.co/hJcZxtNb <http://twitter.com/OpenMRS/statuses/190875104668958720>
|
19:06:04
|
<MarkG> anyway, if you don't want too, that is okay, i think it is wrong, but i have other things to worry about now... :)
|
19:07:04
|
<bwolfe> I vote to pull it. I'm with markg that not everyone reads the lists or even the descriptions before installing
|
19:07:16
|
<bwolfe> if nothing is wrong with it it can easily be reuploaded on monday
|
19:07:18
|
<MarkG> fyi, i am testing previous versions of mds... looks like 1.0.5 and 1.0.4 are both bad... i will keep stepping backwards until it starts work...
|
19:07:38
|
<bwolfe> does rafal keep release notes?
|
19:07:47
|
<MarkG> yeah, you can find them in jira
|
19:07:54
|
<MarkG> https://tickets.openmrs.org/browse/META#selectedTab=com.atlassian.jira.plugin.system.project%3Achangelog-panel
|
19:08:11
|
<djazayeri> I'd like us to define a process for when "OpenMRS admins" will come in an remove your module/version from the repo.
|
19:08:57
|
<djazayeri> (and does so in emergency-mode, before the module author knows about it.)
|
19:09:00
|
<mseaton> djazayeri is an allowed editor on metadatasharing. so, you have the green light :)
|
19:09:11
|
<bwolfe> can we install something ala android so we can uninstall it from implementations? no use here, but would be cool feature. :-D
|
19:09:33
|
<MarkG> the 1984 feature?
|
19:09:45
|
<bwolfe> that can be the code word
|
19:09:46
|
<djazayeri> If a module version breaks a bundled module, then I'd expect "OpenMRS" to remove it from the repo.
|
19:10:21
|
<MarkG> mds 1.0.3 seems to break it too... surprising, since lara is running 1.0.4... might be an interaction with something else?
|
19:10:24
|
<mseaton> that is one reason, not the only one
|
19:10:25
|
<bwolfe> or if a module version potentially corrupts data (which is does in this case)
|
19:10:34
|
<mseaton> yes, exactly
|
19:10:59
|
<djazayeri> but we don't think it corrupts data unless you're running the sync module.
|
19:11:14
|
<mseaton> djazayeri: how would you justify to a hospital or clinic that you knew about this and left it in place?
|
19:11:27
|
<mseaton> to me that is far worse than the alternative
|
19:12:22
|
<djazayeri> Removing at least three versions of MDS, going back 1.5 months, could likewise introduce errors.
|
19:12:43
|
<dileepsisila> djazayeri: https://wiki.openmrs.org/display/docs/User%27s+Guide+for+Metadata+Sharing+Module
|
19:12:44
|
<OpenMRSBot> <http://ln-s.net/9BmE> (at wiki.openmrs.org)
|
19:13:10
|
<dileepsisila> djazayeri: i want to display this module in my openmrs
|
19:13:18
|
<mseaton> well, you could do a _new_ emergency release that checks if sync is running, and if it is, fails to install
|
19:13:30
|
<djazayeri> mseaton: I'd be okay with that
|
19:13:49
|
<djazayeri> dileepsisila: download it from modules.openmrs.org, and install it in OpenMRS.
|
19:14:39
|
<mseaton> bwolfe, djazayeri: we will leave this issue in your capable hands while we try to restore our haiti system...
|
19:14:45
|
<djazayeri> thanks!
|
19:14:56
|
<MarkG> okay, so it looks like after installing 1.0.3, 1.0.4, and 1.0.5 of mds, the hibernate interceptor stops when testing on my local server
|
19:14:59
|
<djazayeri> It's been a great birthday week! Two emergency bugfixes!
|
19:15:17
|
<MarkG> the next version in the repo (0.9.0.2) does not seem to cause the problem
|
19:15:19
|
<dileepsisila> i downloaded it but there is no pom.xml file here cn u give a help for this installation
|
19:15:20
|
<djazayeri> MarkG: let us know whether Rwanda is actually running 1.0.4 successfully
|
19:15:36
|
<bwolfe> djazayeri, what was the other one?
|
19:15:58
|
<djazayeri> bwolfe: reporting 0.7.1 locks the admin account
|
19:16:03
|
<bwolfe> oh right
|
19:16:09
|
<MarkG> djazayeri: right, that was my follow-up note... rwanda appears to be running mds 1.0.4 successfully... so it might not be totally pervasive...
|
19:16:12
|
<dileepsisila> djazayeri: downloaded it but there is no pom.xml file here cn u give a help for this installation
|
19:16:15
|
<bwolfe> dileepsisila, are you wanting to USE it or to write CODE for it?
|
19:16:29
|
<djazayeri> dileepsisila: http://modules.openmrs.org
|
19:17:05
|
<djazayeri> dileepsisila: https://wiki.openmrs.org/x/pRAz
|
19:17:48
|
<MarkG> fwiw, rwanda is on a custom build of 1.6.4, while haiti is on 1.6.5, and my test server was running the 1.6.x trunk
|
19:17:50
|
<djazayeri> wyclif: what are you working on now?
|
19:19:06
|
<wyclif> djazayeri, RCM-15
|
19:19:07
|
<wyclif> Include Patient Attributes when doing a data export
|
19:19:30
|
<djazayeri> wyclif: we may need you to do an emergency fix to Metadata Sharing.
|
19:19:42
|
<dileepsisila> djazayeri: write a code
|
19:19:44
|
<djazayeri> as you're on bugfixing duty this week, it seems appropriate.
|
19:20:13
|
<djazayeri> wyclif: I'm creating the ticket now.
|
19:20:16
|
<wyclif> djazayeri, is it a quick fix i can do in the remaining time i have today, it is close 3:30 here
|
19:20:23
|
<djazayeri> wyclif: yes
|
19:20:34
|
<wyclif> k
|
19:20:35
|
<djazayeri> in the meantime, please check out the 1.0.5 tag for MDS.
|
19:21:12
|
*** mathiaslin has quit IRC
|
19:23:00
|
<bwolfe> dileepsisila, ah, so if you want to write code for it you are looking at an older ANT based module.
|
19:23:09
|
<bwolfe> to build an ant based module run "ant package-module"
|
19:23:13
|
<bwolfe> the omod will be in the dist folder
|
19:24:35
|
<dileepsisila> bwolfe: i downloaded metadata sharing module in the trunk
|
19:24:48
|
<dileepsisila> in this folder no pom.xml
|
19:24:51
|
<dileepsisila> file
|
19:25:12
|
<djazayeri> dileepsisila: it's not a mavenized module
|
19:25:15
|
<djazayeri> you build it with ant
|
19:25:18
|
<djazayeri> build.xml
|
19:25:33
|
<dileepsisila> ok........
|
19:25:36
|
<dileepsisila> wait
|
19:28:29
|
<djazayeri> wyclif: I just assigned you META-217
|
19:29:34
|
<djazayeri> wyclif: can you quickly determine whether it's possible, from the two classes that do something funky to Hibernate (they're mentioned in the ticket), to determine whether the sync module is running before they do anything?
|
19:30:46
|
<wyclif> djazayeri, will check, not sure if i can come up with an immediate solution
|
19:31:07
|
<djazayeri> wyclif: the immediate solution is just "make the module throw an exception at startup if sync is also running"
|
19:31:24
|
<djazayeri> but verify that exception is thrown early enough that hibernate isn't messed up
|
19:31:33
|
<wyclif> djazayeri, ok
|
19:31:42
|
<wyclif> djazayeri, ok
|
19:31:45
|
<djazayeri> bwolfe: is it okay to just check this in the module activator? (this is a pre-1.7 module)
|
19:32:20
|
<djazayeri> wyclif: you don't need to fix the underlying issue, just find a way to bomb at startup if sync is also running.
|
19:32:29
|
<wyclif> djazayeri, got you
|
19:32:41
|
<djazayeri> i.e. we'd rather crash openmrs until they remove the module, than let them continue working while sync is not capturing data.
|
19:32:52
|
<djazayeri> wyclif: I'm going to get lunch right now, but if you have *any questions whatsoever* about this, call my cellphone.
|
19:33:27
|
<wyclif> djazayeri, if the module requires 1.7+ it might easier to handle using the activator methods
|
19:33:34
|
<wyclif> djazayeri, sure
|
19:33:37
|
<djazayeri> wyclif: sadly it's a 1.6 module
|
19:33:47
|
<wyclif> djazayeri, that might be a pain
|
19:33:55
|
<wyclif> djazayeri, i will try to get a work around
|
19:34:01
|
<wyclif> djazayeri, how about sync?
|
19:34:11
|
<djazayeri> wyclif: we leave sync alone
|
19:34:31
|
<djazayeri> wyclif: it's okay to break "more often than strictly necessary"
|
19:34:42
|
*** downey has quit IRC
|
19:34:59
|
<wyclif> djazayeri, ok
|
19:35:27
|
<djazayeri> i.e. if it's not possible to tell whether the sync module is loaded in the 1.6 activator, then look for whether it's installed at all, or even look in the modules folder for sync*.omod.
|
19:36:01
|
<djazayeri> MarkG: when testing his fix, how does wyclif verify that the sync interceptor is running?
|
19:36:18
|
<djazayeri> does he have to modify some random piece of data, and look at the sync history?
|
19:37:37
|
<wyclif> djazayeri, will be something like that
|
19:37:51
|
<djazayeri> wyclif: okay, just make sure you test it in the webapp. :-)
|
19:37:56
|
<wyclif> djazayeri, sure
|
19:39:10
|
<dileepsisila> bwolfe: thanks nw created jar file in dist directory and how to add it to the open mrs
|
19:40:13
|
<bwolfe> dileepsisila, you need an omod.
|
19:40:23
|
<bwolfe> you upload it on the Manage Modules page in the admin section
|
19:40:29
|
<bwolfe> "ant package-module" to create the omod
|
19:41:00
|
<dileepsisila> i have .mod in the dist folder
|
19:41:13
|
<bwolfe> djazayeri, wyclif, I can't remember where in the process the old activator method is called. if it is called after spring is restarted for any module load, then it should be sufficient
|
19:41:23
|
<bwolfe> dileepsisila, no, you have a .omod. :-)
|
19:42:09
|
<wyclif> in the old one it is called after the module is loaded
|
19:42:18
|
<MarkG> djazayeri: i was just modifying some random piece of data
|
19:42:23
|
<bwolfe> but only that module is loaded or any module is loaded?
|
19:43:08
|
<wyclif> bwolfe, all i can recall it that onStartup in the old activator, the services were not available
|
19:43:24
|
<wyclif> so i guess it was before spring is started\
|
19:45:08
|
<bwolfe> ah, I think you are right wyclif
|
19:45:19
|
<bwolfe> but it shoudl be AFTER all modules are LOADED
|
19:45:50
|
<bwolfe> so you could check ModuleFactory.getLoadedMOdules() . not sure if all modules have their started status set yet, so .getStartedModules() migh tnot be enough
|
19:46:05
|
<bwolfe> but as darius said, failing more often than necessary here is ok
|
19:47:36
|
*** james_regen has quit IRC
|
19:47:42
|
<wyclif> ok
|
19:48:43
|
*** nribeka has quit IRC
|
19:48:46
|
<mseaton> djazayeri, bwolfe, wyclif: in all of this, i don't want to lose the info that rwanda is running mds 1.0.4 successfully on 1.6.4, but this fails in our test environment on 1.6.5. so there might also be a 1.6.5 wrinkle to this that needs to be investigated.
|
19:49:11
|
<mseaton> i looked briefly and nothing really stood out. the only 2 real suspects were:
|
19:49:23
|
<mseaton> * change class loader to delete lib cache folder
|
19:49:53
|
<mseaton> * db change (by rafal) to delete roles from the db (directly via sql, not via api)
|
19:51:25
|
<bwolfe> is it a straight 1.6.5? or modified mseaton?
|
19:51:39
|
<mseaton> actually i did the compare from 1.6.4 to 1.6.x
|
19:51:56
|
*** downey has joined #openmrs
|
19:51:56
|
*** OpenMRSBot sets mode: +o downey
|
19:51:56
|
*** ChanServ sets mode: +o downey
|
19:52:24
|
<mseaton> knowing us, we may well be running a 1.6.4-ish version in rw and a 1.6.5-ish version in haiti
|
19:52:39
|
<mseaton> eg. whatever was 1.6.x at the time we last deployed the war there
|
19:52:59
|
<mseaton> i could provide the specific build numbers
|
19:53:20
|
<mseaton> but they are not custom
|
19:54:31
|
<bwolfe> I was thinking it was teh auditable interceptor...but that was in 1.6.3+ https://tickets.openmrs.org/browse/TRUNK-1930
|
19:55:56
|
<MarkG> i'm pretty sure the 1.6.5 we are running in haiti is the real 1.6.5... the 1.6.4 in rwanda is custom
|
20:00:05
|
<suranga> mm.. I'll be signing out for the day guys... have a good weekend !
|
20:01:13
|
<wyclif> so mseaton you are saying the problem is only in 1.6.5+ versions os openmrs?
|
20:02:41
|
<djazayeri> I'm back at my desk
|
20:02:42
|
<mseaton> wyclif: not 100% sure. we should set up test environments for 1.6.4 + sync and 1.6.5 + sync, and see what happens when mds-1.0.5 is installed in each
|
20:05:45
|
<wyclif> mseaton, so i will test mds-1.0.5 with 1.6.4, 1.6.5, latest 1.7, latest 1.8 and 1.9.x
|
20:06:15
|
<mseaton> wyclif: yes, if you are trying to fix the actual problem now.
|
20:06:27
|
<mseaton> i'd start with 1.6.4 and 1.6.5
|
20:06:51
|
<mseaton> the key is identifying exactly what the issue is. once we have that, it will be easier to figure out where a fix is needed
|
20:07:10
|
<djazayeri> wyclif: I'd recommend that you first build the breaking version of MDS 1.0.5.1
|
20:07:50
|
<wyclif> darius was saying first we stop mds from running if sync is running before going into the cause of the problem
|
20:07:52
|
<djazayeri> Better to try the detailed debugging when Rafa is online, since he has done the most recent research on hibernate-related magic
|
20:08:23
|
<mseaton> agree
|
20:18:51
|
*** suranga has quit IRC
|
20:21:34
|
<dileepsisila> bwolfe: i got this exceptions
|
20:21:35
|
<dileepsisila> http://pastebin.com/ZKNMBmcN
|
20:21:46
|
<dileepsisila> can u say hw can i fix it
|
20:25:14
|
<djazayeri> dileepsisila: is this error in the unmodified version of the code you checked out"?
|
20:32:44
|
<dileepsisila> djazayeri: i used that version https://svn.openmrs.org/openmrs-modules/metadatasharing/
|
20:32:57
|
<djazayeri> dileepsisila: /trunk?
|
20:33:21
|
<dileepsisila> yes
|
20:34:10
|
<djazayeri> dileepsisila: I don't know if that error is known, or if it has something to do with the version of OpenMRS/tomcat you're running
|
20:34:21
|
<djazayeri> you should email rafal, the module owner
|
20:34:23
|
<djazayeri> rafal@openmrs.org
|
20:35:47
|
<djazayeri> perhaps first you should google for "Unable to load tag handler class" and see if it's a known issue with openmrs and/or your version of tomcat
|
20:35:49
|
<bwolfe> not sure. is it this issue dileepsisila ? https://tickets.openmrs.org/browse/TRUNK-2272
|
20:35:54
|
<djazayeri> what version of core openmrs are you using?
|
20:38:20
|
<dileepsisila> i used development trunk
|
20:38:21
|
<dileepsisila> openmrs
|
20:38:28
|
<dileepsisila> for the development
|
20:38:50
|
<djazayeri> dileepsisila: I think that metadata sharing is known not to work with OpenMRS 1.9+
|
20:39:59
|
<dileepsisila> i download new openmrs version and upload metadata sharing module
|
20:40:07
|
<dileepsisila> then we wil see
|
20:40:30
|
<djazayeri> dileepsisila: I think that if you want to use Metadata Sharing, you have to go back to the latest stable OpenMRS release, in sthe 1.8.x line
|
20:40:45
|
*** chopin has quit IRC
|
20:41:26
|
<djazayeri> dileepsisila: generally speaking, if you are trying to use OpenMRS, unless you are doing core development, you should be running a stable version
|
20:41:37
|
<bwolfe> mseaton, whats should the format of a sql data definition be?
|
20:42:19
|
<dileepsisila> is 1.8 is best stable version
|
20:42:55
|
*** dileepsisila has quit IRC
|
20:44:27
|
<djazayeri> dileepsisila: the latest stable version can be found at http://openmrs.org/download/ and the code for it at svn.openmrs.org/openmrs/tags
|
20:44:38
|
<djazayeri> (but he's no longer hereâ¦)
|
20:46:07
|
<downey> there's always the logs....
|
21:02:06
|
<MarkG> djazayeri: dave just reminded me that the mds/sync issue may have been what was causing the problem for that guy on the dev list from a week ago...
|
21:02:23
|
<djazayeri> yeah, we should email him, actually.
|
21:03:00
|
<mseaton> bwolfe: i don't think we have a Sql Data Definition, do we?
|
21:03:10
|
<mseaton> do you mean SqlDataSetDefinition ?
|
21:03:27
|
<bwolfe> yeah, data set def
|
21:03:43
|
<djazayeri> MarkG or mseaton: can one of you send a brief email to dev and implementers, saying Important and using CAPS to say that there's a suspected serious problem with MDS 1.x and Sync, and you should stop using MDS with sync until further notice?
|
21:03:44
|
<mseaton> have a look at SqlDataSetEvaluatorTest
|
21:04:28
|
<MarkG> mseaton: can you handle that since i'm working on fixing haiti? :)
|
21:05:49
|
<bwolfe> djazayeri, at least 3 different fonts and 4 diff colors should be used as well :-p
|
21:06:06
|
<djazayeri> I was going to leave the font choice to mseaton
|
21:13:20
|
<mseaton> djazayeri - what if there is someone else currently running this. should i address them / give them some further instructions?
|
21:14:47
|
*** nadee has joined #openmrs
|
21:14:48
|
<djazayeri> mseaton: how about adding a line saying "If you're in this situation, reply, and I have some suggestions for how to clean up your data. And if you're running sync and a recent version of MDS, but things are working fine for you, please let us know that too, it will help with the debugging."
|
21:22:50
|
<nadee> djazayeri : hi daruis, got a minute please? Its regarding https://tickets.openmrs.org/browse/TRUNK-2894
|
21:23:04
|
<djazayeri> sure, what's up?
|
21:25:16
|
<nadee> I have edited the messages.properties, and the interface looks ok with it, but there are lines such as "Patient.delete=Delete Patient" and another line "Patient.void=Void Patient"
|
21:26:02
|
<djazayeri> nadee: are there many of them?
|
21:26:08
|
*** mseaton has left #openmrs
|
21:26:09
|
<djazayeri> I mean: are there many examples like this?
|
21:26:34
|
<djazayeri> In that particular case, I believe you want to change it to Patient.void=Delete Patient, and Patient.delete=Delete Patient Forever
|
21:26:35
|
<nadee> the messages.properies has only one reference
|
21:27:20
|
<djazayeri> nadee: in the beginning we used Void to mean "mark as deleted in the database" and Purge to mean "really delete from the database"
|
21:27:25
|
*** snoppy has quit IRC
|
21:27:47
|
<djazayeri> then we started being a bit inconsistent, and sometimes using "Delete" instead of "Purge"
|
21:27:58
|
<nadee> alright, I was hoping to change only the "purge" references as deleted forever
|
21:28:00
|
<djazayeri> Basically, we want to standardize on terms that make more sense.
|
21:28:46
|
<djazayeri> nadee: I think that in the first pass you should: (1) change all void -> delete, (2) change all purge -> delete forever, (3) find all other things that have the word delete, and need to be reviewed.
|
21:29:50
|
<nadee> great, on first pass I'll leave the references with delete as it is, and proceed
|
21:30:41
|
<djazayeri> nadee: but do identify all the ones with delete to it's easy to go back to them
|
21:33:02
|
<wyclif> hi djazayeri
|
21:33:07
|
<djazayeri> hi wyclif
|
21:33:25
|
<wyclif> djazayeri, what version are the PIH guyr using?
|
21:33:34
|
<wyclif> sync version
|
21:33:59
|
<djazayeri> wyclif: no idea
|
21:34:00
|
<djazayeri> MarkG: ?
|
21:34:30
|
<wyclif> MarkG, what version of sync are you guys using?
|
21:34:53
|
<wyclif> MarkG, because the latest requires openmrs 1.8.3
|
21:35:51
|
<nadee> djazayeri: so this changing procedure applies on everything equally? I mean for patients, persons, visits.. all with : (1) change all void -> delete, (2) change all purge -> delete forever, (3) find all other things that have the word delete, and need to be reviewed.
|
21:35:52
|
<MarkG> good point...
|
21:35:55
|
<wyclif> djazayeri, the sync release i.e 1.xxx all require 1.8.3
|
21:36:00
|
<MarkG> we are using the head of the 1.6.x-compatible branch...
|
21:36:06
|
<MarkG> which is 0.975-SNAPSHOT
|
21:36:16
|
<wyclif> so am wondering how you are managing to run sync on 1.6.x
|
21:37:09
|
<wyclif> MarkG, may be that also poses some issues
|
21:38:02
|
<wyclif> because i believe it requires 1.8.3 because the chainining interceptor was added later it is key for sync to work
|
21:38:35
|
<wyclif> and this might explain why the sync interceptor might be failing
|
21:38:43
|
<wyclif> or not found
|
21:39:20
|
*** bryq has left #openmrs
|
21:40:11
|
<MarkG> wyclif: good point. although i know i made a fix in core or somewhere to handle a similiar chaining interceptor problem... we do have multiple hibernate interceptors running on our production servers... either name phonetics or address hierarchy (i forget) has a hibernate interceptor as well; these were conflicting until a core change was made
|
21:42:06
|
<wyclif> djazayeri, am supposed to send the swim lane update to dev or core devs?
|
21:42:29
|
<wyclif> i.e devlist or core devs/sprinters
|
21:42:35
|
<djazayeri> wyclif: to dev and implemeenters
|
21:42:41
|
<wyclif> ok
|
21:43:08
|
<djazayeri> wyclif: one purpose of the email is to let people know that we now have someone doing active bug-fixes on highly-voted issues
|
21:44:02
|
<djazayeri> wyclif: so in the email, please list which bugs you fixed, and very briefly why you chose them.
|
21:57:29
|
<djazayeri> wyclif: status on a fail-if-sync version of MDS?
|
21:59:08
|
<wyclif> sync requires 1.8.3 so i havent yet successfully got running on 1.6.5 or 1.6.4
|
21:59:14
|
<wyclif> djazayeri, sync requires 1.8.3 so i havent yet successfully got running on 1.6.5 or 1.6.4
|
21:59:28
|
<djazayeri> wyclif: you need that for testing?
|
21:59:43
|
<wyclif> djazayeri, i have had a couple of discussion with mike, mark and ben though whileyou were away
|
21:59:48
|
<djazayeri> wyclif: okay
|
22:00:26
|
<djazayeri> It would seem to me like building an omod and sending it to mark to try dropping in his test setup might be easier than getting sync running on 1.6 yourself
|
22:01:00
|
<wyclif> according to mike they say they were able to have both running 1.6.4 and not 1.6.5 so i have to test these and find out first of if this is true and then why
|
22:01:48
|
<wyclif> djazayeri, they actually dint go with the option of just stopping mds from running if sync is installed
|
22:02:19
|
<wyclif> djazayeri, because if it works on 1.6.4, they suggest we instead fix why it is failing in 1.6.5
|
22:02:55
|
<djazayeri> MarkG and mseaton said that?
|
22:03:13
|
<MarkG> what are you talking about?
|
22:03:16
|
<wyclif> djazayeri, and am not sure i have time to work on this today given the day has actually ended
|
22:03:49
|
<djazayeri> nadee: sorry, missed your message earlier, but yes, the void/delete rephrasing applies to everything.
|
22:03:51
|
<wyclif> MarkG, mike said mds and sync run fine on 1.6.4 , right?
|
22:04:20
|
<djazayeri> wyclif: yeah, the day is over.
|
22:04:36
|
<MarkG> wyclif: it *appears* to run fine
|
22:04:49
|
<djazayeri> the original point was to *not* investigate the exact cause, but to quickly release a version that would break in a case we're not sure about
|
22:05:14
|
<djazayeri> and get that out ASAP, until we've had a chance to understand and solve the underlying problem
|
22:05:36
|
<djazayeri> wyclif: I still have a couple hours today; any code you'd like to pass along to me?
|
22:06:02
|
<djazayeri> (MarkG: unless you think that it's not worth releasing the stop-in-presence-of-sync version of MDS?)
|
22:06:24
|
<MarkG> how is it that we have an object like Obs that extends BaseOpenmrsData but yet doesn't have a date_changed db field?
|
22:06:55
|
<djazayeri> MarkG: because obs aren't really editable
|
22:07:03
|
<djazayeri> or shouldn't be
|
22:07:25
|
<MarkG> MarkG: i don't know re mds. i would just pull the omods over the weekend... or flag them with a warning, if that is possible
|
22:08:21
|
<MarkG> i know why we don't want to store a date_changed for obs... so we just don't map the field to the db?
|
22:09:46
|
*** downey has quit IRC
|
22:10:05
|
<OpenMRSBot> Recent updates in the world of openmrs: On Twitter: OpenMRS: If you use the #OpenMRS Metadata Sharing and Sync modules together, read this important announcement: https://t.co/2tG4hnNd <http://twitter.com/OpenMRS/statuses/190917819553161217>
|
22:10:11
|
<MarkG> it is just annoying because i want to iterate over all OpenmrsObjects and create a query for each one where date_changed > some_date AND date_created > some_date
|
22:11:07
|
<MarkG> of course, not all the objects have a dateCreated and dateChanged... but i was hoping i could just use reflection over the fields of an object to see if it has a dateCreated and dateChanged...
|
22:11:52
|
<djazayeri> MarkG: you'll have to try/catch it seems.
|
22:12:02
|
<MarkG> yep...
|
22:12:20
|
<wyclif> djazayeri, no code
|
22:12:27
|
<djazayeri> okay
|
22:13:02
|
<djazayeri> wyclif: I'll take the issue, go ahead and send out the bugfix swim lane email, and enjoy the weekend!
|
22:13:09
|
<djazayeri> brb
|
22:13:11
|
<wyclif> djazayeri, when mike and mark jumped i got distracted and didn't want to write any code given they had different views
|
22:13:19
|
<wyclif> thanks djazayeri
|
22:13:28
|
<wyclif> jumped in
|
22:28:44
|
<nadee> djazayeri : np, thanks darius, btw asking this just in case to get your view: I hope I have to edit both the property name as well as the value (i.e. "patient.void"=Void Patient ==> "patient.delete"=Delete Patient) and change the JSPs calling the lefthand side as well.. I mean prior to submitting the patch.. Or, is it only required that I change the righthand side only? (i.e. the value)
|
22:29:03
|
<djazayeri> nadee: I think only the value
|
22:30:01
|
<djazayeri> the benefit of having things in messages.properties files is they can be easily edited without having to change all the places that reference them
|
22:30:47
|
<nadee> djazayeri: yeah, but I thought having the term voided appearing on the properties file may be ambiguous
|
22:31:11
|
<nadee> djazayeri: will get this done on value, np! thanks
|
22:34:04
|
*** MarkG has quit IRC
|
22:34:29
|
*** MarkG has joined #openmrs
|
22:39:24
|
*** MarkG has quit IRC
|
22:52:14
|
*** bwolfe has quit IRC
|
23:00:17
|
*** bwolfe has joined #openmrs
|
23:00:17
|
*** ChanServ sets mode: +o bwolfe
|
23:17:40
|
*** wyclif has quit IRC
|
23:40:50
|
*** MarkG has joined #openmrs
|
23:51:05
|
<MarkG> djazayeri: will test your omod out now
|
23:51:16
|
<djazayeri> MarkG: great, thanks!
|
23:51:24
|
<djazayeri> (Didn't know if you were still online.)
|
23:54:03
|
<MarkG> djazayeri: just back
|
23:54:14
|
<MarkG> djazayeri: works fine... module doesn't start, sync still works...
|
23:54:23
|
<djazayeri> wonderful, I'll upload to the module repo then
|
23:54:40
|
<MarkG> djazayeri: the only downside would be the startup error doesn't explain why, but i would't worry about that
|
23:54:57
|
<MarkG> djazayeri: thanks for doing this
|
23:54:59
|
<djazayeri> MarkG: I blame OpenMRS core for that. I put meaningful text in the RuntimeException I threw...
|
23:55:08
|
<djazayeri> it's in the logs...
|
23:55:19
|
<djazayeri> thoughts about a better way?
|
23:57:37
|
<djazayeri> meh, whatever, uploading to the repo before 5pm
|