IRC Chat : 2008-12-18 - OpenMRS

00:13:56 *** kapten_yuba has joined #openmrs
00:25:24 *** kapten_yuba has left #openmrs
00:54:27 *** bmckown has quit IRC
01:08:34 *** nribeka has quit IRC
01:09:02 *** nribeka has joined #openmrs
01:18:35 *** [mharrison] has joined #openmrs
01:38:53 *** nribeka1 has joined #openmrs
01:39:42 *** jacobb has quit IRC
01:41:58 *** nribeka has quit IRC
01:56:12 *** jacobb has joined #openmrs
02:09:22 *** nribeka1 has quit IRC
02:23:54 *** upul has joined #openmrs
02:49:23 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Tickets: Ticket #1178 (defect created): hexString in src/api/org/openmrs/util/Security.java does not properly hexify string <http://dev.openmrs.org/ticket/1178>
02:57:19 *** atomicturtle has joined #openmrs
03:18:23 *** atomicturtle has quit IRC
03:40:43 *** atomicturtle has joined #openmrs
04:56:51 *** nribeka has joined #openmrs
05:05:09 *** nribeka1 has joined #openmrs
05:22:57 <r0bby> somebody needs to slap me around
05:24:25 *** njero has quit IRC
05:26:35 *** nribeka has quit IRC
05:26:54 *** njero has joined #openmrs
05:26:54 *** ChanServ sets mode: +v njero
05:40:02 *** nribeka has joined #openmrs
06:04:13 *** nribeka1 has quit IRC
06:20:05 *** nribeka has quit IRC
08:18:41 *** nribeka has joined #openmrs
09:42:59 *** upul has quit IRC
11:18:27 *** upul has joined #openmrs
11:38:03 *** upul has quit IRC
12:42:53 *** james_regen has joined #openmrs
12:42:53 *** ChanServ sets mode: +v james_regen
15:02:10 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6423]: -- chica * fixed redundant reads in mlms * fixed compile error in … <http://dev.openmrs.org/changeset/6423> || OpenMRS Changesets: Changeset [6422]: -- openmrs logic branch * fixed getResultList method generation <http://dev.openmrs.org/changeset/6422>
15:24:48 *** atomicturtle has quit IRC
15:28:54 *** bwolfe has joined #openmrs
15:28:54 *** ChanServ sets mode: +o bwolfe
15:47:19 *** bwolfe_ has joined #openmrs
15:47:19 *** ChanServ sets mode: +o bwolfe_
15:49:21 *** bwolfe has quit IRC
15:52:34 *** bwolfe_ is now known as bwolfe
15:53:18 *** james_regen has quit IRC
15:58:32 *** nribeka1 has joined #openmrs
15:59:00 *** james_regen has joined #openmrs
15:59:01 *** ChanServ sets mode: +v james_regen
15:59:14 *** atomicturtle has joined #openmrs
16:04:58 *** nribeka has left #openmrs
16:08:40 <nribeka1> bwolfe
16:08:45 <nribeka1> question :)
16:08:50 <bwolfe> yessir
16:09:38 <Echidna> me2!
16:10:01 <nribeka1> he :D
16:10:22 <nribeka1> let's split bwolfe for both of us Echidna
16:10:52 <nribeka1> about the update the user / patient thing
16:10:54 *** kapten_yuba has joined #openmrs
16:10:57 <Echidna> ok, i take the upper part
16:11:02 *** kapten_yuba has left #openmrs
16:11:10 *** bwolfe is now known as bwolfex2
16:11:29 *** bwolfex2 is now known as bwolfe
16:11:32 <nribeka1> i try to write simple class to update the database using api
16:12:02 <nribeka1> so, what i did:
16:12:14 <nribeka1> 1. get all the users
16:12:56 <nribeka1> 2. iterate through all the users and try to get if there's patient with patient_id = user_id
16:13:55 <nribeka1> 3. if i found the patient, create a new person (duplicate the person) and then attach the patient to the new person
16:14:03 <nribeka1> what do you think bwolfe?
16:14:18 <nribeka1> or is it easier to use sql command to do this?
16:14:45 <nribeka1> i'm just afraid that i will miss something if i use the sql directly
16:14:46 <bwolfe> nribeka1: using the api would be easier to duplicate the patient data, etc
16:15:13 <bwolfe> nribeka1: but a sql statement is faster to find/replace patients that are set as creator/changed_by
16:16:05 <Echidna> why would you wanna do that =o
16:16:20 <Echidna> need patients/users?
16:17:31 <nribeka1> bwolfe, when i try to find patient with the same user id using PatientService.getPatient(Integer patientId) --> i get the IllegalArgumentException
16:17:31 <Echidna> bwolfe: my question is regarding infopath, again
16:17:44 <bwolfe> nribeka1: or you could just fix core so that patients/users can coexist. :-D
16:17:52 <Echidna> lol
16:17:59 <nribeka1> ups ... :(
16:18:08 <Echidna> i thought thats a hibernate issue
16:18:09 <nribeka1> looks a hard task :P
16:18:44 <Echidna> i "solved" that issue by deleting traces of users who are also patients
16:18:49 <Echidna> overwriting the creator id
16:19:17 <nribeka1> how did you do that Echidna?
16:19:33 <Echidna> manually set creator=1; =P
16:19:36 <nribeka1> updating all patient record?
16:19:48 <Echidna> i'm not sure what your intention is
16:20:03 <Echidna> it worked for me because i dont really need the creator to be identifiable
16:20:12 <Echidna> just be able to enter data
16:20:53 <Echidna> bwolfe: i have a button in infopath thats supposed to load locations, but it throws a run time error and asks to open a debugger
16:20:57 <nribeka1> i want to do that too (i think). but it will also affect the changedBy and this I think will keep on happening in the future if we don't separate the user / patient
16:21:50 <Echidna> people have been suggesting independent IDs lately
16:22:04 <Echidna> with user.getPerson()
16:22:06 <Echidna> etc
16:24:37 <bwolfe> Echidna: https://www.slashtmp.iu.edu/public/download.php?FILE=bawolfe/10516iRovtb
16:24:40 <OpenMRSBot> <http://ln-s.net/2_eW> (at www.slashtmp.iu.edu)
16:24:45 <bwolfe> Echidna: thats an example xsn
16:24:59 <bwolfe> Echidna: its actually one that we use for ampath in kenya
16:25:07 <Echidna> bwolfe: can you pm me that url plz
16:25:08 <bwolfe> it has the location selector
16:25:13 <Echidna> firefox is gonna take ages to up date now
16:25:17 <Echidna> and i gotta run home
16:25:30 <Echidna> ah nm i saved it
16:25:31 <bwolfe> sure
16:25:32 <Echidna> thx
16:25:39 <bwolfe> we also log everything, remember?
16:25:42 <bwolfe> !irclogs
16:25:42 <OpenMRSBot> bwolfe: "irclogs" --- The OpenMRS IRC logs are publicly displayed online: http://dev.openmrs.org/irclogs
16:25:46 <bwolfe> :-)
16:26:11 <Echidna> yea, thats actually kinda creepy
16:26:54 <Echidna> ok gotta run, bbl
16:27:01 <nribeka1> bwolfe, how do i duplicate the person?
16:27:09 <nribeka1> manually call the getter and setter?
16:27:40 <bwolfe> nribeka1: are you duplicating the user or the patient ?
16:27:44 <nribeka1> and if we want to go with sql, how do we separate user / patient
16:28:18 <nribeka1> my plan is --> duplicate person and then attach the patient to this new person (updating the patient_id_
16:34:43 <nribeka1> bwolfe
16:34:53 <nribeka1> hahaha
16:35:17 <bwolfe> nribeka1: that might work
16:35:23 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Tickets: Ticket #1179 (enhancement created): Modules should undo what it added to the database when unloaded <http://dev.openmrs.org/ticket/1179>
16:36:36 <bwolfe> but you might miss something
16:36:46 <bwolfe> you have to move all obs
16:36:48 <nribeka1> something like what bwolfe?
16:36:50 <bwolfe> and encoutners
16:36:53 <bwolfe> and programs
16:37:03 <bwolfe> and whatever modules have added that point at patient_ids
16:37:05 <nribeka1> ooo yeah :(
16:37:54 <bwolfe> I'd rather you spend your quality programming cycles starting on the road of that person_id/patient_id/user_id separation
16:37:56 <bwolfe> :-D
16:38:10 <nribeka1> hahaha ...
16:38:49 <bwolfe> seriously, its not that hard. you've done much harder programming...
16:38:57 <bwolfe> and you already understand the datamodel, hibernate, etc
16:39:09 <bwolfe> I think you're a perfect candidate to do it :-)
16:39:38 <bwolfe> plus, you would win free beer from jeff rafter when you finished
16:39:39 <nribeka1> so, the quickest solution for now is updating the database and set it to = 1 like Echidna said early on?
16:39:45 <nribeka1> hahaha ...
16:39:52 <nribeka1> you better teach me how to :P
16:40:18 <nribeka1> it's vacation time and i don't have plan to go anywhere so i think i have time to do it
16:41:32 <bwolfe> nribeka1: yeah, the quickest solution for james is to just change the creator for all rows where user_id in (select patient_id from patient)
16:44:52 *** nribeka has joined #openmrs
16:46:15 <bwolfe> nribeka: are you staying in pittsburgh ?
16:46:24 <nribeka> creator + changed_by bwolfe
16:47:04 <nribeka> yeah, trying to stay warm inside and watching nfl and ncaa on weekends :P
16:47:28 <bwolfe> nribeka: did you check to see how much plane tickets home would have cost ?
16:49:03 <nribeka> home to bali?
16:49:26 <nribeka> two ways ticket would be around $1800
16:49:55 <nribeka> and there's only 3 weeks left on the vacation :(
16:50:53 <bwolfe> yeah, thats pretty steep for only a 3-4 week visit
16:53:19 <nribeka> yeps
16:53:35 <nribeka> that's why staying home is the best for now :P
16:54:45 <nribeka> are u going somewhere bwolfe?
16:55:08 <bwolfe> nribeka: might be coming to pittsburgh for 1/2 days
16:55:13 <bwolfe> but thats all
16:55:35 <nribeka> james_regen, bwolfe said that the quickest solution for James Arbaugh for now is updating the database using "update" command
16:56:06 <nribeka> ah you're coming to Pittsburgh, we might be able to meet up then :)
16:58:35 <nribeka> i'm off to school library bwolfe
16:58:38 <nribeka> brb
16:59:19 <bwolfe> yep, we should try to meet. The problem is that I'm not sure if I'll be down near you or up in Beaver
17:00:18 <nribeka> ah ic ic
17:00:24 <nribeka> we can try :)
17:00:30 <nribeka> just let me know bwolfe :D
17:00:36 <nribeka> off now
17:00:44 *** nribeka has left #openmrs
17:05:37 *** nribeka1 has quit IRC
17:37:36 *** nribeka has joined #openmrs
18:40:34 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6425]: -- chica * fixed a compile error (sorry) <http://dev.openmrs.org/changeset/6425> || OpenMRS Changesets: Changeset [6424]: -- chica * added some code to allow aop calls to be handled in multiple … <http://dev.openmrs.org/changeset/6424>
18:50:36 <nribeka> bwolfe
18:50:42 <nribeka> quickest
18:51:03 <bwolfe> quickest?
18:51:06 <nribeka> ups
18:51:12 *** kapten_yuba has joined #openmrs
18:51:39 <nribeka> sorry my bad. i want to ask if we want to update the database
18:52:14 <nribeka> then we will need to update the entire field that has user type to 1, right bwolfe?
18:52:37 <bwolfe> nribeka: you don't have to set it to 1
18:52:44 <bwolfe> you can set it to some other user
18:52:46 <bwolfe> or some dummy user
18:53:50 <nribeka> but every field right bwolfe?
18:55:12 <bwolfe> you only have to do it for ones where the patient might be loaded at the same time
18:55:19 <bwolfe> so probably only for encounters/obs/programs
18:55:29 <bwolfe> but both creator and changed_by if they have them
18:55:48 <bwolfe> and only for user_ids that are also patient_ids (not _all_ rows)
18:58:57 <nribeka> how can i know that which patient and user are loaded at the same time?
19:01:16 <bwolfe> nribeka: I just meant those type of objects
19:03:18 <nribeka> so it's like this:
19:05:35 <nribeka> update patient set creator = 1 where patient_id in (select users.user_id as patient_id from users left join patient on users.user_id = patient.patient_id)
19:06:42 <nribeka> i hope the query is correct bwolfe
19:06:43 <nribeka> :P
19:08:26 <bwolfe> negative
19:08:52 <bwolfe> update patient set creator = 1 where creator = patient_id; would be one thing
19:08:58 <bwolfe> that might solve it completely
19:09:11 <bwolfe> update patient set changed_by = 1 where changed_by = patient_id
19:09:33 <bwolfe> if other patients+users have been editing a patient, you have to do:
19:09:44 <bwolfe> update patient set creator = 1 where creator in (select patient_id from patient);
19:13:39 <nribeka> ah ic ic
19:13:49 <nribeka> i think the last will work with all
19:14:38 *** atomicturtle has left #openmrs
19:20:45 <nribeka> :(
19:20:46 <nribeka> You can't specify target table 'patient' for update in FROM clause
19:22:00 *** kapten_yuba has left #openmrs
19:22:52 <bwolfe> ah yes
19:23:04 <bwolfe> create a temp table with just a patient_id column
19:23:05 <bwolfe> then do
19:23:52 <bwolfe> insert into users_and_patients (patient_id) (select patient_id from patient where patient_id in (select user_id from user));
19:30:15 <nribeka> so the steps are:
19:30:41 <nribeka> create table users_and_patients (patient_id integer);
19:30:49 <nribeka> insert into users_and_patients (patient_id) (select patient_id from patient where patient_id in (select user_id from users));
19:31:03 <nribeka> update patient set creator = 1 where creator in (select patient_id from users_and_patients);
19:31:15 <nribeka> drop table users_and_patients;
19:31:17 <nribeka> right bwolfe?
19:32:07 <bwolfe> something like that
19:32:19 <bwolfe> not sure on the create syntax, I always have to look that up
19:33:50 <nribeka> i think the syntax is correct :)
19:50:29 *** njero has quit IRC
20:15:23 *** Keelhaul has joined #openmrs
20:15:25 *** ChanServ sets mode: +v Keelhaul
20:15:28 <OpenMRSBot> Recent updates in the world of openmrs: Ben Wolfe: Merge Problems with Inconsistent Newlines in SVN <http://blog.eflow.org/archives/162>
21:21:35 *** james_regen has quit IRC
21:35:38 *** pygi has joined #openmrs
21:46:10 *** bwolfe has quit IRC
21:47:41 *** Mario__ has joined #openmrs
21:47:47 *** pygi has quit IRC
21:50:55 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6426]: 1.3.x branch: Committing changes for the 1.3.3 release <http://dev.openmrs.org/changeset/6426>
22:17:12 *** Mario__ has quit IRC
22:22:57 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6427]: trunk and 1.4.x: Updating the update-scripts-to-latest.sh script to make … <http://dev.openmrs.org/changeset/6427>
23:04:16 *** pearlbear has joined #openmrs
23:04:16 *** ChanServ sets mode: +v pearlbear
23:22:12 *** kapten_yuba has joined #openmrs
23:22:23 *** kapten_yuba has left #openmrs
23:35:29 *** nribeka has left #openmrs
23:45:20 *** kapten_yuba has joined #openmrs
23:45:44 *** kapten_yuba has left #openmrs