How are you currently sending the email now?
Using a BO with EnsLib.EMail.OutboundAdapter?
Using %Net.SMTP class directly in your code?
Or?
- Log in to post comments
How are you currently sending the email now?
Using a BO with EnsLib.EMail.OutboundAdapter?
Using %Net.SMTP class directly in your code?
Or?
The command that closes the Lite Terminal when issued in IRIS for Linux is:
Close 0
The same command does not close the Lite Terminal in IRIS for Windows.
Why ⁉️
I tested it in my PC and it worked, so I was (almost 🙃) going to respond....
Before posting I tested again connecting to a Linux server and....I was able to reproduce the issue reported.
So, connecting Lite Terminal to a Windows IRIS instance %G works fine, when connected to a Linux instance then Lite Terminal closes when exiting %G.
Interesting, isn't it? 😊
10 out of 12 😊
Nice Tips & Tricks list! 🙂
Very useful.
Regarding #10 "Converting JSON array (%DynamicArray) to a comma-separated string and back:"
USER>Set jsonArray = ["test1","test2","test3"]
USER>Set str = $TRANSLATE(jsonArray.%ToJSON(), "[]")
USER>w str
"test1","test2","test3"The returned is not really what I consider a "comma separated string".
To return my definition of "comma separated string" it would be:
USER>Set str = $TRANSLATE(jsonArray.%ToJSON(), """[]")
USER>w str
test1,test2,test3Then, going back...it's another story 😉
Regarding #2 "Error check when we use Embedded SQL (&sql())"
In addition to error code and description it's often useful to get/include error details, like:
Return:SQLCODE<0 $$$ERROR($$$GeneralError, $$$FormatText("Operation failed. SQLCODE = %1: %2 (%3)", SQLCODE, $SYSTEM.SQL.Functions.SQLCODE(SQLCODE),%msg))WARNING: make sure to NEVER run that code in a mirrored environment!
For example, if you instruct it to extract data where a column value equals “Support,” it may generate a condition like = 'Support' in the SQL query.
However, since the actual returned value is “SUPPORT,” the condition does not match.
Not really, when using the default %String collation (SQLUPPER) the SQL "=" condition is case insensitive, for example:
WHERE name = 'Enrico'
WHERE name = 'ENRICO'
WHERE name = 'enrico'
All match the record/row with my name regardless of the case is stored in the table.
If collation is changed to SQLSTRING, then only exact case will match the condition.
$$$ThrowOnError(##class(Ens.BusinessService).SendRequestAsync(tServiceConfigName, tRequest))
SendRequestAsync() is an instance method, not a class method, how can this line possibly work?
You are not supposed to call OnProcessInput() method.
You need to IMPLEMENT OnProcessInput() and call ProcessInput().
You don't provide any context, my guess is that you need to localize the HealthShare Clinical Viewer, correct?
If so, please check the relevant documentation: Localize the Clinical Viewer
Meet so many old friends, colleagues and new people that share the same interests and passion for InterSystems Technology!
It's not easy but you may find ways to narrow the origin.
One possibility is to check the journal file entry where the corresponding global node of the HL7 Message
To identify what journal file to check/search look for a non empty HL/ message this ID cose to the empty orphaned message and find the date/time it was created.
HL7 messages (not segments) are stored in ^EnsLib.H.MessageD(MessageID).
Find in the journal file the entry of the creation of the empty orphaned message, it contains the process id ($job) that created the message and exact date-time of creation.
The process id may be used to point what Business Host (BS, BP or BO) created the message.
Then I'd look for the trace of messages sent/received by that Business Host "around the time" the empty message was created.
All this is possible and relatively easy if the empty orphaned message is relatively new (the newer the better), if old, then you may not have the journal file and/or the job that created it may not be still running (restart production or host, etc.).
I'd suggest to start with the documentation chapter Resiliency and Data Integrity
Then you can come back if you still have questions.
Where else you can get in touch with so many IRIS delevopers, including InterSystems products developers?
If you need " official recommendation" you should contact InterSystems WRC, this is a Developer Community.
What type of ResultSet? Can you please provide the exact class name of the ResultSet you use?
Congrats to all participants and winners! 👏👏👏
And DaysBack is a property, daysBack is a variable.
To get it working using DBeaver Community 25.3.5 I had to put the SSLConfig.properties file in C:\Program Files\DBeaver and then it works!
Thank you @Benjamin De Boe 🙂
One option could be:
Set last=$o(^A(""),-1)
Set ^A(last_"z")="new last value"
In fact you can concatenate anything, not necessarily a "z"..
If the first subscript is always numeric, then:
Set last=$o(^A(""),-1)
Set ^A(last+1)="new last value"
Well done! 👏
The first parameter is a $list, try with:
do ##class(%SYS.TaskSuper).ExportTasks($lb(1022,1023),"/opt/contenedor/tasks.xml")
Note that the documentation for the ExportTasks() method you linked in your post says:
List of task IDs to export $lb(1,2,3)
Thank you @Jim Nelson and @Vitaliy Serdtsev
Does your license include Personal Community feature?
Hi @Vitaliy Serdtsev thank you for your answer, however I need to reproduce the same interface/definition as currently implemented in Oracle that is using a CLOB column.
The JDBC client access the Oracle table and is implemented (for that column) using a CLOB that (I believe) it's different than accessing a LONGVARCHAR. The idea would be to use IRIS instead of Oracle without changing (most of) the code.
Where is defined/documented the JDBC LONGVARCHAR maximum length?
My search cannot find any reference on max size of 2147483647
@DC AI Bot 😁thank you for the sample code on how to consume a CLOB via JDBC, unfortunately I need to expose a CLOB to JDBC! 😞
Interesting

😂
I think this is the expected behavior, in your sample code you are importing JSON to the same existing object, so it "add" (or update if you prefer) to the existing object.
If you want/need to import the JSON to a new object, then do so, and create a new instance before importing:
set r = ##class(User.ADGroup).%New()