Scott Roth · Aug 8, 2024 go to post

We are on HealthShare Health Connect 2024.1, no the free version. 

Scott Roth · Jul 18, 2024 go to post

Correct. the Response from the Stored Procedure was just a %Status.

Scott Roth · Jul 18, 2024 go to post

Does your Java Gateway stop or your BO? Is something scanning the ports and causing a blockage, or failure perhaps? Try enabling the Java Gateway log file, I know it's hard to read, but it may give you a clue to what is going on.

Also make sure that the External Language %JDBC Server isn't crashing for some unknown reason. I found that if the %JDBC Server starts having issues that the Java Gateways within your Namespaces start having issues as well.

Scott Roth · Jul 18, 2024 go to post

I had a context variable set to Ens.Response, then when I would make my calls to the BO to execute the Stored Procedure on MS SQL, I would set the Response even though I did not expect thing to Ens.Response and my context variable to callresponse.

Then return Ens.Response at the end of the BP. I figured since it was blank it was not needed and would be creating additional Ens.Response objects.

So I removed the callresponse from those calls that I did not expect anything back from like inserts, etc... because if there was a SQL error the status and error would of be sent back to the BO anyway.

Scott Roth · Jul 18, 2024 go to post

I was sending callresponse objects back to Ens.Response, but ended up removing those since I was not capturing any response from our JDBC Microsoft SQL Stored Procedure calls. 

You can't leave the Response blank in the settings on the BP, so while not ideal Ens.Response might be created.

Just my experience. Unless anyone has any other suggestions....

Scott Roth · Jul 18, 2024 go to post

In my adventures, I broke down our BPL's to see where the Custom Message Classes were leaving the Orphaned messages.

Within BPL's make sure if you use Context Variables none of them are sent to "Instantiate", if you end up not using that context variable it will leave a blank (orphaned) message.

Also pointed out by others was not to have the Response object be anything other than Ens.Response. Any other type would cause an Orphaned message created even if you don't use it.

I also took it upon myself to make sure any context variable (message class) that I defined, I set to "" after using it.

Scott Roth · Jul 16, 2024 go to post

Have you checked to see if there is another app using the Port? I know that sometimes the Shutdown doesn't always shutdown the Java Gateways properly, especially if you failover, and fail back to the primary. We have it scripted to make sure that if a Shutdown occurs or if the mirror fails over that the Java Gateways are properly shutdown.

Scott Roth · Jul 16, 2024 go to post

In this post https://community.intersystems.com/node/539431 from Apr 6, 2023, @Mark.O'Reilly9949 mentions building a custom function to Purge Custom Messages using a Data Lookup table. However, it does delete by message count and not by days, which is something I am not fond of, and I haven't been able to get it to work for our needs either.

Scott Roth · Jul 11, 2024 go to post

I know it's been a while, but most DTL's create a Target EnsLib.HL7.Message.%New(), so are you saying that is flawed?

Scott Roth · Jul 10, 2024 go to post

Thanks for adding to the ongoing list. Make sure you open a WRC ticket to make InterSystems aware of the likes/dislikes..

Scott Roth · Jul 9, 2024 go to post

Using the following within a Code action I got no errors... 

 set tPatient = $CLASSMETHOD("HS.FHIRModel.R4.Patient","fromDao",tRawJSON)

However as soon as I tried it within a Set action in the DTL I got errors...

ERROR <Ens>ErrBPTerminated: Terminating BP TEST_FHIR_PATIENT_SEARCH # due to error: ERROR <Ens>ErrException: <UNDEFINED>%Construct+1 ^osuwmc.Demo.FHIRPlace.BPL.FHIRDataCollector.Context.1 *HS -- logged as '-'
number - @'
Set i%%Concurrency=$zu(115,10),i%%LastError=1,i%tPatient=HS.FHIRModel.R4.Patient'
> ERROR <Ens>ErrException: <UNDEFINED>%Construct+1 ^osuwmc.Demo.FHIRPlace.BPL.FHIRDataCollector.Context.1 *HS -- logged as '-'
number - @'
Set i%%Concurrency=$zu(115,10),i%%LastError=1,i%tPatient=HS.FHIRModel.R4.Patient'

