gnumed-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnumed-devel] Open Source Health Informatics, London, 30th Sep 2010


From: Luke Kenneth Casson Leighton
Subject: Re: [Gnumed-devel] Open Source Health Informatics, London, 30th Sep 2010
Date: Fri, 13 Aug 2010 21:46:50 +0100

On Fri, Aug 13, 2010 at 12:17 AM, Jim Busser <address@hidden> wrote:
> On 2010-08-12, at 2:23 PM, lkcl wrote:
>
>> late so quick reply.
>>
>> * i'd like to do a demo even if i have to write in 30 mins a pyjamas-based
>> "quick grid" where i am forced to type in the clin.lab_request pk in an
>> input box.
>
> Please acknowledge that the German workflow which spawned "lab request" as a 
> potential test *driver* is NOT REFLECTIVE of the Canadian (BC.CA) workflow by 
> which labs return.
>
> In Canada, the lab request will exist *only* on the *paper* order that was 
> generated by the ordering provider WHO MAY OFTEN NOT BE A MEMBER OF THE 
> PRAXIS or who may have completed the test order paperwork at the hospital.
>
> So --- except when GNUmed will later generate a pk *together* with a paper 
> order that a path lab will accept and even then this only covers a subset of 
> the incoming lab test results --- there will exist *no* record in 
> clin.lab_request for the incoming labs to match "against".
>
> If and when GNUmed would generate a pk which could be included in the round 
> trip to the lab and then returning with the results, this will cover only 
> those lab requests generated from inside the praxis and from inside GNUmed. 
> In all other cases,
>
>        ORC 004 Placer Group Number (External Order ID eg:  Requisition number)
>
> will either be null, or it will be a foreign pk originating from some foreign 
> praxis and irrelevant to GNUmed.
>
> So I had thought that maybe you were auto-creating a match inside 
> clin.lab_request when none seemed to already exist, but figured I should make 
> this question and answer explicit :-)
>
> -- Jim
>
>

        # for each ORC, look up a lab request, create if necessary
        # and update it.
        for lr in self.ORC:
            try:
                req = cr.get_lab_request(req_id=lr.filler_order_number,
                                         lab=test_org_pk)
            except ValueError:
                req = None
            if not req:
                req = cr.add_lab_request(lab=test_org_pk,
                                         req_id=lr.filler_order_number,
                                         encounter_id=enc_pk,
                                         episode_id=ep_pk)

 note that that's ORC 003 - filler_order_number.

 ORC 004 - placer group number - is in fact entirely ignored.
*double-checks*.... yep, it's not even stored anywhere, let alone
checked.  likewise ORC 002 - placer order number - is also ignored.

 if however you're telling me that ORC003 can be None then we're
slightly stuffed (that's an understatement, btw), as the whole thing
grinds to a halt because you'll be unlikely to ever successfully
identify a lab request.

l.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]