Question Roger Merchberger · Jan 10, 2020

TL;DR: If I set an Ensemble  Production Service based on EnsLib.File.PassthroughService to a Binary charset encoding, it breaks the file handling. Any ideas?

Full long post:

All,

I set up an Ensemble production to transfer files via SFTP, which works fine sending the files to my Linux server. Then I was informed that we needed to save a hash of the file, for comparison with the destination to verify the file arrived unmodified. I looked at the base64 encoded hash on my linux server:

G7QWAP6FcLInFWP8ECRL/EI2NfKdaf6TtrpwYuvSOEc=

and I created a class to extend the StreamContainer to add a hash value:

8
0 491
Article Eduard Lebedyuk · Jan 13, 2020 1m read

While and for are pretty similar, but sometimes you need to do a not recommended thing - change cycle boundaries.

In this situation while and for are different. For calculates boundaries once per run and while calculates boundaries on every iteration.

Consider this code sample:

set x = 5
for i=1:1:x {
     write "i: ", i,", x: ", x,!
     set x = x+1
}

You'll get this output:

i: 1, x: 5
i: 2, x: 6
i: 3, x: 7
i: 4, x: 8
i: 5, x: 9

Compare to while cycle:

set i = 1
set x = 5
while (i<=x) {
    write "i: ", i,", x: ", x,!
    set x = x+1
    set i = i+1
}

The output is infinite:

7
0 516
Question SomeBoDey CPS · Jan 9, 2020

Please suggest me.

I use delphi to develop and import VISM.OCX to component in delphi.

I run My Qurey Code in terminal get data many line but in VisM1.PLIST get data One line.

This is my code.
  VisM1.MServer := 'IP and Port My Server';
  VisM1.NameSpace := 'My Namespace';
  VisM1.Execute('My Qurey Code');

  VisM1.PLIST;

4
0 512
Article Evgeny Shvarov · Jan 12, 2020 2m read

Hi Developers!

Suppose you published your application on Open Exchange with version 1.00. And then you've added a new outstanding feature and you make a new release.

You can also make a new release of your application on Open Exchange.

Why make releases on Open Exchange? 

This the way for you to highlight the new features of your application. When you publish a new release the following happens:

Release notes appear on the News page of Open Exchange

The version of your app changes

Version History tab is updated

All the followers of you, your application or your company receive an email notification.

0
0 312
Question Rob Tweed · Sep 8, 2016

Some may think it's a strange / daft idea, but just today the Raspberry Pi folks have announced that they've now sold more than 10 million of them..and counting.  That's a huge potential marketplace, and a great platform for getting people to hear about Cache and try it out.  Given its focus on the education sector, another great way of getting heard about.

18
0 2882
Question Yone Moreno · Jan 11, 2020

I am trying to create a rule which filters out ADT_A08 messages, when they have an OBX segment and their EVN.4 is "COD" or EVN.4 is "FIN"

The attempt is:

I have sent messages with EVN.4 COD or FIN and they are filtered out correctly

However if I remove EVN.4 and leave just the OBX filled up, the message passes from the Process to the Operation.

How could we express that if the message has OBX, we want it to be filtered out
 

3
0 467
Question Scott Roth · Jan 10, 2020

I am working on a BPL to take data from a MS SQL database and create an HL7 Materials Message for our EMR.  I have done this plenty of times in the past however I am running into an error.

"Remote Gateway Error: JDBC Gateway SP execute(0) error 0: Access to the remote server is denied because no login-mapping exists."

What is confusing is that this BPL doesn't differ from any of my other BPLs in connecting to MS SQL Server. I know I am missing something..

This BPL will execute the 1st Stored Procedure without any issues, the issue is when it comes to executing the second stored procedure.

3
0 848
Article Peter Steiwer · Jan 10, 2020 4m read

When using Related Cubes in InterSystems IRIS BI, cubes must be built in the proper order. The One side must be built before the Many side. This is because during build time for the Many side, it looks up the record on the One side and creates a link. If the referenced record is not found on the One side, a Missing Relationship build error is generated. The One side is going to be the independent side of the relationship, AKA the side of the relationship that is referenced by the Many side or the Dependent cube. For example: Patients contain a reference to their Doctor. The Doctor does not

0
0 591
Question Marta Soler · Aug 29, 2019

Hello!

I am taking the 'Creating an InterSystems Class Definition' course, and the Exercices asks to open a Terminal from the Management Portal to create and interact with a new object. I didn't found how to acces tot the Terminal from the Management Portal, and the documentation I have seen doesn't help me... sad

In some moment I saw a video wich explains how to acces to the terminal, but I can't find it. ¿Can someone explains me how to find the Terminal acces?

Thank you!

11
0 956
Announcement Anastasia Dyubaylo · Jan 5, 2020
Hi Community! Here is a digest of the Most Noticed InterSystems Developer Community Questions for 2019. Please welcome!
Most viewed




















5
0 496
Question Jorge de la Garza · Jan 9, 2020

I have an array of table names that I want to iterate over and for each table, get the number of rows.  I was hoping I could do something like:

set tStatement = ##class(%SQL.Statement).%New()set tSC = tStatement.%Prepare("SELECT COUNT(*) AS ObservedRowCount FROM ?")$$$ThrowOnError(tSC)set tTableName = ""for{  set tTableName = $O(tCounterAry(tTableName))  quit:tTableName=""set tResult = tStatement.%Execute(tTableName)
  // ...
}

But that doesn't work:

