go to post Mihoko Iijima · Dec 5, 2023 Hi @Phil Burkhalter Does the "class namespace" mean package? (Sorry if I'm wrong.) If it's correct, you can get class name (=package.class) using WHERE clause to INFORMATION_SCHEMA.TABLES. Query example: I can filter "Test" package. SELECT CLASSNAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='Test'
go to post Mihoko Iijima · Nov 16, 2023 Hi @Jani Hurskainen It seems the "UserErrors" domain name is the default name of user-defined errors, although it isn't written in the document. I tested below: <?xml version="1.0" encoding="UTF-8" ?> <MsgFile Language="en"> <MsgDomain Domain="UserErrorsABCDEFG"> <Message Id="-911" Name="MyError">Test!!An error has occured</Message> <Message Id="-922" Name="MyError2">Test!!An error has occured 2</Message> </MsgDomain> </MsgFile> set x=##class(%MessageDictionary).Import("/src/test.xml") set error=$system.Status.Error("<UserErrorsABCDEFG>-911") set error=$system.Status.Error("<UserErrorsABCDEFG>-911") write $system.Status.GetErrorText(error) //ERROR <UserErrorsABCDEFG>-911: Test!!An error has occured If you don't add default domain name, you can get the correct user message by specifying the domain name with the error id to create the error messsage.
go to post Mihoko Iijima · Sep 23, 2023 I guess you had set [Interoperability] - [Service Config Name] in your FHIR repogitory like this: When I start below production on same namespace with FHIR repository, I can get same error in your question. (I didn't set "HS.FHIRServer.Interop.Service" in Service.) I can make REST requests if I change my production in this way.
go to post Mihoko Iijima · Aug 8, 2023 Hi @Lorenzo Scalese How about Decompress() method in %SYS.Journal.File class? set f1="C:\InterSystems\IRISHealth\mgr\journal\20230807.001z" set f2="C:\InterSystems\IRISHealth\mgr\journal\test20230807.001" write ##class(%SYS.Journal.File).Decompress(f1,f2) And below method returns 1. USER>Write ##class(%SYS.Journal.File).IsValidJournal(f2) 1
go to post Mihoko Iijima · Jul 10, 2023 FYI: You also use List query in %SYS.Journal.Record. set rs=##class(%ResultSet).%New("%SYS.Journal.Record:List") set jrn=##class(%SYS.Journal.System).GetLastFileName() // or input file pull path do rs.Execute(jrn) write rs.Next() write rs.Get("Address"),"-",rs.Get("TimeStamp"),"-",rs.Get("ProcessID"),"-",rs.Get("TypeName"),"-",rs.Get("InTransaction"),"-",rs.Get("GlobalNode"),"-",rs.Get("DatabaseName"),! do rs.Close() Note: it doesn't work with %SQL.Statement Although in Japanese, this article is related to it : https://jp.community.intersystems.com/node/492721
go to post Mihoko Iijima · Jan 19, 2023 I'm intrepid Newsmaker (above image is Japanese community's recap image) Thanks @Anastasia Dyubaylo ! The recap is good tool to motivate 2023 🔥
go to post Mihoko Iijima · Jun 3, 2022 You can convert with $SYSTEM.Util.UTCtoLocalWithZTIMEZONE(). https://cedocs.intersystems.com/ens20141/csp/documatic/%25CSP.Documatic.cls?&LIBRARY=%25SYS&CLASSNAME=%25SYSTEM.Util USER>write $SYSTEM.Util.UTCtoLocalWithZTIMEZONE($ZTIMESTAMP) 66263,48361.382728 USER>write $ZTIMESTAMP 66263,15968.3579578 USER> USER>write $ZDATETIME($SYSTEM.Util.UTCtoLocalWithZTIMEZONE($ZTIMESTAMP),3) 2022-06-03 13:26:26 USER>write $ZDATETIME($ZTIMESTAMP,3) 2022-06-03 04:26:34 USER>
go to post Mihoko Iijima · Apr 26, 2022 ImportDDL() method in %SYSTEM.SQL.Schema class can run multiple queries. Documentation is https://docs.intersystems.com/irislatest/csp/docbook/Doc.View.cls?KEY=GSQL_import#GSQL_import_cache Step1: preparing import file like below: You need to use "go" in end of each query. (c:\temp\updatequeries.txt) UPDATE Test2.Person Set Name='abc' where ID=1 go UPDATE Test2.Person Set Name='efg' where ID=2 go UPDATE Test2.Person Set Name='hij' where ID=3 go Step2: running ImportDDL() method like below: USER>do $system.SQL.Schema.ImportDDL("c:\temp\updatequeries.txt","c:\temp\import.log","IRIS") Importing SQL Statements from file: c:\temp\updatequeries.txt Recording any errors to principal device and log file: c:\temp\import.log SQL statement to process (number 1): UPDATE Test2.Person Set Name='abc' where ID=1 Preparing SQL statement... Executing SQL statement... DONE SQL statement to process (number 2): UPDATE Test2.Person Set Name='efg' where ID=2 Preparing SQL statement... Executing SQL statement... DONE SQL statement to process (number 3): UPDATE Test2.Person Set Name='hij' where ID=3 Preparing SQL statement... Executing SQL statement... DONE Elapsed time: .01458 seconds USER>
go to post Mihoko Iijima · Apr 21, 2022 @Megumi Kakechi I can get correct result on 2022.1! I use iris 2022.1 container. (image lists :https://community.intersystems.com/node/511986) USER>write $ZV IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2022.1 (Build 164U) Tue Apr 5 2022 01:30:47 EDT USER>do $system.Python.Shell() Python 3.8.10 (default, Nov 26 2021, 20:14:08) [GCC 9.3.0] on linux Type quit() or Ctrl-D to exit this shell. >>> sql="select name,value from %Library.Global_get('user','^ISJ',,2,2)" >>> rset=iris.sql.exec(sql) >>> dataframe=rset.dataframe() >>> dataframe name value 0 ^ISJ(1) $lb("名前","年齢","住所") 1 ^ISJ(2) $lb("佐藤","50","東京") 2 ^ISJ(3) $lb("加藤","40","大阪") 3 ^ISJ(4) $lb("伊藤","30","京都")
go to post Mihoko Iijima · Jul 13, 2016 I mistook attached file in previous comment.Please refer downloadandzip-mojo-dojo_3.zip this attached file for mojo+dojo.
go to post Mihoko Iijima · Jul 13, 2016 My samples is using 2 JavaScript libraries. 1) JSZip(http://stuk.github.io/jszip) 2) FileSaver.js(https://github.com/eligrey/FileSaver.js/).These library can downloads some files from one path at once and save as one Zip file.Simple samples is below::: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script type="text/javascript" src="http://stuk.github.io/jszip/dist/jszip.min.js" charset="utf-8"></script> <script src="FileSaver.min.js" charset="utf-8"></script> </head> <body> <form name=f1 method=post> <h2>Download+Zip Simple sample</h2> Please set urlList variable correct file path in startDL() before testing. <br> <input type="button" name="b1" value="Download" onclick=startDL()> </form> <script type='text/javascript'> function startDL(){ // urlListにはダウンロード用ファイルを直接指定しています。 // 【注意】日本語を含むファイル名はダウンロードできません。 var urlList = ["./ImageTest/IMG_3587.JPG","./ImageTest/IMG_3598.JPG"] console.log(urlList); zip = new JSZip(); deferreds = $.Deferred(); var promise = deferreds; $.map(urlList,function(value,index) { console.log('urlList:index='+index+' = '+value); console.log('match() : '+value.match(".+/(.+?)([\?#;].*)?$")[1]); promise = promise.then( function() { var newPromise = new $.Deferred(); var xhr= new XMLHttpRequest(); xhr.open('GET',value,true); xhr.responseType='arraybuffer'; xhr.addEventListener('load', function() { // zipにレスポンスデータ追加 zip.file(value.match(".+/(.+?)([\?#;].*)?$")[1],xhr.response); newPromise.resolve(); }); xhr.send(); return newPromise; }); }); promise.then( function() { zip.generateAsync({type:"blob"}).then( function(content){ saveAs(content,'test.zip'); }); }); deferreds.resolve(); } </script> </body> </html> I attached sample for mojo+dojo.downloadandzip-mojo-dojo_1.zip
go to post Mihoko Iijima · Jul 13, 2016 My samples is using 2 JavaScript libraries. 1) JSZip(http://stuk.github.io/jszip) 2) FileSaver.js(https://github.com/eligrey/FileSaver.js/).These library can downloads some files from one path at once and save as one Zip file.Simple samples is below: <!DOCTYPE html>downloadandzip-mojo-dojo_0.zip<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script type="text/javascript" src="http://stuk.github.io/jszip/dist/jszip.min.js" charset="utf-8"></script> <script src="FileSaver.min.js" charset="utf-8"></script></head><body><form name=f1 method=post><h2>Download+Zip Simple sample</h2>Please set urlList variable correct file path in startDL() before testing.<br><input type="button" name="b1" value="Download" onclick=startDL()></form><script type='text/javascript'>function startDL(){// urlListにはダウンロード用ファイルを直接指定しています。// 【注意】日本語を含むファイル名はダウンロードできません。var urlList = ["./ImageTest/IMG_3587.JPG","./ImageTest/IMG_3598.JPG"]console.log(urlList);zip = new JSZip();deferreds = $.Deferred();var promise = deferreds;$.map(urlList,function(value,index) { console.log('urlList:index='+index+' = '+value); console.log('match() : '+value.match(".+/(.+?)([\?#;].*)?$")[1]);promise = promise.then( function() {var newPromise = new $.Deferred();var xhr= new XMLHttpRequest(); xhr.open('GET',value,true);xhr.responseType='arraybuffer';xhr.addEventListener('load', function() {// zipにレスポンスデータ追加zip.file(value.match(".+/(.+?)([\?#;].*)?$")[1],xhr.response);newPromise.resolve();});xhr.send(); return newPromise;});});promise.then( function() {zip.generateAsync({type:"blob"}).then( function(content){saveAs(content,'test.zip');});});deferreds.resolve();}</script></body></html>I attached sample for mojo+dojo.