go to post Vitaliy Serdtsev · Jun 4, 2025 Has it worked before? If so, then most likely there were some changes in the OS at the file/registry level. First, try to run on the command line (see Registering Files): >cd D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN>RegFiles.bat ALL If it doesn't help, try select Repair to repair problems with the instance such as missing or corrupt files or registry entries: Reinstalling or Uninstalling Caché
go to post Vitaliy Serdtsev · May 21, 2025 Great, that's something. Can you show the exact query text and the class source code for the SQLUser.PA_Person table?
go to post Vitaliy Serdtsev · May 21, 2025 In your question, yesterday you published the mgstat results for slow and fast servers. Now it looks like you've deleted this data, since I can't see it. Could you return them? I noticed a very significant difference there for two parameters, namely routinebuffers and numberofcpus.
go to post Vitaliy Serdtsev · May 21, 2025 Try to do my example and report the results. Also, try to run your query not in win sql, but in the InterSystems Management Portal.
go to post Vitaliy Serdtsev · May 21, 2025 Class dc.a Extends %Persistent { Property s As %String; ClassMethod Test() { &sql(truncate table dc.a) &sql(insert into dc.a(s) values('Hello')) d ##class(%SQL.Statement).%ExecDirect(,"select * from dc.a").%Display() w ! &sql(update dc.a set s=s||' world' where %ID=1) d ##class(%SQL.Statement).%ExecDirect(,"select * from dc.a").%Display() } } USER>d ##class(dc.a).Test() ID s 1 Hello 1 Rows(s) Affected ID s 1 Hello world 1 Rows(s) AffectedCan we see the error number and error text?
go to post Vitaliy Serdtsev · May 19, 2025 If that's correct, is there a way to configure the JDBC connection to interpret this data using EUC-KR encoding? No: Caché JDBC Connection Properties But even if JDBC had encoding settings, it wouldn't help you, because the 8-bit version of Caché doesn't support Korean and doesn't know anything about EUC-KR/KSC5601. PS: I would consider switching to the Unicode version of Caché, which already has support for the Korean language.
go to post Vitaliy Serdtsev · May 16, 2025 However, when I access the data through the Cache Management Portal, Cache Terminal, VSC, or IntelliJ, the Korean text appears broken, as I mentioned earlier. Give an example of what you see in globals in the InterSystems Management Portal: System Explorer > Globals Since you have an 8-bit version and not Unicode, you probably won't see the hieroglyphs (최봉남), but rather something similar to (ÃÖºÀ³²). This is not corrupted data, just a string stored in KSC5601/EUC-KR encoding. From Caché terminal (Unicode version, locale = korw (Korean, Korea, Unicode)): USER>w $zcvt("최봉남","O","KSC5601") ÃÖºÀ³² USER>w $zcvt("ÃÖºÀ³²","I","KSC5601") 최봉남The same on Java: System.out.println(new String("최봉남".getBytes(Charset.forName("EUC-KR")), Charset.forName("ISO-8859-1"))); // ÃÖºÀ³² System.out.println(new String("ÃÖºÀ³²".getBytes(StandardCharsets.ISO_8859_1), Charset.forName("EUC-KR"))); // 최봉남
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")