go to post Vitaliy Serdtsev · May 15, 2025 When I run below code in the Cache terminal, it returns 0, so it seems to be the 8-bit version. That's what I thought. I have the Unicode version installed, the rusw locale, and there are no problems at all. Example Class dc.a Extends %Persistent { Index is On s; Property s As %String; /// d ##class(dc.a).Test() ClassMethod Test() { s t=..%New() s t.s="최봉남" d t.%Save() } } From any JDBC client: select * from dc.a Result: ID s 1 최봉남 (When I check from the Management Portal, it shows as Latin1. If there's a more accurate way to verify this, please let me know.) In SMP: System Administration > Configuration > National Language Settings > Locale DefinitionsYou should have something like kor8, enu8, eng8, etc.
go to post Vitaliy Serdtsev · May 15, 2025 Which version of Caché are you using: 8-bit or Unicode? What locale is set by default?
go to post Vitaliy Serdtsev · May 15, 2025 Update tablename set column1 = column1 || ' world' where ...
go to post Vitaliy Serdtsev · Apr 24, 2025 It seems that adding to favorites via the management portal itself has also stopped working. Interestingly, there is no error in this case. Add to favorites in Management Portal
go to post Vitaliy Serdtsev · Apr 18, 2025 IRIS 2025.1.CE: the error is the same. Why the %Library.EntityProjectionUtil class is missing in the system is a good question for developers.
go to post Vitaliy Serdtsev · Apr 18, 2025 ##class(%DynamicObject).%FromOref() Is this what you were looking for?
go to post Vitaliy Serdtsev · Apr 18, 2025 Script Command Arguments: Note: Any ASCII (extended) character except NUL (000) can be produced via <ddd> where ddd is the decimal value of the character. USER>w $a("<") 60 USER>w $a(">") 62So, something similar is needed: echo: off send: s V=4 I (V<60>48!(V<62>57))&&(V<60>65!(V<62>90))&&(V<60>97!(V<62>122)) W A,?10,G,?30,B,! wait for:USER>
go to post Vitaliy Serdtsev · Apr 15, 2025 I join the question @Ashok Kumar T. I did not find DP-422635 and DP-424156 among the published ones: InterSystems IRIS® Change Notes (2024.1.3) InterSystems IRIS® Upgrade Checklist (2024.2) InterSystems IRIS® Upgrade Checklist (2024.3) InterSystems IRIS® Upgrade Checklist (2025.1) In addition, there are no warnings in the documentation that these methods are deprecated and no longer work: Calling Functions and Procedures from Python
go to post Vitaliy Serdtsev · Apr 14, 2025 See Run an ObjectScript Routine from Embedded Python2024.1 Example: USER>d $system.Python.Shell() >>> iris.routine("fnString^IRISPython",14) 'Hello 14' >>>
go to post Vitaliy Serdtsev · Mar 31, 2025 Initially, the question was asked in relation to Caché or/and Ensemble 2018.1, but not to IRIS.
go to post Vitaliy Serdtsev · Mar 28, 2025 There are many examples in the documentation: Using Dynamic SQL
go to post Vitaliy Serdtsev · Mar 14, 2025 $SYSTEM.Process.UserName(##class(%SYS.ProcessQuery).NextProcess(""))
go to post Vitaliy Serdtsev · Mar 13, 2025 Another solution via $LISTFROMSTRING: set s="item1" for i=2:1:5 { set s=s_",item"_i } set mylist=$listfromstring(s) zwrite mylist ; mylist = $lb("item1","item2","item3","item4","item5")
go to post Vitaliy Serdtsev · Mar 10, 2025 IRIS for Windows (x86-64) 2024.3 (Build 217U) Thu Nov 14 2024 17:59:58 EST Or "Include EnsUtil" Now you can do it like this: ##class(%BigData.ShardedSQL).ClassNameToTableName(pClassName)
go to post Vitaliy Serdtsev · Mar 10, 2025 USER>w $zv IRIS for Windows (x86-64) 2024.3 (Build 217U) Thu Nov 14 2024 17:59:58 EST USER>w $$GetEnvironment^%apiOBJ("collation","%Library.String",.collval),! zw collval 1 USER>w $$GetEnvironment^%apiOBJ("collation","dc.Username",.collval),! zw collval 1 USER>zn "%SYS" %SYS>w $$GetEnvironment^%apiOBJ("collation","%Library.String",.collval),! zw collval 1 %SYS>w $$GetEnvironment^%apiOBJ("collation","%Library.Username",.collval),! zw collval 1
go to post Vitaliy Serdtsev · Mar 10, 2025 Strangely, I had no issues with the %Library.Username type. I didn't explicitly specify the collation anywhere: neither in the data type class nor for the Namespace-wide. Namespace '%SYS': Class %Library.Username Extends %String { Parameter MAXLEN As INTEGER = 160; }Namespace 'USER': Class dc.Username Extends %String { Parameter MAXLEN As INTEGER = 160; } Class dc.a Extends %Persistent { Index is1 On s1; Index is2 On s2; Index is3 On s3; Property s1 As %String; Property s2 As %Username; Property s3 As dc.Username; ClassMethod Test() { d ..%KillExtent() f s="joefu","JoeFu" { s t=..%New() s t.s1=s s t.s2=s s t.s3=s d t.%Save() } zw ^dc.aD,^dc.aI } }select FIELD_NAME,DATATYPE,COLLATION_FUNCTION,MAXLEN from %Library.SQLCatalog_SQLFields('dc.a') FIELD_NAME DATATYPE COLLATION_FUNCTION MAXLEN ID %Library.BigInt (null) (null) s1 %Library.String SQLUPPER 50 s2 %Library.Username SQLUPPER 160 s3 dc.Username SQLUPPER 160 x__classname %Library.RawString (null) (null) select INDEX_NAME,FIELDS from %Library.SQLCatalog_SQLIndices('dc.a') INDEX_NAME FIELDS is1 $$SQLUPPER({dc.a.s1}) is2 $$SQLUPPER({dc.a.s2}) is3 $$SQLUPPER({dc.a.s3}) USER>d ##class(dc.a).Test() ^dc.aD=2 ^dc.aD(1)=$lb("","joefu","joefu","joefu") ^dc.aD(2)=$lb("","JoeFu","JoeFu","JoeFu") ^dc.aI("is1"," JOEFU",1)="" ^dc.aI("is1"," JOEFU",2)="" ^dc.aI("is2"," JOEFU",1)="" ^dc.aI("is2"," JOEFU",2)="" ^dc.aI("is3"," JOEFU",1)="" ^dc.aI("is3"," JOEFU",2)=""
go to post Vitaliy Serdtsev · Feb 28, 2025 See Class Reference: Class %Stream.FileBinaryGzip Extends FileBinary Class %Stream.FileBinary Extends %Stream.Object Hence %Stream.FileBinaryGzip is already the heir of %Stream.Object.
go to post Vitaliy Serdtsev · Feb 14, 2025 It seems to me that there is a typo in the TestStartBottomLeft method: should be Do $$$AssertEquals(##class(codeGolf.ClockwiseWord).Solution(.matrix, 3, 1), "781234569")