if I go back to using the Code action, how can I guarantee that tPatient gets into the target?

Scott Roth · Jul 8, 2024 go to post

Because Intersystems is already trying to parse the message and field as it determines which DocType the message falls under, I would say that there needs to be a Preprocess involved to remove the extra line break. Whether that needs to be a custom Inbound HL7 Business, or some other type of scripting that is up to you.

Scott Roth · Jul 8, 2024 go to post

Can you call GetAuthorizationToken even though you aren't using OAuth?

Scott Roth · Jul 8, 2024 go to post

Other issues that we have noticed are..

  • Textual Search through Ctrl-F (Browser) no longer works.
  • Search within Rule Editor does not highlight or take you to the code you are searching for.
  • It is very difficult to Add any Rules, Expressions, Code, etc.. within the Application
  • In Expression boxes, can’t copy/paste from other rules.
  • In Send Command, it is very difficult to add the target.
    • Not allowed to type, paste, and type ahead search does not work.
    • Even highlighting the Target with your mouse does not automatically add it to the Target.
    • Its automatically putting a “,” before the Target, even if you click the check box next to the Target.
    • Can’t type ahead or paste translation within Translation Expression. You must scroll through the entire list; we have a lot of translations we have to now search through.

I have sent this feedback to InterSystems.

Scott Roth · Jul 5, 2024 go to post

From my testing in Postman, the JWT that is sent back has an "expires_in" included in the response.

{"access_token":"...........","token_type":"bearer","expires_in":"3600"}
Scott Roth · Jul 5, 2024 go to post

Thats what I thought, so since it is not how do I verify the token is expired? or should I just get a new token every time?

Scott Roth · Jul 5, 2024 go to post

The Payload needs to have the username which is an email, and the password.

POST /v2/login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 38

email=test%40test.com&password=test123

Scott Roth · Jul 5, 2024 go to post

This is all relatively new to me, so please bear with me. Since I am getting a Token it's not the same as OAuth, correct? Nothing in the Vendors documentation says that it is OAuth, it just says..."Authentication method is a token-based approach".

So, if that is the case, I can't use the %SYS.OAuth2.AccessToken methods to verify IsAuthorized, and GetAccessTokenClient correct?

Scott Roth · Jul 3, 2024 go to post

Robert is correct, more detail is needed. However, as an example, we take HL7 messages and using specific structure classes to match stored procedures, we send calls to an EnsLib.SQL.OutboundAdapter using JDBC to update, insert, and query MS SQL.

Scott Roth · Jun 28, 2024 go to post

I don't seem to have HS.FHIR.DTL.vR4.Model.Resource.Bundle, where can I find it to install?

Scott Roth · Jun 4, 2024 go to post

Yup, same here. I have %ALL access, and still not being able to modify the Target of SEND. I tried all different options that I could think of changing in the Web Applications, but no luck. I opened a ticket with WRC. 

While I like the IF, THEN look and it is better than WHEN.. if I have to disable for now, I will leave that up to the team tomorrow.

Scott Roth · Jun 4, 2024 go to post

Yeah, I think I am going to lean that way too, there is something security wise that is preventing me from editing the Target, but the documentation doesn't share any details about what it could be.

I left 

per what the document says. I tried CompileAllNamespaces() and different options but still it is inconsistent on if I can edit it or not.

Scott Roth · May 29, 2024 go to post

I fixed the Client setup to ensure that the Info URL looks correct, however still nothing is showing up in the FSLog from the Testing I am doing using the Testing tool on the HS.FHIRServer.Interop.HTTPOperation.

Scott Roth · May 29, 2024 go to post

I am not seeing any information in ISCLOG based on the Testing call that is being made

Scott Roth · May 24, 2024 go to post

The table in Exists needs to have " " around it as it is still a string.

Scott Roth · May 24, 2024 go to post

There is a Schema issue, it is not liking the way you're grouping several segments together which is resulting in the error.