Question Scott Roth · Mar 18, 2022 EnsLib.HL7.Message Querying We are trying to track down the source of Orphaned messages and noticed that we are unable to query EnsLib.HL7.Message with any kind of WHERE or ORDER BY clauses in our SQL statement. I know EnsLib.HL7.Message is a system table, but is there a way we can add additional Indexes to the table to make the query run better/faster without affecting the system? #SQL #System Administration #Caché 0 4 0 665
Question Scott Roth · Feb 25, 2022 Optimal Apache/Web Gateway settings After what is seemed was weeks, I finally got SSL/TLS enabled on both Apache Web Server and IRIS using the Web Gateway. However while we can now use HTTPS to connect to our Development instance of IRIS, I am running into several errors when I have others try to access the Management Portal via HTTPS. We are seeing... #Error Handling #SSL #Web Gateway #HealthShare 0 6 0 585
Question Scott Roth · Feb 16, 2022 Question about setting up Apache HTTP and Web Gateway to use TLS I am not sure if this is the correct place for this question, but I am struggling to setup TLS security for our IRIS Management Portal and etc. through Apache and the Web Gateway. I have a couple of questions when it comes to the setup. if I build a private key and certificate within Red Hat, does that certificate have to be on everyone's pc to connect to the Management Portal? Can I use a self signed Certificate? Can I use the existing CA on the server, or do I need to work with my Data Security team to get a Certificate? #SSL #Web Gateway #InterSystems IRIS 0 1 0 532
Question Scott Roth · Jan 10, 2022 How are XML Schema Structures saved within Ensemble? You might of seen or might of not seen my earlier post about Exporting a Production from 2018.1 to import it into 2021.1. I was able to get the export working, however I noticed in reviewing the data within the export, our previous Workday XML Schemas that we imported via XSD files were not in the export. When walking through the export process under Message Schema or vDoc Schema I could not find the missing XML Schema structures. Why aren't XML's part of the export process if they are used within the Production? #System Administration #XML #Ensemble 0 1 0 583
Question Scott Roth · Jan 6, 2022 Unable to export entire Production We are migrating from AIX to Linux and part of our testing is trying to figure the best method to migrate the code. I am trying to export an entire Production, however I keep running into an error... Error generating export list for production osuwmc.TestClin and all items may not be listed.ERROR #5002: Cache error: <CLASS DOES NOT EXIST>zgetRecordandComplexMapClasses+34^Ens.Config.Production.1 *(No name) I went through any Complex Record Maps, and recompiled them but I am still getting the same error #Data Import and Export #System Administration #HealthShare 0 3 0 270
Question Scott Roth · Nov 2, 2021 Running IRIS as part of the WSL2 Ubuntu Using the Windows Subsystem for Linux (WSL2), is it possible to install IRIS and run it from there? I am wanting to test IAM, but unable to run Docker Desktop on my VM, and do not have access to a Linux machine to install and test with. Thanks Scott #Compatibility #Deployment #InterSystems API Manager (IAM) #System Administration #InterSystems IRIS 0 6 0 481
Question Scott Roth · Oct 22, 2021 EnsLib.EDI.XML.Service.FileService vs EnsLib.XML.FileService What is the difference between EnsLib.EDI.XML.Service.FileService and EnsLib.XML.FileService? #Business Service #XML #Ensemble 0 3 0 242
Question Scott Roth · Oct 21, 2021 Optimizing throughput XML to MS SQL (JDBC) insert Once a week we are attempting to load an XML file from Workday into a MS SQL table using JDBC and Store Procedures. There is approx 102999 records in this XML file. We are struggling with processing the entire file within a reason amount of time. We feed the XML through a BPL to then populate values in a stored procedure then call the stored procedure through a Business Operation. I have tried splitting out the Business Operations to make two calls, but we still continue to see an issue loading the XML into MS SQL. #Business Operation #Business Process (BPL) #JDBC #XML #Ensemble 0 4 0 381
Question Scott Roth · May 20, 2021 What does ERROR #5002: Cache error: <MAXSTRING>zSaveData+14 ^EnsLib.HL7.Segment.1 mean? We are seeing ERROR #5002: Cache error: <MAXSTRING>zSaveData+14 ^EnsLib.HL7.Segment.1 come up on a Routing rule when we are trying to Encoded PDF's through a DTL. In the DTL we are copying source to target. Is there a limitation on trying to copy source to target? At the bottom of the DTL you are see that we commented out converting the Encoded PDF to a Stream, is it recommended that we always use %Stream anytime we are dealing with PDF's? Thanks #DTL #HL7 #Ensemble 0 4 0 798
Question Scott Roth · May 12, 2021 Comparing HL7 Repeatable Segment/Field to Lookup table Awhile back the Developer community helped me with a situation I was having... How to loop through a Repeating Segment and Single Filed, example OBX().5, within a Business Process Rule and compare it against a Data Lookup table. Well now I need to take it a step further. I need a way to loop through OBR() segment, and loop through OBR().4() and the subfield 4.1 and compare it to a Data Lookup table. So I thought I could copy my existing function code and add another level to it, but its not returning what I would expect. #Business Rules #HL7 #ObjectScript #HealthShare 0 2 0 475
Question Scott Roth · Apr 21, 2021 First REST Operation - Custom Header I have a vendor that is sending an HL7 message. But when I asked for more detail about their mapping tables, they told me they typically don't supply that but supply an API for customers to call so they don't have to define tables and it is more dynamic. So with that being said I am creating my first REST operation. I understand the gist of how a REST operation works in working with other types out Non HL7 Operations (SOAP, SQL) before. You send a request and get a response back, that part I understand. #HL7 #REST API #Ensemble 0 14 2 900
Question Scott Roth · Mar 23, 2021 Using ChildCount from EnsLib.HL7.Message to get repeatable fields A while back I asked the developer community for a way to loop through repeatable HL7 segments and check them against a Data Lookup table within a Business Rule. The example I got was the following... #Business Rules #ObjectScript #Caché #HealthShare 0 1 0 643
Question Scott Roth · Feb 23, 2021 Sending request data to Business Object through Object Script So now that I have figured out how to send a Page via HTTP.OutboundAdapter, I have another question. I want to use a Function that all I have to do is pass two variables and it is sent to the HTTP.OutboundAdapter I created to send the Page. So.. If I have a class file that Extends Ens.Rule.FunctionSet, how do I force it to send a Request to my HTTP Business Operation, without having to go through a DTL, or Business Process? Thanks Scott #Business Operation #ObjectScript #Ensemble 0 3 0 740
Question Scott Roth · Feb 23, 2021 Using HTTP.OutboundAdapter to send Page I am trying to figure out how to send a Page via a HTTP.OutboundAdapter to a URL from Ensemble. We have a URL that I am able to pass PNo=xxxx%PMsg=xxxx as parameters to send the page to a pager. http://xxxxx.xxxxx.xxx/Employee/Tools/Paging/SendPage.aspx?PNo=1817&PMsg... When I send the above URL through a REST client I receive a Response of "SENT". But when I try to send it through the HTTP.OutboundAdpater I do not get a response. #Business Operation #ObjectScript #Ensemble 0 3 0 279
Question Scott Roth · Feb 4, 2021 What is the best practice when sending data via HTTPS outside a Hospital Network We are getting more and more request wondering if we could send/receive data via HTTPS to the outside world from within our Hospital Network. As you can imagine our Ensemble/Cache productions are not exposed to the DMZ or has access outside of the network. We only communicate with external vendors through a VPN, so communicating not using a VPN is rather new to us. Currently there is a project to get rid of using Proxy, and instead of through a Load Balancer that can use rules to filter out traffic, which adds another layer of complexity. #Business Operation #Business Service #SSL #System Administration #Ensemble 1 3 0 274
Question Scott Roth · Jan 14, 2021 SQL Inbound Adapter settings In the Inbound SQL Adapter settings, is it possible to specify more than 1 field as the Key Field Name? Because of the way the Query is being index in Ensemble by the Key Field Name, sometimes transactions get missed and I would like to see if we can add an additional key to the mix to ensure all the transactions are picked up. In this case the InterfaceTrigger is an ID that is auto generated by the table, and I would like to use that as well to ensure we don't miss transactions, and it does not throw any warning messages when it executes the Delete Query. #Business Service #SQL #Ensemble 0 1 0 322
Question Scott Roth · Jan 13, 2021 Handling Errors I have a case where our EMR is sending data, but not all the values needed for the Ancillary are valued properly and causes that message to error/halt processing on the Ancillary system, not ideal but its what they do. I would expect them to still process the message except that 1 field, but they don't. I want to add validation to make sure certain fields are valued correctly for the Vendor. So I add some statements to take those items that don't pass this validation out to a batch file with headers. #Business Operation #Business Process (BPL) #Code Snippet #DTL #Error Handling #Caché #Ensemble 0 9 0 966
Question Scott Roth · Jan 7, 2021 Looking up value in Cache Table via a Business Rule (Routing) I need another set of eyes to look at the following. Instead of a Data Lookup table, I wanted to try to lookup a value against a Cache table that I had build. So I thought I could write a function to run a simple SQL query against the Cache Table and return me a %Boolean value back to my routing rule. However today I found that it was not working properly. Can someone take a look at the following method and verify that I am doing this correct? index = column name value = HL7 field that I am passing into the method #Business Rules #ObjectScript #Caché #Ensemble 0 4 0 435
Question Scott Roth · Dec 9, 2020 Code migration using VSCode I am fairly new to using VSCode. I have used VSCode to create some files on our Test Server, now I need to move them to Production. Looking through the VSCode extension documentation, maybe I missed it but how to I migrate code from one workspace to another. In Studio I was use to exporting the code into an XML and just being able to import it on the Production server version of Studio. Thanks Scott #ObjectScript #Caché #VSCode 0 9 0 783
Question Scott Roth · Dec 7, 2020 Linked Table vs Connecting to outside DB using JDBC and a Business Process (BPL) I have a case where I need to look up the NPI provider against an External MS SQL database to retrieve our Provider Identifier to send to a downstream system. In the past I would use a Business Process (BPL) to connect to the outside MS SQL via JDBC and get that information for me. But I was thinking instead of creating a BPL process to do this, would it be better just to link to the outside MS SQL database table to retrieve the information in a SQL statement within a DTL? #Business Process (BPL) #Databases #DTL #JDBC #ObjectScript #SQL #Ensemble 0 3 0 329