InterSystems Developer Community is a community of 22,411 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!
Question
· Nov 29, 2017
TCP adaptor + SSH Tunnel

Greetings.

We have one vendor who requires us to send data using TCP

through an SSH port forwarding tunnel that is set up in advance.

UNIX scripts maintain this, and the Ensemble interface uses a TCP Adapter.

I was thinking that Ensemble could maintain the SSH tunnel,

which would improve our detecting of issues.

Has anyone done something like this?

I see that the class %Net.SSH.Session has a method ForwardPort,

but it doesn't stand up the tunnel by itself. Instead, it appears

0 1
0 479

I am trying to find documentation on how Cache Studio locks a Routine/Class a developer is editing.

On the flip side, I am looking for documentation on how Atelier does the same.

Ultimately I am looking for the differences and what happens if both Studio and Atelier through different developers go after the same Routine/Class.

I am not asking for an answer (however that would be nice), I am looking for pointers to documentation.

4 7
0 694
Question
· Nov 27, 2017
"Contains" operation for bitstring

aa=$zwc(411,1,1,3)/*$bit(1,3,5)*/
bb=$zwc(403,1,0,2)/*$bit(1,3)*/

Is there a handy function to test wether one bit string is covered by another one bitstring? For example, "bb" is covered by "aa".

I currently implement this by one AND operation and then do a bitcount, I just want to know any default function is already out there.

Thanks.

0 3
0 384

Hello,

I was wondering if there is a way to maybe temporarily alter the [Private] tag dynamically or any other way to run a Unit test against class method, which has been labeled as [Private]?

I mean, I understand there is a workaround to create a non private class method inside this class, which will in turn call this private method and run a Unit test on the non private method, but I am looking for a way to do this without altering the original class.

Thank you,

Alex

0 2
0 385
Article
· Nov 27, 2017 1m read
Upgrading TLS configurations

Caché will not change the cryptographic settings in an existing TLS configuration when you upgrade. This means that unless you've updated them yourself, you're still using the values from the very first version you started using SSL in.

5 2
0 951
Question
· Nov 21, 2017
Custom SOAP header

Greetings!

Hopefully someone has an answer on this, I cannot find any example or understand from the documentation how to acheive this.

I have a SOAP header subclass

Class AddressType Extends %SOAP.Header
{

Parameter ELEMENTQUALIFIED = 1;

Parameter MAXLEN;

Parameter NAMESPACE = "urn:registry:1";

Parameter XMLNAME = "urn:LogicalAddress";

}

In my %SOAP.WebClient I use it like this:
set customHeader = ##class(AddressType).%New()
do ..HeadersOut.SetAt(customHeader,"AddressType")

0 5
0 723
Question
· Nov 23, 2017
Indexing null value

Dear community!

I have problem with index NULL value. Unique index doesn't work for this case. If I use insert and one of parameter is "NULL". Message of constraint doesn't appear and row is inserted into table successfully. How Can I use index with NULL?

1 3
0 717

I have been working on a project in our Dev environment which resulted in processing a few (million) HL7 messages, and I thought it would be a good idea to purge the namespace in a controlled way. My concern was when it hit the day where the scheduled task would purge 'the day of a million messages', it would fill the Journal Drive quite dramatically and would happen overnight resulting in triggering a response from the poor person on out of hours support.

My idea of a controlled way was to:

0 6
0 1.1K

I ran the below query in three different modes. Coordinated Universal Time is 5 hours ahead of Eastern Time so there is difference in value from column 1 and column 2 in ODBC, Display mode, but not in Logical Mode. By default the query executes in ODBC mode when we query the data from outside world(via ODBC connection).

I don't know why query 2 and query 3 outputs different from query 1.

Query 1. Ran in Logical mode, DATEPART() took in memory stored timestamp data(stored in UTC)

0 3
0 463