Thank you for your
explanation
Vrinda, it was very
illustrative.
I tried to use the solution using the merge attribute:
IssuerOfPatientID={PatientName,hash}-{PatientBirthDate} and it worked great with the new incoming studies since the date that i've set this attribute coercion rule.
But i'm still having problems with patients received before setting the coercion rule.
Lets suppose i received a study with patient "TOM" and patient ID "100", before setting the coercion rule. So this patient dont have "issuer of patient id" his issuer is blank.
The problem is that, before setting the attribute coercion rule, we dont had a RIS yet. So the
radiology technicians filled the patient id with a random number "100", he do not is the real owner of this patient id number.
But now, we have a RIS, and the patient "GARY" that is a real owner of patient id "100" make a new recent study.
i Noticed that dcm4chee do not create a new patient called GARY with issuer
"{PatientName,hash}-{PatientBirthDate}" as expected.
Instead of it, dcm4chee took "TOM" as owner of the new study, and gave to "TOM" the issuer with
"{PatientName,hash}-{PatientBirthDate}" , using "GARY" attributes ! the hash was made with "GARY's" Name, and the "GARY's" birthdate !
So,
should it really work this way?
But this workaround will take long time, and will be very risky...
Its very simple to reproduce this problem, is just setup a fresh dcm4chee container with no
attribute coercion rule, then send a study to dcm4chee, that have, for example id "100". As expected this study will have blank issuer.
now set
attribute coercion rule with
Merge Attribute field to IssuerOfPatientID={PatientName,hash}-{PatientBirthDate}
, and send a new study with another name, but with the same patient id "100" .
You will notice that the new patient is not created, and the old patient will receive issuer with name-hash+birthdate of the new patient.