Eduard Lebedyuk · Dec 21, 2023 go to post

You can try just SQLPROJECTION = "table/column" but I highly recommend testing it first.

Eduard Lebedyuk · Dec 21, 2023 go to post

If there's no data yet, project it as a table:

Property CodeTable As list Of Sample.CodeTable(SQLPROJECTION = "table/column", STORAGEDEFAULT = "array");
Eduard Lebedyuk · Dec 19, 2023 go to post

You can set it programmatically:

set package = ##class(%PackageDefinition).%OpenId("User",,.sc)
 
zw package
package=2@%Library.PackageDefinition  ; <OREF>
+----------------- general information ---------------
|      oref value: 2
|      class name: %Library.PackageDefinition
|           %%OID: $lb("User","%Library.PackageDefinition")
| reference count: 2
+----------------- attribute values ------------------
|       %Concurrency = 1  <Set>
|         ClientName = ""
|        Description = ""
|       GlobalPrefix = ""
|               Name = "User"
|          OwnerName = ""
|          RtnPrefix = ""
|            SQLName = ""
+----------------- swizzled references ---------------
|             i%list = ""  <Set>
|             r%list = ""  <Set>
+-----------------------------------------------------
Eduard Lebedyuk · Dec 15, 2023 go to post

XSLT unless we are talking about a very large files to be processed very quickly in which case SAX parser might be worth a consideration.

Eduard Lebedyuk · Dec 15, 2023 go to post

Can you show an example of source ASTM file and a resulting HL7 you want to get, please?

Eduard Lebedyuk · Dec 12, 2023 go to post

Are you getting Ens.StreamContainer?

It would be OriginalFilename property in that case.

Eduard Lebedyuk · Dec 11, 2023 go to post

I would try a password with just a-z, A-Z, 0-9, !#$%^&*()[]{}. Maybe there's some issue with wide characters?

Eduard Lebedyuk · Dec 11, 2023 go to post

You need a restart following this rename. Also try to replace cgateu.so with cgateur64.so.

Eduard Lebedyuk · Dec 6, 2023 go to post

Encountered similar issue:

ERROR #743: CA certificate file is not valid [%OnValidateObject+97^Security.SSLConfigs.1:%SYS]

Turns out, Extension:basicConstraints field of the CA certificate must contain CA:TRUE. The BasicConstraints extension is intended primarily for CA certificates. It has a single Boolean variable, “cA”, which reflects whether or not the certificate is a CA certificate. If the certificate is a CA certificate, it can also declare a pathLen constraint that dictates how many sub-CAs are allowed to exist in the hierarchy of CAs.

To check:

Set bc=$System.Encryption.X509GetField(cer,"Extension:basicConstraints")
Write bc["CA:TRUE"
Eduard Lebedyuk · Nov 28, 2023 go to post

Why not just use %JSONFIELDNAME?

Anyway, this works:

Property "@name" As %String;
  
Property "😋_are_you_sure_😋" As %String;
Eduard Lebedyuk · Nov 24, 2023 go to post

Is CDATA actually getting sent or is it just a visualization issue?

I suppose you can use HS Trace operation or IO logging to get the raw output.

Eduard Lebedyuk · Nov 22, 2023 go to post

Try to start Remote Gateway from the SMP and check the error there. Current error you see is caused by the fact that Gateway is not started or IRIS can't connect to it.

Eduard Lebedyuk · Nov 22, 2023 go to post

You need CONTENT=ESCAPE instead of CONTENT=STRING. Here's an example:

Class Utils.XML Extends (%RegisteredObject, %XML.Adaptor)
{

Property PACPROBLEMAS As %String(CONTENT = "ESCAPE", MAXLEN = "", XMLNAME = "PAC_PROBLEMAS");

/// do ##class(Utils.XML).Test()
ClassMethod Test()
{
	set obj = ..%New()
	set obj.PACPROBLEMAS = "1<2"
	do obj.XMLExportToString(.xml)
	zw xml
}

}

Produces:

<XML><PAC_PROBLEMAS>1&lt;2</PAC_PROBLEMAS></XML>

Documentation.

Eduard Lebedyuk · Nov 5, 2023 go to post

What's "RO" stand for?  

ReadOnly.

After the customer deployment, if there is any change made on the production settings (e.g. changing an AE Title on the DICOM service), those settings are stored in the APPCODE, and the settings will be lost after a container PODS restart (kubernetes recreating the PODS).

Two ways to avoid that:

Eduard Lebedyuk · Nov 3, 2023 go to post

Great article!

For cases, where you don't want to share the source at all (even if it's immediately deleted), the following approach would work:

1. On your system (with source code) execute:

set p=##class(%Studio.Project).%New()
do p.AddItem("WH.Color.cls")
do p.AddItem("WH.Size.cls")
do p.DeployToFile("c:\test\app.xml",,1)

It will create an XML export with object code only and no source code included.

2. Transfer the file into a target system and execute:

set sc=##class(%Studio.Project).InstallFromFile("c:\test\app.xml")
Eduard Lebedyuk · Nov 3, 2023 go to post

APPCODE must be RO if you want to leave it in the container to be replaced as a part of the container.