go to post Ariel Glikman · 13 hr ago Hi @Enrico Parisi, I believe that it is "referenced" in the Healthcare Mirroring documentation under Mirroring the HSSYS Database: The HSSYS Mirroring Utility can automatically perform HSSYS mirroring and validation. It also schedules the Mirror Monitor Agent. The utility can be downloaded, installed, and supported on systems 2021.1 and later so it is not strictly related to upgrading IRIS For Health. If the question is whether a better "home" for the HSSYS Mirroring Utility page would be in the "High Availability Guide" under "Mirroring and High Availability" Then the answer is perhaps. There is specific upgrade configurations Offline Validation and Mirroring which I assume is the reason it was placed under upgrade reference - though I would lean to agreeing with you that a better place would be under Healthcare Mirroring. The documentation team is always looking for feedback (blue button on the right side of any documentation page) - so they would be happy to hear your suggestion.
go to post Ariel Glikman · 17 hr ago check out the just released HSSYS Mirroring Utility that lets you skip steps 4-9!
go to post Ariel Glikman · Aug 27 Hi Eyal,The idea is to implement a custom FHIR operation as per the docs.Once you set up the pre-installation subclassing (this is where you override those 3 classes: HS.FHIRServer.Storage.JsonAdvSQL.Interactions, HS.FHIRServer.Storage.JsonAdvSQL.InteractionsStrategy, HS.FHIRServer.Storage.JsonAdvSQL.RepoManager) You can create a custom operations class (make sure you reference it in your Interactions class): Class Testing.Internal.Interactions Extends HS.FHIRServer.Storage.JsonAdvSQL.Interactions { Parameter OperationHandlerClass As %String = "Testing.Internal.myOperations"; } Class Testing.Internal.myOperations Extends HS.FHIRServer.Storage.JsonAdvSQL.BuiltInOperations { ClassMethod FHIRTypeOpCustompatienteverything(pService As HS.FHIRServer.API.Service, pRequest As HS.FHIRServer.API.Data.Request, pResponse As HS.FHIRServer.API.Data.Response) { if pRequest.Type="Patient" { if (pRequest.QueryString '= ""){ Set fhirService = ##class(HS.FHIRServer.Service).EnsureInstance("/api/internal/test1") //fhir server endpoint Set request = ##class(HS.FHIRServer.API.Data.Request).%New() Set request.RequestPath = "/Patient" set request.QueryString = pRequest.QueryString Set request.RequestMethod = "GET" Do fhirService.DispatchRequest(request, .response) Set json = response.Json If json.%Get("entry") '="" { Set iter = json.entry.%GetIterator() While iter.%GetNext(.key, .value) { //for each patient entry request an everything Set everythingRequest = ##class(HS.FHIRServer.API.Data.Request).%New() Set everythingRequest.RequestPath = "/Patient/"_value.resource.id_"/$everything" Set everythingRequest.RequestMethod = "GET" Write ! Write "Patient ID: ", value.resource.id, ! Do fhirService.DispatchRequest(everythingRequest, .everythingResponse) Write "Everything: ", !, everythingResponse.Json.%ToJSON() } } } else{ Set pResponse.Json = ##class(HS.FHIRServer.Util.Outcome).Create("information", "No Query String", "informational") } } set pResponse.Status = 200 } ClassMethod AddSupportedOperations(pMap As %DynamicObject) { do ##super(pMap) Do pMap.%Set("patient-identifiers-everything", "http://hl7.org/fhir/OperationDefinition/patient-identifiers-everything") } } Hope this helps. Ari
go to post Ariel Glikman · Feb 3 Excellent step by step that so many of our customers have been asking about since the deprecation of SAM - thank you Stav!
go to post Ariel Glikman · Jun 27, 2023 Hi Gautam, As it stands your class is not an object class (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...). In order to instantiate an object, make sure the class inherits from %RegisteredObject or a subclass of it. We do this in ObjectScript as follows: Class Sample.Header Extends %RegisteredObject { /// your code }