go to post Robert Cemper · May 17, 2023 one of my (former) customers suggested this approach: Train COS not on IRIS but on some Caché/ENS 2018 instances with Studio or on some older IRIS version As they run pure COS they have Studio for Training. An no need of new features once all the logic works they may move the result to some final IRIS (if ever they migrated)
go to post Robert Cemper · May 16, 2023 Just to rephrase your issue: you expect a JSON array of JSON objects [{..},{..},{..} ] but you get a JSON object containing that array {"cursos": [{..},{..},{..} ]} ;; asssumptio input holds the received obj set jobj={}.%FromJSON(input) ; convert to obj set jarray=jobj.%Get("cursos") ; content of "cursos" = [..] set output=jarray.%ToJSON() ; convert to string docu: %Library.DynamicObject
go to post Robert Cemper · May 15, 2023 There is still another critical directory for Windows Docker Desktop C:\Users\<yourusername>\AppData\Local\Temp\docker-scout\sha256 There some GB of Generated/Downloaded images are kept and NEVER clearedI didn't miss anything when I deleted them manually after stopping Dockergetting back some more GB
go to post Robert Cemper · May 12, 2023 In past (before2016),I had 2 times the challenge to run a private training within a window of 2 years Are developers generally willing or resistant to the idea of learning ObjectScript? Mostly rather resistant, but forced to learn it to get the job, Why? ObjectScript is not the mainstream. And in my geographic environment (middle Europe) demand is rather low. So it's more a curiosity skill that almost no recruiters value For developers trying to learn ObjectScript - what was that process like? classroom training + practical exercises What were the main challenges there? In-person learning? Y Online class? N Documentation? Y What were your impressions? almost all tried to map the previous experience to ObjectScript the concept of variable scoping + global variants shocked them they had massive problems following CSP=>CLS=>MAC=>INT=>OBJ How did it compare to other languages? They were looking for public examples. Support of SQL was often disappointing compared to market leaders What would have made it easier to learn? pushing it to universities and technical schools instead of retreating and leaving that space to competitors How long did it take to learn? basics 2 weeks - guided development 3 months Was it longer/shorter than expected? Just a predefined schedule Easier or harder than expected? Hackers and Investigators had a clear advantage Formal thinkers suffered the most. The main environment was a huge application Upgraded fromMUMPS to ObjectScript with a lot of old-style code using enoughancient tricks that might "Code Quality" drive crazy. Are there any other comments you'd like to make about the hiringor training process that might help us improve?My personal prerequisites list: understanding Java (:= Object concept) understanding SQL DBs willing and able to think across the fence rather exploring new ideas than varying old models courageous enough to explore and fill white space on their skills map digging into details Besides the technology item:being rather an explorer than an administrator
go to post Robert Cemper · May 10, 2023 Obviously, ChatGPT has no idea of ObjectScriptnonexisting methods, wrong indexing, ...... DISAPPOINTING
go to post Robert Cemper · May 10, 2023 ClassMethod SortVersion(input As %DynamicArray) As %DynamicArray { Set sorted = [] Set val = "" Kill order For i=1:1:input.%Size() Set order(input.%Get(i-1))="" For { Set val=$o(order(val)) Quit:val="" do sorted.%Push(val) } Quit sorted }
go to post Robert Cemper · May 8, 2023 works fine. it didn't know me first 😉just a minor adjustment ports: - 52773:52773 - 51773:1972
go to post Robert Cemper · May 7, 2023 Typical licensing happens by user by processes - every user gets 25 processes slotsif you exceed this 25 every process consumes its own license.so up to 25 you consume 1 license but by #26 you convert to 26 licenses consumedthen the total number of license slots counts.But there are also other licensing models. You should check with ISC Sales or WRC which one applies. $SYSTEM.License.KeyLicenseUnits() returns the number of license units authorized by the active key. $SYSTEM.License.LUConsumed() returns number of license units currently consumed at the local instance. there are more $SYSTEM.License...... that might be of interest. Docu %SYSTEM.License
go to post Robert Cemper · May 1, 2023 Permission points to some missing user privilegesstart your container in foreground (no -d switch) to see the full log with details
go to post Robert Cemper · May 1, 2023 It is from 2017During the Quality Assurance of the article it was updated
go to post Robert Cemper · Apr 28, 2023 @Yuri Marx thank you.! To some extent, I'm an actor too and enjoy pleasing my audience
go to post Robert Cemper · Apr 26, 2023 I have a straight Caché only Docker available for you:Here is the GitHub Repo until publication on OEX is approved
go to post Robert Cemper · Apr 25, 2023 If you need Caché in Docker you may use this examplehttps://community.intersystems.com/post/using-ecp-across-iris-and-cach%C3%A9An individual license is only required if you want to use ECPIt's the single user version 2018.* and should fit your needs
go to post Robert Cemper · Apr 19, 2023 we need to handle 2 types of line terminators. $C(13,10) and $C(10)+ BASE64 holds only printable characters, $C(13) is a NONO in Base64.So:if you always use $c(10) as line terminator then set ln=$TRANSLATE(ln,$c(13)) will remove also a leftover $C(13) if existingor just do nothing.
go to post Robert Cemper · Apr 17, 2023 right! Just the stating numeric is important i will elaborate on the background of objects
go to post Robert Cemper · Apr 17, 2023 It is dating back to the very early days of Caché. Even before my time @ ISC(my guess >25 years) There was a lot of $Z* stuff e.g. $ZU(..) That was not meant to be used for applications.Just for internal use in system utilities. With no public Docs.Some became public over time, mostly renamed, and were documented.I just found it by examing some related system functions.
go to post Robert Cemper · Apr 16, 2023 MUCH more simple and shorter kill set a=##class(Sample.Person).%OpenId(2) set b=##class(Sample.Person).%OpenId(12) set c=##class(Sample.Person).%OpenId(111) set obj=$zobjref("2@Sample.Person") ;; BINGO zw a=<OBJECT REFERENCE>[1@Sample.Person] b=<OBJECT REFERENCE>[2@Sample.Person] c=<OBJECT REFERENCE>[3@Sample.Employee] obj=<OBJECT REFERENCE>[2@Sample.Person]