go to post Luis Angel Pére... · Oct 10, 2023 Here you can see an example: ClassMethod ImportRawMatches() As %DynamicObject { Try { Do ##class(%REST.Impl).%SetContentType("application/json") If '##class(%REST.Impl).%CheckAccepts("application/json") Do ##class(%REST.Impl).%ReportRESTError(..#HTTP406NOTACCEPTABLE,$$$ERROR($$$RESTBadAccepts)) Quit set newRequest = ##class(QUINIELA.Message.OperationRequest).%New() set newRequest.Operation = "Import" set status = ##class(Ens.Director).CreateBusinessService("QUINIELA.BS.FromWSBS", .instance) set response = ##class(QUINIELA.Message.ImportResponse).%New() set response.Status = "In Process" set response.Operation = "Import" set status = instance.SendRequestAsync("QUINIELA.BP.ImportBPL", newRequest, .response) if $ISOBJECT(response) { Do ##class(%REST.Impl).%SetStatusCode("200") return response.%JSONExport() } } Catch (ex) { Do ##class(%REST.Impl).%SetStatusCode("400") return ex.DisplayString() } The key is this row: return response.%JSONExport()
go to post Luis Angel Pére... · Oct 10, 2023 Hi Yone! Your patientId is a param of the URL, you don't need to include it into the router map, to get the value you only need set patid = %request.Get("patientid")
go to post Luis Angel Pére... · Oct 10, 2023 Have you tried to change the timeout? The documentation says that timeout is defined in milliseconds, maybe you are waiting just 5 milliseconds. https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Luis Angel Pére... · Oct 10, 2023 You can call the transformation from the BPL as the first step.
go to post Luis Angel Pére... · Oct 10, 2023 Here you can see an example of a Dockerfile with an IRIS, Nodejs and nginx: https://openexchange.intersystems.com/package/QuinielaML
go to post Luis Angel Pére... · Oct 10, 2023 Hi Lorenzo! I'm no sure if this is the reason, but I've defined a proxy for the Angular front-end. You can check proxy.config.json: { "/api/*": { "target": "http://iris:52773", "secure": false, "logLevel": "debug" } } All my requests to the server are using localhost:4200 and they are translated into iris:52773 after the request.
go to post Luis Angel Pére... · Oct 9, 2023 You can create a previous Business Rule to apply a transform before to the redirection to BPL. https://docs.intersystems.com/iris20232/csp/docbook/DocBook.UI.Page.cls?... In the transformation your can apply $EXTRACT function to the OBX.5 bigger than 510 and replace that OBX.5
go to post Luis Angel Pére... · Oct 6, 2023 Well, in theory if you define the identifier in the request section and define the method as "PUT" the server should create the organization if it doesn't exist or updated if it do. <?xml version="1.0" encoding="UTF-8"?> <Bundle xmlns="http://hl7.org/fhir"> <type value="transaction"> </type> <entry> <resource> <Organization> <id value="17C7D86E-664F-4FE2-91D7-AF9A8E47311E"></id> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> LITTLE CLINIC 2000 PATIENT DRIVE ANN ARBOR MI US - NOI # 888333111 </div> </text> <identifier> <system value="www.nationalorgidentifier.gov"/> <value value="888333111"/> </identifier> <name value="LITTLE CLINIC"/> <address> <line value="2000 CLINIC DRIVE"/> <city value="ANN ARBOR"/> <state value="MI"/> <country value="US"/> </address> </Organization> </resource> <request> <method value="PUT"/> <url value="Organization?identifier=www.nationalorgidentifier.gov|888333111"/> </request> </entry> <entry> <resource> <Patient> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> EVERYWOMAN EVE 2000 PATIENT DRIVE ANN ARBOR MI MPI #12312311 </div> </text> <identifier> <system value="www.mypatientidentifier.com"/> <value value="12312311"/> </identifier> <name> <family value="EVERYWOMAN"/> <given value="EVE"/> </name> <address> <line value="2000 PATIENT DRIVE"/> <city value="ANN ARBOR"/> <state value="MI"/> <country value="US"/> </address> <managingOrganization> <reference value="Organization/17C7D86E-664F-4FE2-91D7-AF9A8E47311E"> </reference> </managingOrganization> </Patient> </resource> <request> <method value="PUT"/> <url value="Patient?identifier=www.mypatientidentifier.com|12312311"/> </request> </entry> </Bundle> But this is the theory...not sure if it will work for your FHIR server.
go to post Luis Angel Pére... · Oct 5, 2023 Have you tried to split your variable in various variables to avoid the string length limitation? XData VariableName1 [ MimeType = application/json ] {} XData VariableName2 [ MimeType = application/json ] {} ... XData VariableNameN [ MimeType = application/json ] {}
go to post Luis Angel Pére... · Oct 5, 2023 Hi Corentin! Here you can see how to initialize ListOfDataTypes objects: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Luis Angel Pére... · Oct 5, 2023 What do you think that we have in the kitchenette (cocina) in southern Europe? A machine of sangria? That would be great...
go to post Luis Angel Pére... · Oct 4, 2023 Try with the following code: do context.listIdProcess.InsertList(callresponse.listId.Serialize())
go to post Luis Angel Pére... · Oct 4, 2023 Can you create an idea with this request in the Ideas Portal?
go to post Luis Angel Pére... · Oct 4, 2023 What are the statuses of the allergies? Maybe they are inactive or have an InactiveTime defined.