Question
· Aug 14, 2023
Do Vs Job method call

Hi Guys,

below is a javascript sample code in one of my methods in a CSP page where I'm loading some data from a global to a Javascript arrays, the problem is that if I call the method with do (d ..mymethod()) everything works fine but calling it with Job (J ..mymethod()) it seems that the javascript part is not working, is there a way to fix this?

The reason why I'm using Job call because I need it to run in background and not to hold other processes.

0 5
0 112
Question
· Aug 9, 2023
Reports roadmap

We are about to embark on a development where we'll be taking HL7 messages and generating PDF reports from them. We are wanting to future proof our development efforts within the constraints of our currently deployed platform and future upgrade options. We are currently running on Ensemble 2018, though an upgrade to Iris is anticipated - at some indeterminate point in the future. We are aware of Zen Reports and InterSystems Reports (Logi) as technology options, but are also unclear on some details. A roadmap and guidance from those who've done this kind of thing before would be great!

0 3
0 130
Question
· Jun 1, 2017
Casting JSON

I'm doing a REST service. A method has as body parameter a JSON corresponding to a class A.

In my production I have class A so that I retrieve the parameters using a dynamic object, such that:

Set body = ##class(%DynamicObject).%FromJSON(%request.Content)
Set myObjectA = ##class(A).%New()
Set myObjectA.Id = body.Id
Set myObjectA.Name = body.Name
Set myObjectA.Date = body.Date
Set myObjectA.Salary = body.Salary

I would like to know if I can avoid doing the manual mapping, doing a casting, since I am sure that FromJSON will return a class A. Something like this:

0 9
1 871
Question
· Jul 23, 2019
Routing Rule New Line Syntax

Hi all,

I'm working on a routing rule for Ens.Alert. I'd like to add some text to the email alert but I'm having trouble formatting the text. I want a new line after the original alert with my own text. I will attach a screenshot. Looking at the "assign" line, I'm looking for what I need to use in place of "\r\n" to make a new line.

0 6
0 418

Greetings.

I have a scenario in ENSEMBLE, where a business process router A is dependent on another business process router B. If B shuts down for some reason, A has to be disabled as well.

Do i need to write a custom process for B and call the call back method onShutdown or something?

Any suggestions would be appreciated.

Thanks,

Jimmy Christian.

0 0
0 97

I would like to search for all messages where their body size is greater than 3MB.

I have searched through the common Header and body properties and I have not found a size property. I have looked at the extended properties but I am unsure if any of the extended classes allows me to find the Doc size.

I have stepped through most of the body property classes related to messages or documents that have an exposed property that filters by document or message size.

Is there a way to do this within the Message Viewer or Terminal?

Thank you in advance.

0 4
0 207

Hi Community,

Enjoy watching the new video on InterSystems Developers YouTube:

Introduction to InterSystems Products

https://www.youtube.com/embed/oUhOUaUrh-s
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

3 0
1 165

When creating custom Business Hosts, it's often necessary to add properties to the class for additional settings that will be used in the initialization or operation of the host. The property name itself isn't always very descriptive, so it's an advantage to have a custom caption display with the field.

In Caché, it was fairly straightforward:

8 4
3 268

Now the Classes/Rutines/DeepSee files will be automatically exported to the working directory after saving or compiling and files will be automatically deleted .

https://www.youtube.com/embed/B1pmqAQqd4M
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

Installation

To install isc-dev , you just need to download and import the file isc-dev.xml from last release.
Some ways to import isc-dev .xml file:

  • Go to Management Portal -> System Explorer -> Classes -> Import and select the XML file.
  • Drag the file over Studio.
  • Terminal command:
NS>do $system.OBJ.Load("yourpath/isc-dev.xml","ck")
NS>zpm
zpm: NS>install isc-dev

How to enable this feature:

  • After importing the class in the target namespace, run the following method to set up the working directory:
NS>do ##class(dev.code).workdir("/path/to/your/working/directory/src/")
  • Go to Management Portal -> System Administration -> Configuration -> Additional Settings -> Source Control.
  • Select the target namespace and set the dev.FileManExtension class as the main one and save it.
  • Try to create a new class in the studio and save/compile it
  • Enjoy!
