go to post Vic Sun · Sep 16, 2020 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)
go to post Vic Sun · Sep 16, 2020 Hi Bharath, I'm not sure what exactly you're trying to do but trying to invoke a CHUI in a script feels a bit clunky. Perhaps the Config.Journal and Config.Databases APIs would be useful to you.
go to post Vic Sun · Sep 16, 2020 Hi Devin, I'm not sure I understand exactly what you are trying to do, but if you are new to HealthShare/DTLs in general the following course might be helpful. https://learning.intersystems.com/course/view.php?id=133 "Building Your First HL7 Production" contains some links to videos, online courses, and other resources.
go to post Vic Sun · Sep 15, 2020 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.
go to post Vic Sun · Sep 3, 2020 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.
go to post Vic Sun · Sep 2, 2020 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.
go to post Vic Sun · Sep 2, 2020 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.
go to post Vic Sun · Sep 1, 2020 The WRC (Worldwide Response Center) is the InterSystems support department. https://www.intersystems.com/support-learning/support/ If you try to export a smaller set of globals (from later in the list) do they succeed? Are you sure it's a failure to import and not a failure to export?
go to post Vic Sun · Sep 1, 2020 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.
go to post Vic Sun · Aug 26, 2020 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.
go to post Vic Sun · Aug 24, 2020 Perhaps DATEDIFF from a previous question on the developer community would work? https://community.intersystems.com/post/how-compare-time
go to post Vic Sun · Aug 24, 2020 Hey Keshav, I'm not aware of a built-in time comparison function. An alternative to using zdateh and ztimeh may be to use ##class(Ens.Util.Time).ConvertDateTime, but I think for the actual comparison you'll need to convert to a matching target format. Format specifications are documented here: Time Stamp Specifications for Filenames
go to post Vic Sun · Aug 19, 2020 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.
go to post Vic Sun · Aug 13, 2020 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.
go to post Vic Sun · Aug 11, 2020 I wouldn't recommend using ZU commands as they are deprecated so they are not guaranteed to always work. Errors returned can occasionally be COS error codes, or they might boil down to OS error codes. It depends on the function; I don't know if there's a universal method that differentiates. I think you need to look at what you're calling. Often the class reference gives details on what error codes to expect. In your particular case, referring to the %Library.File.CopyFile class reference: "This method returns true if it succeeds and false otherwise. Pass return by reference to obtain the low level return value in case of errors which is the negative value of the operating system return code."
go to post Vic Sun · Aug 5, 2020 Glad I could help! You might find the following documentation helpful as well: Virtual Property Paths I have always found it useful to experiment with virtual property paths in the terminal as is explained in the bottom section of that page.
go to post Vic Sun · Aug 4, 2020 Hi Jeff, Perhaps you are using shorthand and I would need to see a larger sample of your code, but in your actual code are you using SetValueAt? If you're transforming HL7 messages you will need to use that method. SetValueAt is the other side of the GetValueAt coin.
go to post Vic Sun · Aug 4, 2020 Where does J get set? Your loop is setting h from 1:1:x. Perhaps you want to use h instead of J.
go to post Vic Sun · Jul 30, 2020 My guess is this has something to do with your web application definitions in HealthShare, but I don't have any conclusive suggestions, so I'd second Pete's suggestion.