go to post Luis Angel Pére... · Oct 18, 2023 Well, I guess that you can change the URL modifying the value of those parameters, if you want to change "login" for "thisistheloginurl" you only have to update TokenLoginEndpoint to the new value.
go to post Luis Angel Pére... · Oct 18, 2023 You can see in the code my extended %CSP.Rest class: Class QUINIELA.WS.Service Extends %CSP.REST { Parameter HandleCorsRequest = 0; Parameter CHARSET = "utf-8"; XData UrlMap [ XMLNamespace = "https://www.intersystems.com/urlmap" ] { <Routes> <Route Url="/getPrediction" Method="GET" Call="GetPrediction" /> <Route Url="/import" Method="GET" Call="ImportRawMatches" /> <Route Url="/getStatus/:operation" Method="GET" Call="GetStatus" /> <Route Url="/prepare" Method="GET" Call="PrepareData" /> <Route Url="/train" Method="GET" Call="TrainData" /> <Route Url="/getReferees" Method="GET" Call="GetReferees" /> <Route Url="/getTeams" Method="GET" Call="GetTeams" /> <Route Url="/saveMatch" Method="POST" Call="SaveMatch" /> <Route Url="/deleteMatch/:matchId" Method="DELETE" Call="DeleteMatch" /> <Route Url="/saveResult" Method="POST" Call="SaveResult" /> <Route Url="/getMatches/:division" Method="GET" Call="GetMatches" /> </Routes> } ClassMethod OnHandleCorsRequest(url As %String) As %Status { set url = %request.GetCgiEnv("HTTP_REFERER") set origin = $p(url,"/",1,3) // origin = "http(s)://origin.com:port" // here you can check specific origins // otherway, it will allow all origins (useful while developing only) do %response.SetHeader("Access-Control-Allow-Credentials","true") do %response.SetHeader("Access-Control-Allow-Methods","GET,POST,PUT,DELETE,OPTIONS") do %response.SetHeader("Access-Control-Allow-Origin",origin) do %response.SetHeader("Access-Control-Allow-Headers","Access-Control-Allow-Origin, Origin, X-Requested-With, Content-Type, Accept, Authorization, Cache-Control") quit $$$OK }
go to post Luis Angel Pére... · Oct 17, 2023 I think that already exists an open exchange project to convert hl7 to xml, check this: https://openexchange.intersystems.com/package/Healthcare-HL7-XML
go to post Luis Angel Pére... · Oct 17, 2023 I'm reading the documentation about profiling and I saw this message: So...that is the reason!
go to post Luis Angel Pére... · Oct 17, 2023 Have you tried creating a class of type "view" joining both tables? Maybe with that class you can create your cube definition. Here you can see and example of this type con classes.
go to post Luis Angel Pére... · Oct 17, 2023 I've no idea about how IRIS FHIR Server works with the profiling but according to FHIR documentation...Did you define in the meta element the profile property for the Patient resource? In theory you have to include that info to apply the profiling for the resource. You can find here the description of profile property in FHIR documentation It should be something like this: <meta> <profile value= "http://localhost:52773/fhirr4/StructureDefinition"></profile> </meta>
go to post Luis Angel Pére... · Oct 16, 2023 How are you importing the Python library in your class? Have you declared your method language as Python? Did you see the package installed in the path defined by the documentation?
go to post Luis Angel Pére... · Oct 16, 2023 If you are getting: callresponse.%ClassName(): Ack And your code is: if (callresponse.%ClassName() = "consultarEstudiosDatosPacienteVNAResponse"){ set callresponse = ..respuestaConsultaEstudios Quit $$$OK } It will never send back respuestaConsultaStudios because the previous condition, try assigning respuestaConsultaEstudios to callresponse without it.
go to post Luis Angel Pére... · Oct 16, 2023 Maybe you can do a workaround for this problem creating a new Business Process to send respuestaConsultaEstudios and manage it from there, ignoring from EnrutadorConsultarEstudiosVNAv01r00 the null response that you receive from ConsultarEstudiosMedianteFind Another option could be define OnResponse method on ConsultarEstudiosMedianteFind and define the response properly.
go to post Luis Angel Pére... · Oct 16, 2023 Oh! forget what I said, I was thinking that you were calling a Business Operation all the time...remove the pOutput from the OnMessage method . I see what is the problem. Your BP is using the method OnMessage to do the C-FIND operation, but the OnResponse method is not receiving the response. Remove the pOutput references from your code and try with the following code: do ..%responseSet(..respuestaConsultaEstudios) Quit $$$OK Not sure if that would work.
go to post Luis Angel Pére... · Oct 16, 2023 Did you update the call from EnrutadorConsultarEstudiosVNAv01r00 to ConsultarEstudiosMedianteFind adding the variable by reference?
go to post Luis Angel Pére... · Oct 13, 2023 For the Quit you have to return the status, is not necessary to return the output variable. You have to update the call to Procesos.DICOM.ConsultarEstudiosMedianteFind adding the output variable as reference.
go to post Luis Angel Pére... · Oct 13, 2023 And the Quit is what is generating the null response. You have to avoid the async call and return the result using an output variable.
go to post Luis Angel Pére... · Oct 13, 2023 I suspect that the problem is that you are sending a SendRequestAsync to EnrutadorConsultarEstudiosVNAv01r00 that is the business process that called to Procesos.DICOM.ConsultarEstudiosMedianteFind, and after that you are doing the Quit, returning to EnrutadorConsultarEstudiosVNAv01r00 again.
go to post Luis Angel Pére... · Oct 11, 2023 Try adding a $$$TRACE in this method: Method OnAssociationReleased(pSourceConfigName As %String, pInput As EnsLib.DICOM.Notify.Released) As %Status { #dim tSC As %Status = $$$OK #; The association between this process and the operation has been released, so we are now #; not connected to the operation Set ..CurrentState="OperationNotConnected" ; Añadimos 11 10 2023 Set tSC=..SendRequestAsync("EnrutadorConsultarEstudiosVNAv01r00",..respuestaConsultaEstudios,0) Quit tSC } Maybe you are calling the BP from here with a null response.
go to post Luis Angel Pére... · Oct 11, 2023 Hi Yone! You can follow step by step the following article to create a REST web service from scratch: https://community.intersystems.com/post/creating-rest-service-iris As you can see this web service is not a Business Service, it's a web application that invoke a Business Service, I suggest you to use that way.
go to post Luis Angel Pére... · Oct 10, 2023 You can configure a transform creating a new message and defining another context variable with the same type than the original message as output, then you keep your original message in the request and the transformed message in the new variable.