go to post Robert Cemper · Aug 4, 2023 BTW:whatever your method does it always terminate with Quit $$$OKso whatever happens it is equivalent toset SphereJauh=1I assume you look for a different return value ? Is it ?
go to post Robert Cemper · Aug 4, 2023 your ClassMethod GetSphereJauh(Id..... is located in some Class so just call it as any other class methodset SphereJauh=##class(classname).GetSphereJauh(ATTRDesc) the fact that this is used as part of a custom class query is totally irrelevant in this context.it is straightforward ObjectScript. nothing else
go to post Robert Cemper · Jul 31, 2023 Now it is obvious that ^realglobal has 11.3 times the size of ^testglobalwhile your ^testglobal seems to have all blocks in buffers in memorythis is rather unlikely for ^realglobal.So repeated reloading of blocks from disk seems to cause the delayIf you have the chance to double or triple your global buffersyou most likely may see improved processing of your $O()
go to post Robert Cemper · Jul 22, 2023 Follow up to @Dmitry Maslennikov:Error on IRIS side: ACCESS DENIED ODBC can't connect ===> timeoutWhy ACCESS DENIED ? The most likely cause you run multiple ODBC connections in parallel you use the same fixed USER for access to IRIS maximum license slots by user is ~25 once you pass the limit your 25 slots get converted to 25 single licenses any further connection consumes a full license until you run out of available licenses ==> ACCESS DENIED you can get out of that trap only if ALL connections of that user are closed You can avoid this by limiting your ODBC connections below 24 or run your ODBC access in serial mode or use multiple users for access with limit <24
go to post Robert Cemper · Jul 18, 2023 check https://openexchange.intersystems.com/package/function-ISJSON-2 in OEXand https://community.intersystems.com/post/function-check-if-string-json-object in DC
go to post Robert Cemper · Jul 11, 2023 Muchas gracias ! Thank you all! 400+ years back when my earliest documented ancestor was bornSpain+Austria was a World Wide Empire ("Casa Austria", Emperor Carlos V.) that ruled the globe.I feel quite familiar with you.Robert
go to post Robert Cemper · Jul 10, 2023 if you want to take a look behind the scene try this exampleCharacter-Slice IndexQuick Summary: [ looks for any character(s) %CONTAINS looks for words (separated by blanks or punctuations)
go to post Robert Cemper · Jul 8, 2023 Hi @Vivian Lee !I think you had no chance to see the problem in docsYou mentioned a custom class that extends %Text.Englishthis might be the cause of your problem.The class is not visible in normal class reference (don't ask me why) Default %Text.English has a Parameter NOISEWORDS100 ="the of and a to in is you that it he for was on are as with his they at be this from I have or by one had not but what all were when we there can an your which their said if do will each about how up out them then she many some so these would other into has more her two like him see time could no make than first been its who now my made over did down only way find use may long little very after called just where most know get through back"; So you might be affected by these NOISEWORDS.I failed to find any useful public documentation on this parameter and also %Text.Text is not too useful
go to post Robert Cemper · Jul 7, 2023 Agree with @Julius Kavay Just read the documentation on %CONTAINSIt's a function specific to data type %TEXT and is language dependant (more details in docs)-------------------If you look for a functionality as SQL LIKE you better use LIKE or [ the contains operator of COS
go to post Robert Cemper · Jul 7, 2023 %Get() in %SQL.StatementResult. does NOT act like $Get() in ObjectScriptYou have to resolve the NULL value issue in your SQL statement using NVL() function with 2nd parameter.More NULL Handling Functions
go to post Robert Cemper · Jul 6, 2023 see official docs Release Notes Maintenance Release Changes for 2021.1.3 Incompatibility History for 2021.1.3
go to post Robert Cemper · Jul 6, 2023 You still didn't understand the difference: - DATDEDIFF() works on local times eg. "1970-01-01" is your locale time (eg. UTC+5.5 hrs) - $ZDT(...,-2) uses by definition 1970-01-01 UTC you should know from what time zone you get your input from
go to post Robert Cemper · Jul 5, 2023 #1 is correctYour calculation #2 is seriously wrong.reasonreading documentation you seedformat -2 $ZDATETIME returns an integer specifying the count of seconds from a platform-specific origin date/time. This is the value returned by the time() library function, as defined in the ISO C Programming Language Standard. For example, on POSIX-compliant systems this value is the count of seconds from January 1, 1970 00:00:00 UTC And that's the mistake:Your BirthDate is obviously considered as LOCAL timeAnd therefore the difference you see reflects the time offset of your machine to UTC-19800 sec => -5.5 hrssystem variable $ZTZ will show your offset to UTC in minutes => -330my guess: your machine is running at local time in India
go to post Robert Cemper · Jun 30, 2023 for $ZTDH:https://docs.intersystems.com/iris20231/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_fzdatetimehfor $ZDT:https://docs.intersystems.com/iris20231/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_fzdatetime USER>r x 1997-08-09 10:38:39.700000000 USER>w $ZDTH(x,3,,9) 57199,38319.7 USER>w $zdt($ZDTH(x,3,,9),3,7) 1997-08-09T08:38:39Z USER>w $zdt($ZDTH(x,3,,9),3,7,9) 1997-08-09T08:38:39.700000000Z USER>
go to post Robert Cemper · Jun 29, 2023 I removed the article as it was totally out of date, misleading, and confusing.Based on the very first versions of Sharding years back+ an environment that doesn't exist anymore.
go to post Robert Cemper · Jun 29, 2023 https://docs.intersystems.com/irislatest/csp/documatic/%25CSP.Documatic.cls?LIBRARY=%25SYS&CLASSNAME=%25SQL.StatementResult#%25ResultColumnCount it's the same doc page
go to post Robert Cemper · Jun 28, 2023 what you describe is explained in detail in the documentation:%SQL.StatementResult For a SELECT statement, if the cursor is positioned after the last row, the value of %ROWCOUNT indicates the number of rows contained in the result set.At any other time, %ROWCOUNT contains the number of rows retrieved thus far. rfm
go to post Robert Cemper · Jun 27, 2023 Most important:: you run on x86-64 if Windows or Red Hat is not important to your CBKIf you still have access check the size of the original CACHE.DAT. Check also the standard collation of the original DB to avoid unexpected surpriseTo my experience, there should be no difference for backups between C1017 and C2018 (the latest)