Vic Sun · Oct 15, 2020 go to post

Hello Pavithra,

For this level of question I think it might be helpful to reach out to your InterSystems account team. I am sure they will be able to assist you with this project.

Vic Sun · Oct 13, 2020 go to post

Hello Pavithra,

The other post seems to have what you need. You can't put an entire dynamic object into an HL7 message and have the extra segments be generated automatically. I'd suggest iterating through the dynamic object and placing each value into a separate segment, specifying the target (repeating) segment using SetValueAt.

Vic Sun · Oct 12, 2020 go to post

Hi Steve,

I don't have a lot of experience with this but I have heard of a Web Gateway container that includes Apache.

"The webgateway image available from InterSystems, which includes both the Web Gateway and an Apache web server, provides a web server component for containerized deployments of InterSystems IRIS-based applications. Automated deployment of the Web Gateway container can be effected by using manual procedures to develop a CSP.ini file containing the desired Web Gateway configuration, as well as apache2.load and apache2.conf files specifying the desired Apache web server modules and configuration, and placing them in their expected locations in the Web Gateway container (/opt/webgateway/bin/ and /etc/apache2/mods-available/, respectively) as part of the deployment process. The durable %SYS feature and the Web Gateway’s entrypoint application /cspEntryPoint.sh provide a simple way to do this, as the script automatically links these files (plus the CSP.log log file) to the corresponding files on the specified durable %SYS volume."

Vic Sun · Oct 12, 2020 go to post

Hello Mikael,

What do you mean by locking resources? I think Call Interval should be appropriate for the behavior you want, but I'm not sure what complication you're referring to.

A common suggestion here might be the Ensemble schedule handler, but I'd not recommend that as per the documentation this isn't intended for specifying specific processing times, but activation windows for the interface. The documentation also discusses creating a more general scheduled task and having it call CreateBusinessService() and ProcessInput() but this would be much more involved than just using Call Interval.

Vic Sun · Oct 5, 2020 go to post

Hello Yone,

You linked the custom schema documentation - that seems to be appropriate for working around this. What exactly were you having trouble with?

Vic Sun · Oct 5, 2020 go to post

Yone,

Your service's ack mode is set to never. Depending on what you want you'll need to adjust that setting.

Vic Sun · Oct 1, 2020 go to post

Hi Norman,

Not sure if this helps, but write commands generally interpret $char whereas zwrite won't. I'm not sure what you're using to output to a file but perhaps you could try using zwrite.

I'm not sure what the portal uses, maybe somebody else has a cleaner solution.

Vic Sun · Oct 1, 2020 go to post

Hello Gunwant,

How are you intending to use LDAP? 

Using LDAP

This documentation covers that you can configure LDAP to use TLS for Caché authentication.

Vic Sun · Oct 1, 2020 go to post

Hello Ruslan,

What is localdemon.exe? I have never heard of it and I can't see it in my Windows installations. How does this interact with Caché?

Vic Sun · Sep 29, 2020 go to post

One set of errors that stood out to me is:

09/25/20-15:45:16:790 (9924) 1 SNMP server failed to start: 0,Error (2) signaling Windows SNMP Service; check Service is installed/started.
09/25/20-15:54:17:010 (8972) 1 Error reading from SNMP port, Windows SNMP Service may have terminated connection.

I'd recommend reviewing the documentation I linked for some other suggestions, but I'd start by trying to verify that snmp works at the Windows level, separate from Caché.

Vic Sun · Sep 25, 2020 go to post

Hi Han,

Is the problem you are seeing that you can't set up SNMP with Caché? The error you pointed out is most likely Windows error 2 file not found. Does the referenced file exist? Perhaps the permissions are incorrect.

Maybe this error is not the important one, as after that it seems startup continues until we see the following:

16:58:25 :Error response from Cache instance ENSEMBLE 'requestDenied', make sure $$start^SNMP has been run.

Has $$start^SNMP been run? You can find  setup/troubleshooting steps in the documentation here:

Monitoring Caché Using SNMP

Vic Sun · Sep 23, 2020 go to post

Robert,

57772 was the default web server port for Caché, but for IRIS the default port is 52773. This setting is configurable, so you can check the messages.log in <install directory>/mgr/ to confirm which port is being used with the message I described in my previous comment.

