go to post Ron Sweeney · Sep 18, 2024 Ive used the reverse method like this, in a BP, converting a CCDA to SDA, then SDA to FHIR... set fhir=##class(HS.FHIR.DTL.Util.API.Transform.SDA3ToFHIR).TransformStream(sdaStream,"HS.SDA3.Container","R4") It has a counterpart that does what you are asking for in HS.FHIR.DTL.Util.API.Transform.FHIRToSDA3 which may be the method you need in a business process.
go to post Ron Sweeney · Mar 11, 2024 Objectscript for both Install and post configuration is here:https://docs.intersystems.com/healthconnectlatest/csp/docbook/DocBook.UI...Some of the examples in open exchange, like the iris-oauth-fhir one have very straight forward examples:https://github.com/grongierisc/iris-oauth-fhir/blob/main/iris.script
go to post Ron Sweeney · Mar 8, 2024 Great discussion/question... Disadvantages that come to mind: support of $all operation is on the patient resource yet another resource to consider for merges and outside of newer ops like $merge "RelatedPerson" is built on a codified Relationship type you should ensure meets the use case. Patient has a relationship that rolls up to the Account object (guarantor), Person does not. In general on the mapping of known classifications implemented in our practices:Account = GuarantorPatient = A "Person" with at least one: visit or encounter or claim or social need/fulfillment.Person = Established identity with no visits or encounter, used for proxy access to records, not tied to the account , but exists for oauth2 scopes.RelatedPersons = known children or persons without workload relevance. (use this in SDOH heavily) As an example of our lastest use case of the Person resources:Social needs web wizard, that collected QuestionairreResource responses and tied them to a "Person" as the identity was not proofed until contact was met with the "Person" by the Social Navigator. Upon contact, a more formal "Patient" record was created to attach the ServiceRequest to.hope some of that helps, mostly brain dumping here...
go to post Ron Sweeney · Dec 29, 2023 Hi Pierre, I use and see it resident in code bases... $$$AddAllRoleTemporary It It adds %ALL in %SYS... compiles to: i '($e($roles,1,$l("%All"))="%All") { n $ET,$roles s $ET="",$roles=$roles_","_"%All"} Basically adds %All to the current execution role. I asked the question of @Eduard Lebedyuk some time ago and paying his wisdom forward.
go to post Ron Sweeney · Apr 4, 2022 Follow up here, apache conf needed a directive for the move forward.The previous Gateway/IRIS combination did not require the below apache directive, but the upgraded setup certainly required. <Location /> CSP On </Location> Docs do not really show it called out directly to turn on this apache directive for the root at all in the documentation but that is what was done to make it compatible in the declared version combination in case you run into this combo on similar configurations.Thanks to Connie at the WRC for taking an in-depth look in short order.
go to post Ron Sweeney · Dec 12, 2019 Solved this. Basically used the "D" and "T" for the trailing characters but did not include it as a mapped field. Inferred the value later on in the transform.
go to post Ron Sweeney · May 17, 2019 Has anybody happened to get MQ inbounds working with explicit authentication? I have a need to talk to different queues with different credentials across environments and the limitation of the using the os user running the process is inhibiting it.There is a tiny blurb about setting the credentials object on the adapter, but maybe I am not implementing it correctly as designed. I basically copied the adapter class, and tried to use the ..CredentialsSet method which points to a standard Ens credential on the system with username and password. Method OnInit() As %Status{Set tSC = ..InitQueue()Set tSC = ..CredentialsSet("mq")If $$$ISERR(tSC) Set ..%initQueueNeeded = 1#; Do not prevent job starting if cannot initialise on connection. #; If still error initialising in first poll it will be reported in the event log and available for Alert on ErrorQuit $$$OK}No luck here, if anybody can help me out, it would be appreciated!
go to post Ron Sweeney · Sep 6, 2018 Whoops!Just saw this in the documentation: method SetTraceMask(pTraceMask As %Integer, pTraceFile As %String = "") as %Statussorry for the troubles and jumping the gun on asking for help!-Ron