4 4
2 445

Hi folks, does anyone got the .sef file for the D93A EDIFACT (INVOIC specifically)?

Setting it up to an old customer but I lost my copy of it as I used it a long time ago.

Would be so helpful if anyone have it.

Thanks

0 0
0 119

I need to create a routing rule where I've got to check for the value of "-" in field 5 of a repeating RQD segment, if the "-" is found in any of the RQD-5 I want to send it to a transform, if the rule doesn't find a "-" in any of the RQD-5 I want to send it to another transform.

Unfortunately we are running an older version of Ensemble and the foreach function is not available.

The other thing to add is the transforms are writing the output to a flat file so my business process is using the EnsLib.MsgRouter.RoutingEngine class.

Sample message:

0 4
1 303
Article
· Jul 6, 2023 1m read
How to overload methods in ObjectScript

InterSystems FAQ rubric

The InterSystems ObjectScript language does not allow you to define methods of the same name with different arguments. It is generally classified as a programming language called a dynamic language.

In ObjectScript, you can freely control which arguments are used when executing a method, so unlike languages ​​such as Java, which are not dynamic programming languages, there is no need to strictly distinguish methods by the number of arguments at the compilation stage.

5 0
1 215

InterSystems FAQ rubric

For volatile tables (tables with many INSERTs and DELETEs), storage for bitmap indexes can become inefficient over time.

For example, suppose that there are thousands of data with the following definition, and the operation of bulk deletion with TRUNCATE TABLE after being retained for a certain period of time is repeatedly performed.

3 0
0 214
Article
· Jun 22, 2023 1m read
Countermeasures against SQL injection

InterSystems FAQ rubric

Countermeasures against SQL injection have been published on various websites, but we believe that it is possible to prevent SQL injection in applications using InterSystems SQL as well as other RDBMS by implementing these countermeasures appropriately. In addition, InterSystems Data Platform (hereinafter referred to as IRIS) incorporates several measures that make SQL injection more difficult than general RDBMS.

4 0
0 398

Had an issue on Friday where a vendor added an additional field in the middle of a row of one of our record maps. This threw the mapping off when I take the record and try to map it into HL7 and caused massive amounts of errors in our EMR because the data was wrong.

Is there a way that I can add validation on the Business Service to say if the fields are off to fail, stop, and alert on the Business Service?

0 2
0 158

How do I determine the size of an X12 message within the Rule Editor? I should add this is for HealthConnect or Ensemble.

The FullSize property always shows 122, and the FullSizeGet method isn't available within the Rule Editor.

Our vendor can't handle messages over 500,000 characters, so I need to write those to another queue for later processing, and to get the interface into they're system from crashing.

Thanks,

0 2
0 156

Hi guys,

How can I get the list of printer in client Zen page?

We currently use an ActivexObject call "MSDesign.WebLabel" to get the list of printer loaded in a dropdown in our Zen pages:

webControl = new ActiveXObject("MSDesign.WebLabel");
if (webControl!=null) printers = webControl.getPrinters();
and this will give us a list of printers available in client machine but this does work in Edge or Chrome, is there a tool or simple code that I can use to get me the list of printers available?

Thanks

0 2
0 136
Article
· May 25, 2023 2m read
API to import/export routines

This is an article on the InterSystems FAQ site.

1. Export API

a. Use $system.OBJ.Export() to specify individual routines to export. For example:

do $system.OBJ.Export("TEST1.mac,TEST2.mac","c:\temp\routines.xml",,.errors)

The format to specify is routine name.extension, and the extension is mac, bas, int, inc, obj.

Errors during export are stored in errors.

7 2
2 386
Question
· Jun 13, 2023
CDA to CDA transformation

Hi Community,

I am new to CDA to CDA transformation in ensemble, Can anyone explain how Match,Select,Varibel,Attribute,Copy,Method Will work in CDA transformation using xslt stylesheets

Smythee

0 0
0 123