Alternatively, "iris list" will also tell you the port number.

Vic Sun · Sep 22, 2020 go to post

Robert,

This indicates a problem with your web server settings in Atelier - is localhost:57772 the appropriate setting? If this is a local instance of IRIS and you are using the private web server, your messages.log will show: "Private webserver started on #####" which is the port you would want to use here.

Vic Sun · Sep 17, 2020 go to post

Hi,

I see in your previous post Marc Mundt suggested a lookup table, which seems like a good candidate here. Is there a particular reason you wouldn't be able to implement that or are looking for another option?

Vic Sun · Sep 16, 2020 go to post

Also see SYS.Database, which in addition to that class reference link is documented in brief here:

Databases

(Caché & Ensemble 2018.1.3 — 2018.1.4 > Caché Development References > InterSystems Programming Tools Index > Tools Index > Databases)

Vic Sun · Sep 15, 2020 go to post

Ah, while it is disappointing that we don't have a 100% understanding of what happened here, I'm glad at least the problem hasn't been recurring.

Vic Sun · Sep 3, 2020 go to post

Hello Bukhtiar,

Not sure if you were just looking for the specific documentation that Francisco provided or something more general. If you want some resources on learning to work with InterSystems products (and specifically ObjectScript), I'd recommend reviewing the courses available on learning.intersystems.com. 

https://learning.intersystems.com/course/view.php?id=289

This course is "Learn Caché ObjectScript" and links to documentation, a tutorial, and an online course.

Vic Sun · Sep 2, 2020 go to post

I can't speak definitively as I haven't tested but if you were able to show the management portal underperforming on the latest version, you could report it to InterSystems.

Vic Sun · Sep 2, 2020 go to post

Hey Anna,

Glad you were able to get this resolved. I would be curious, as Nigel mentioned, if you had been importing/exporting in the background from the management portal, as that level of speed seems surprisingly slow. Also, I assume there have been improvements to the newer utilities in even more recent versions of Caché and IRIS, so perhaps you would see better performance if you were able to upgrade.

Vic Sun · Sep 1, 2020 go to post

I didn't see a wildcard for %Library.Global but $SYSTEM.OBJ.Export does appear to support wildcards.

https://cedocs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?APP=1&CLASSNAME=%25SYSTEM.OBJ

That being said, I would be interested in why the global export/import is failing in the first place.  One pitfall is "Block format ignores mapped globals and mapped global subscripts", but other than that we'd probably need more details on your process and what globals are succeeding or failing. This is probably appropriate to contact the WRC with.

Vic Sun · Aug 26, 2020 go to post

Hello Marcus,

The VSS implementation is quite straightforward for users. When you try to create a VSS shadow copy this will invoke the Caché VSS writer, which automatically calls external freeze/thaw. I'm not familiar with Veeam and its integration with VSS, but you could probably verify this behavior with a quick test.

You can see that Caché is ready by the following cconsole.log message (documented):

"Caché VSS Writer started"

From another level, you can verify the Caché VSS writer using "vssadmin list writers" at the OS command prompt.

I hope that helps. Perhaps others are more familiar with Veeam.

Vic Sun · Aug 19, 2020 go to post

If MLLP had already been in use, what change was made to prevent the "discarding received non-HL7 data" messages? Does that give any clue to what is happening with those particular messages?

Perhaps you could try enabling "Log Trace Events" which might tell you more about what step in the processing is getting stuck.

What is the process for handling these messages manually, and how does it differ from normal processing?

Those are the other kinds of things I would look at, though looking at the specific messages that trigger this issue is definitely a good step. I would definitely be interested in an update once you've figured this out.

Vic Sun · Aug 14, 2020 go to post

Great, glad I could help and hopefully that was the answer!

Vic Sun · Aug 13, 2020 go to post

Hello Matthieu,

I suspect this is an issue with the framing. You are using MLLP framing meaning each message is expected to be surrounded by ASCII 11 prefix and 28,13 suffix. In hex that's 0B prefix and 1C, 0D suffix. The error you're getting implies that the ASCII 13 is never being received. I would check to make sure the acks have the proper framing, and that the framing you are using for your operation matches what the downstream system expects, and vice versa.