ERROR #5540: SQLCODE: -1 Message:  IDENTIFIER expected, ? found^ SELECT COUNT ( * ) AS ObservedRowCount FROM ?
2
0 677
Question Vikram Annadurai · Dec 20, 2019

Hello All,

I have connected InterSystems Cache remote server from Power BI using ODBC Connection . But I am not able to view the data records on Power BI getting some error "Value cannot be null. Parameter name: exceptionType". And also I checked with that remote server with the location   System > System Logs > View xDBC Error Log > xDBC Errors . On that place I can see the below error

2
0 907
Article Iryna Mykhailova · Jan 7, 2020 6m read

Some readers of my previous article, Caché eXTreme for .NET - direct access to globals from C#, wondered if you could access information not just from the same instance in which you’re working, but also from another instance on the same computer, or from an instance located on another computer in the same local network. Some theorized, correctly, that this would be possible using the Enterprise Cache Protocol (ECP). In this article I’m going to show how it can be done.

0
0 907
Article Peter Steiwer · Jan 7, 2020 1m read

Have you ever needed a math function but could not find what you needed and ended up writing your own? Look no further! ObjectScript-Math is here to solve all your math related function needs.

ObjectScript-Math is an Open Source library for ObjectScript Math functions. It is now available on Open Exchange. This library contains a mix of new functions that are not currently available and functions that are available. The existing functions will be wrapped for use from ObjectScript-Math so that all Math functions can have a central location.

This library will continue to grow, so give it a try and give your feedback!

Don't see what you are looking for? Please feel free to submit requests for additional functions or contribute code yourself!

0
1 488
Question Jeffrey Drumm · Jan 7, 2020

I'm currently working with a developer to add IRIS/Caché functionality to his HL7 analysis tool that would allow its users to extract messages directly from the Ensemble message store. IRIS for Health Community Edition has been a great aid in debugging this, but I keep banging into the 5 connection license limit with Studio, the Management Portal, an IRIS terminal session and a client database connection using either ODBC or ADO.NET. I end up having to close or log off something to be able to continue testing, and in some cases terminate processes that remain open (possibly the fault of the

1
1 725
Question Scott Roth · Dec 20, 2019

I have a case where I have an external table that lives out in MS SQL. Using Ensemble Security functions has anyone created a csp or cls page that acts like a portal to allow users to Update a multidimensional table without knowing SQL? I could clone the EnsPortal.LookupSettings but that was made for LUT which are only 2 columns.

I know its a long shot but trying to see if there was anything off the shelf that I can use to help meet the requirements of this project.

4
0 319
Question Tomoko Furuzono · Jan 3, 2020

Hi,

My customer is implementing HL7 validation using EnsLib.HL7.Util.Validator.Validate in an HL7 production.
They set validation spec "dmr-z" because they want to allow unrecognized Z-segments and verify the presence of required fields.
Despite using "-z", Z-segments are not allowed and the following error occurs:
<Ens> ErrGeneral: Cannot validate segment schemas without a category.Unable to validate segment 8: ZPR.
Aside to that, when the verification spec is “dm-z”, the Z-segment is allowed as expected.
Can 't "r" and "-z" be used together? 
Is there any other way to implement both validations?

2
0 421
Question Jeffrey Drumm · Jan 4, 2020

I've writing a short classmethod that extracts an HL7 message from EnsLib.HL7.Message by ID and returns it as a stream. It's to be called as a stored procedure via ODBC (or ADO.NET) to fetch messages into an application.

I'm not using an SQL query in the classmethod itself, but it will be called as part of an SQL query via ODBC, but I can't figure out how to set a custom SQLCODE and error text from within the classmethod that propagates back to the external application. I thought %sqlcontext would be useful for this, but it doesn't appear to do anything. Here's the class:

13
1 629
Article Eduard Lebedyuk · Jan 6, 2020 1m read

This series of articles would cover Python Gateway for InterSystems Data Platforms. Execute Python code and more from InterSystems IRIS. This project brings you the power of Python right into your InterSystems IRIS environment:

  • Execute arbitrary Python code
  • Seamlessly transfer data from InterSystems IRIS into Python
  • Build intelligent Interoperability business processes with Python Interoperability Adapter
  • Save, examine, modify and restore Python context from InterSystems IRIS

Other articles

The plan for the series so far (subject to change).

0
0 503
Article Peter Steiwer · Jan 6, 2020 4m read

What is %SQLRESTRICT

%SQLRESTRICT is a special %FILTER clause for use in MDX queries in InterSystems IRIS Business Intelligence. Since this function begins with %, it means this is a special MDX extension created by InterSystems. It allows users to insert an SQL statement that will be used to restrict the returned records in the MDX Result Set. This SQL statement must return a set of Source Record IDs to limit the results by. Please see the documentation for more information.

Why is this useful?

This is useful because there are often times users want to restrict the results in their MDX Result Set based on information that is not in their cubes. It may be the case that this information may not make sense to be in the cube. Other times this can be useful when there is a large set of values you want to restrict. As mentioned before, this is not a standard MDX function, it was created by InterSystems to handle cases were queries were not performing well or cases that were not easily solved by existing functions.

0
2 732
Article Ponnumani Gurusamy · Jan 4, 2020 2m read

About Intersystem Cache :

                                      Intersystem Cache is a commercial operational database management system from intersystem, used to develop healthcare management, banking and financial, government sectors software applications.

                                      InterSystems Cache is the world’s fastest object database. However, high performance is achieved only for transactional operations that have a significantly hierarchical nature

6
0 2668