Robert Cemper · Mar 10, 2021 go to post

You are correct. I can confirm it.
I was part of the process when DeepSee V1 was prepared.

Robert Cemper · Mar 10, 2021 go to post

I'm full with you.
And if you aren't under time pressure you get a close look at things that have become obsolete over time but never were removed.

Robert Cemper · Mar 8, 2021 go to post

in OEX there is a series of various  Websocket Clients I produced:
The internal is just available in IRIS.
Half Externals (eg. CSP based, using JavaScript )  might fit also for Caché 2015 as for IRIS
check WebSocketClient CSP based
 

Robert Cemper · Mar 8, 2021 go to post

You mention: web application configuration information, task plans, sql gateway, etc
Namespace %SYS was always excluded from MIRROR  since most of the information is
either static (SYSLIB)  or server-specific (eg. journal)
 

Robert Cemper · Mar 8, 2021 go to post

@Alexey Maslov
I had a similar experience with "InPlace".
This may work if your applications are as simple as in SAMPLES:
[ "nome est omen" SAMPLES => Simple]
Just a few $ZU() or other %z* stuff may break you, or file references containing *CACHE*.
Or some $ZF() functions with c-binding, ....

Therefore I designed my "2 worlds" approach using ECP as a data bridge: 
Using ECP across IRIS and Caché

Robert Cemper · Mar 6, 2021 go to post

Definitions might be wrapped into some $$$macro that calls the .INT directly.
Similar to some compiled class . Deployed classes provide more comfort.

Robert Cemper · Mar 5, 2021 go to post

example 1 can't work.
WHERE Cidade = 'Cidade 1' AND Cidade = 'Cidade 2'
it is 1 value or the other but not both (AND) at the same time

Robert Cemper · Mar 5, 2021 go to post

Stay tuned! 
I'm almost done (most likely before Monday) with a demo of how you can make a soft transition. 

Robert Cemper · Mar 2, 2021 go to post

@9.9.  storage is generated once if not existing yet.
you may change it manually (typically data location global) as long as there is nothing stored yet
otherwise you lose the existing content. Or you copy it to the new location.
My article The adopted Bitmap shows such an example [actually also in contest}

Robert Cemper · Mar 1, 2021 go to post

6 & 7 are side effects of object inheritance.
Think of a class Person.
But Employee Extends Person
Similar Students Extends Person too
So you have 3 tables but all are Persons  Some with extension some not.  

@6: Table Employee corresponds to class Person and to class Employee

@7: So class person corresponds to Table PERSON, EMPLOYEE , STUDENT

Robert Cemper · Feb 24, 2021 go to post

Depending on the environment you use embedded SQL the variable SQLCODE may not reach you. This is related to variable scoping. Therefore it is better to use any variant of Resultset.
For variable scoping see my article here 

Robert Cemper · Feb 19, 2021 go to post

<CLASS DOES NOT EXIST>%Close...
is typical if try to access resultset or just delete rset  after leaving namespace %SYS.
Just reproduced it.

%SYS>w !,rset.%Next(),?5,rset.%Get("Directory"),!?30,rset.%Get("Size"),?40,rset.%Get("MaxSize")
 1    c:\intersystems\iris\mgr\enslib\
                              163       Unbegrenzt
%SYS>ZN "USER" 
USER>k rset
<CLASS DOES NOT EXIST>%CloseCursor+3^%SQL.ClassQueryResultSet.1 *SYS.Database
USER>
Robert Cemper · Feb 19, 2021 go to post

#1 there is no "SELECT LAST_SERIAL()" 

#2 depending what your expectation on LAST is I see 2 possible workarounds
#2A LAST = max:    "SELECT MAX(test_id) FROM test
#2B LAST = latest: "SELECT test_id, MAX(ID) FROM test GROUP BY  2"

#2B is based on the fact that you always have an  auto-incremented ID and it's a shortcut of
"SELECT test_id  FROM test where id = (SELECT max(ID) from junior.test)"
or
"SELECT TOP 1 test_id FROM test WHERE ID < 999999999999999999 ORDER BY ID DESC

Robert Cemper · Feb 18, 2021 go to post

What I asked for:

In your Method written in Objectscript, after 
&sql(update X_X.X  set LocalEnvironment=1 where %ConfigName IN('X_X_X''Y_Y_Y'))

Variable SQLCODE holds a success / failure code.  That's what I asked for.
see this example: 
https://docs.intersystems.com/iris20201/csp/docbook/Doc.View.cls?KEY=GSQL_esql#GSQL_esql_syntax_ampsql
or 
https://docs.intersystems.com/iris20201/csp/docbook/Doc.View.cls?KEY=GSQL_esql#GSQL_esql_code_literals
and
https://docs.intersystems.com/iris20201/csp/docbook/DocBook.UI.Page.cls?KEY=RERR_sql#RERR_C136606

Robert Cemper · Feb 18, 2021 go to post

You may stick with '/' and run $TRANSLATE(record,"/","~")
just before writing the record to your file.DAT

Robert Cemper · Feb 18, 2021 go to post

did you try ! or  ? instead of ~ 
since ~ might be a reserved default separator to HL7

Robert Cemper · Feb 18, 2021 go to post

What does SQLCODE tell you after your embedded SQL query?
What is your real $ZV ?