go to post Robert Cemper · Oct 29 1) you miss a final condition in $SELECT(). It's the 1:$SELECT(^GlFSL("Debug")>0:Entry^HS.Local.VA.Util.Log(%arr,,"D"),1:QUIT)2) QUIT doesn't return a value but <UNDEFINED> error if you don't have a SET QUIT="" somwhere before or use $GET()this may fit$SELECT(^GlFSL("Debug")>0:Entry^HS.Local.VA.Util.Log(%arr,,"D"),1:$GET(QUIT)) Command QUIT is just appropriate with $CASE(...)https://docs.intersystems.com/iris20252/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_fselect#RCOS_fselect_select_and_case
go to post Robert Cemper · Oct 29 TestFor.inc #define MyLoop(%count) set x="" for i=1:1:%count set x=$order(^%SYS("JOURNAL",x),-1) write x,! in Test class: ClassMethod Mike() { $$$MyLoop(7) Write ?5,$get(@$ZR," *** "),! } Resulting in PURGED *** PREFIX MAXSIZE 1073741824 LIFESPAN *** LAST 1^C:\InterSystems\IRIS242\mgr\journal\20251029.003 EXPSIZE 0 CURRENT 1^C:\InterSystems\IRIS242\mgr\journal\20251029.003
go to post Robert Cemper · Oct 29 Thanks for the correction.I had something similar in mind, but didn't find the related doc!
go to post Robert Cemper · Oct 28 So this means that the IF is not applicable in your context.What commands are before the $$$TestIf(3) and after ? I think of some WRITE $$$TestIf(3) ..... Or you may try to explicitly write the macro-generated code to see any hidden issueI'm running a bit out of fantas,y what may go on
go to post Robert Cemper · Oct 28 Strange. It should generate IF (3>0) {QUIT 5} and accept it.Could you pls simplify the case for testing to #define TestIf(%arr) if %arr>0 QUIT 5 Not yet Halloween, but this looks spooky:For me, all variants work: My versions:InterSystems Studio Client 2024.1.0 Build 262Server IRIS for Windows (x86-64) 2024.3 (Build 217U)
go to post Robert Cemper · Oct 28 Now it's clear instead of (%arr > 0) you simply should write (%arr>0) The ObjectScript compiler is interpreting the blank after %arr as an argument terminator
go to post Robert Cemper · Oct 28 Another challenge is to enable WebSocket protocol on your webserverI just had the "pleasure" to do this for IIS 👺It's not a default
go to post Robert Cemper · Oct 28 (error on compiling within a class) like: #define TestIf(%arr) if (%arr > 0) { QUIT 5 } ; no final dot. #define is an element of ObjectScriptso it has to be embedded in a [Class]Method and it is only available within that method It can't be flying free inside a class definition. If you need your $$$TestIf(...) in more than 1 method, you can depositit in some TestIf.INC and include it BEFORE the Class statement !!Then it is visible to ALL methods. Attention: You can INCLUDE just 1 single *.INC in a class definition.If you need more than 1, you have to cascade it with #include in the first *.inc Include TestIf Class A.PERSON1 Extends %Library.Persistent { Parameter GlobalName = "^.........!" ;; /// ....... ClassMethod michael(param) as %Integer { $$$TestIf(param) ......... quit $$$OK }
go to post Robert Cemper · Oct 28 The AI example is misleading anyhow, as it just does a $O loop without any action to be done *.inc is typically kind of text generation code during compilation. What is your expectation for using the *.inc ? %in and %gn are just text replacement parameters:%gn is used as globalname, %in as first level subscript
go to post Robert Cemper · Oct 27 If you just see pre you may have a problem with your &html< ........> sequencethat translates to write ........,! including all quoting requirements, while <pre> any text </pre> is just straight HTML and #(variable)# is a CSP instruction to display the actual content of a variableand avoid any extra spaces
go to post Robert Cemper · Oct 25 this may help to get the plain %request object: k ^SPOOL s %io=$I O 2 u 2 ZW %request c 2 u %io or whatever object you need to trace
go to post Robert Cemper · Oct 25 From Class Docs.: Somewhere in the CSP page. This is just ~20% of the content
go to post Robert Cemper · Oct 22 I can just confirm your experience. Must be a bug in irisession on WIN.My workaround for termination: HALT followed by blankThen an empty line following. Otherwise, the last character is repeated endlessly until all memory is consumed.Neither mouse nor keyboard reacts. I had to reboot several times
go to post Robert Cemper · Oct 22 There are geographies in this world where a Decimal-Comma is used instead of a Decimal-Point.Never met a Decimal-Pipe 😉
go to post Robert Cemper · Oct 14 Totally right!My intention was to show it as granular as possibleto avoid eventual confusion.
go to post Robert Cemper · Oct 9 Just received notice: Provide a single page view of free space in IRIS DBs has changed status to: Community Opportunity