go to post Luis Angel Pére... · Jul 19, 2023 You can start compressing Journals:https://docs.intersystems.com/healthconnectlatest/csp/docbook/DocBook.UI...
go to post Luis Angel Pére... · Jul 19, 2023 Take a look at this question of the community: https://community.intersystems.com/post/how-copy-array-values-json-objec...
go to post Luis Angel Pére... · Jul 19, 2023 Well, I'll answer you from my experience, maybe I'm wrong. About your first question, you are totally free to use a encoded BP or BPL and DTL, as you prefer. I usually prefer to use BP by code for custom objects and DTL and BPL when I work with HL7 messages...why? because I'm too lazy to write code foreach transformation of field in an HL7 message. The Business Service used by the RecordMapper has a property called Synchronous Send: When you check it the Business Service is going to send the record mapped in a sync call to your BP, so it's not going to read a new line of the file until a response is received from the destination. About the OnRespone, you can check the official documentation: https://docs.intersystems.com/iris20231/csp/docbook/DocBook.UI.Page.cls?... I usually implement the OnResponse to receive Async responses from Business Operations called by my BP, in your case I think that it's unnecessary, but this is a personal opinion.
go to post Luis Angel Pére... · Jul 17, 2023 You can see in this post some allowed adaptations by code of the business rules, but always in the context of a production. https://community.intersystems.com/post/how-edit-fields-intersystems-ens...
go to post Luis Angel Pére... · Jul 17, 2023 I don't think that is possible out of the context of a production, at the end the destination of the routed message is always a business component deployed in a production, the context info and the messages are linked to components of the productions too. I think that is easier to learn objectscript than try to adapt the behavior of the business rules.
go to post Luis Angel Pére... · Jul 14, 2023 Check you pool connections, it looks like you have a pool of 100 and when you try to open the 101 connection it fails. Maybe this page put you in the right direction: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Luis Angel Pére... · Jul 14, 2023 Maybe it's too obvious but, have you tried to cast the column? CAST(DRIVER AS VARCHAR(8000)) AS DRIVER
go to post Luis Angel Pére... · Jul 12, 2023 Not sure if Private property is what you are looking for: https://docs.intersystems.com/iris20231/csp/docbook/DocBook.UI.Page.cls?...
go to post Luis Angel Pére... · Jul 11, 2023 You have to create a new class that extends Ens.StringResponse, then you will be able to add so many properties as you need in your new class. Please, check this URL: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Luis Angel Pére... · Jul 10, 2023 Well, from my experience you will need the same databases on your local instance, so you will need to load a backup from the original into the local instance and after that apply the journal file generated after the creation of this backup from the original.
go to post Luis Angel Pére... · Jul 8, 2023 I wrote an article about the creation of a REST service that maybe can help you. https://community.intersystems.com/post/creating-rest-service-iris You can check the ClassMethod TestPost where a data is received from a post call and is sent finally to a business operation where is transformed into a DynamicObject and parsed to another class. This is the business operation: Class WSTEST.BO.PersonSaveBO Extends EnsLib.REST.Operation { Parameter INVOCATION = "Queue"; Method savePerson(pRequest As WSTEST.Object.PersonSaveRequest, Output pResponse As WSTEST.Object.PersonSaveResponse) As %Status { try { set person = ##class("WSTEST.Object.Person").%New() #dim request as %DynamicObject = {}.%FromJSON(pRequest.JSON) set person.PersonId = request.PersonId set person.Name = request.Name set person.LastName = request.LastName set person.Sex = request.Sex set person.Dob = request.Dob set tSC = person.%Save() set pResponse = ##class("WSTEST.Object.PersonSaveResponse").%New() set pResponse.PersonId = person.PersonId set pResponse.Name = person.Name set pResponse.LastName = person.LastName set pResponse.Sex = person.Sex set pResponse.Dob = person.Dob }catch{ Set tSC="Error saving the person" } Quit tSC } XData MessageMap { <MapItems> <MapItem MessageType="WSTEST.Object.PersonSaveRequest"> <Method>savePerson</Method> </MapItem> </MapItems> } }
go to post Luis Angel Pére... · Jul 8, 2023 UserTable and DataTable are related? I'm guessing that if Condition1 is the relation between the tables you would try this query: SELECT COUNT(CASE WHEN data.a = "Condition1" then 1 ELSE NULL END) as "ValueA", COUNT(CASE WHEN data.b = "Condition2" then 1 ELSE NULL END) as "ValueB", COUNT(CASE WHEN data.c = "Condition3" then 1 ELSE NULL END) as "ValueC", user.id FROM UserTable user left join DataTable data on user.id = data.user
go to post Luis Angel Pére... · Jul 7, 2023 In my opinion the best approach is to create a BO for each database connection and invoke them from a BPL, getting the results and doing whatever you want.
go to post Luis Angel Pére... · Jul 6, 2023 Take a look at this article, it's exactly what you need: https://community.intersystems.com/post/creating-rest-api-jwt-authentica...
go to post Luis Angel Pére... · Jul 6, 2023 InitialExpression is what you are looking for:https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Luis Angel Pére... · Jul 5, 2023 Not yet @Evgeny Shvarov, it's a bit basic and it's not properly finish... But it could be useful!
go to post Luis Angel Pére... · Jul 5, 2023 Hi @Tommy Heyding ! Here in Spain we are using a node js project to generate some types of HL7 messages, it's a bit basic...and the messages encoded are limited, but you can use it to modify whatever you need:https://github.com/intersystems-ib/tool-patient-generator