go to post Robert Cemper · Feb 25 slightly shorter using Julian Date USER>set hours=-3 write $zdt($zdth(hours*3600+$zdt($h,-2),-2)) Sorry, I just couldn't resist
go to post Robert Cemper · Feb 25 From Ensemble.inc: #define TRACE(%arg) $$$catTRACE("user",%arg) #define sysTRACE(%arg) $$$catTRACE("system",%arg) #define catTRACE(%cat,%arg) Do:$$$DoTrace ##class(Ens.Util.Trace).WriteTrace(%cat,$$$CurrentClass,$$$CurrentMethod,%arg) #; #define DoTrace $S($D($$$EnsJobLocal("DoTrace")):$$$EnsJobLocal("DoTrace"),1:##class(Ens.Util.Trace).DoTrace()) #; #define EnsJobLocal %Ensemble #; . . . . Class Ens.Util.Trace [ Abstract, ClassType = "", ProcedureBlock, System = 4 ] { ClassMethod DoTrace() { Set tJobConfigName=$$$JobConfigName Quit $G($$$ConfigTrace(tJobConfigName),0)||(""'=$G($$$JobTraceDevice))||$$$IsTerminalDevice($IO) }
go to post Robert Cemper · Feb 21 Never tried it for long time , but $system.CSP.Shell() might be a starting point$system.CSP.* seems to have some more useful methods.
go to post Robert Cemper · Feb 20 I followed this rules with (1,1) as baseStarting any other point than (1,1) simply shortens the spiral.now I reached 259 I really dislike the result as it is composed so unfriendlyjust to save same bytes that nobody asked for.
go to post Robert Cemper · Feb 19 I see a general problem in interpretation of the "spiral" so I took some drawing for aquadratíc and a rectangular matrix. depending on the starting point you have to take a pre-designed direction if you hit the diagonal you have to turn right you have to invalidate the row/column you just were on proceeding to invalid points is not allowed. start a the central point is an immediate termination as it has no direction to proceed The diagonal came to my mind thinking how to NOT increase the imaginative radius of the spiral.The related subscripts for the diagonale points of an n*m are found as (-n/2+x,-m/2+y) The pink subscripts are obviously (n/2,m/2) and might be just virtual. As subscripts start with 1 and first piece position is also 1some more adjustment of coordinates is required I haven't written any useful line yet.
go to post Robert Cemper · Feb 17 DC search; Improve selectivity of Articles and Questions by using TAGShttps://ideas.intersystems.com/ideas/DPI-I-630
go to post Robert Cemper · Feb 16 Just at a 2nd view also N=3 has that problem.StarMiddleTop (1,2) has the same Problem as MiddleRight (2,3)Not all characters of the matrix show up in the result.it shows DEFGHABI but DEFGHABC looks similar correct according to published rulesIs this expected behavior? 2cents more
go to post Robert Cemper · Feb 16 The clockwise logic is simple for a 3*3 matrixthough starting with 4*4 there is some rule missing on how the handle a dead endStarting at a corner (1,1) or similar is trivial. BUT: starting at any other point may create a rathole or miss some boxes Set matrix($Increment(matrix)) = "C,O,D,E" Set matrix($Increment(matrix)) = "U,C,H,G" Set matrix($Increment(matrix)) = "M,U,F,O" Set matrix($Increment(matrix)) = "S,I,F,L" Start (1,1) is in the example butStart (1,2) runs ODEGOLFISMU what is the next to (2,1) ? (1,1) or (2,2) or ??worse with Start(2,2) already the first according to description could beup (1,2) or right (2,3) or left (2,1) leaving dead ends clockwise.And this is only with N=4 larger grids may create multiple lost cells.Clockwise spiral is just not detailed enough for a UNIQUE result to collect ALL cellsA rule how to handle / skip already consumed cells might improve.Just as I type a non straight spiral solution to (2,2) consuming the full matrixmight be CUISMUCODEGOLFFH I fail to imagine grids >5*5
go to post Robert Cemper · Feb 13 2 options: set mylist = "" for i = 1:1:5 { set item = "item"_i set mylist = mylist_$ListBuild(item) } zw mylist kill mylist for i = 1:1:5 set $li(mylist,i)="item"_i zw mylist
go to post Robert Cemper · Feb 13 see: https://docs.intersystems.com/irislatest/csp/documatic/%25CSP.Documatic.cls?LIBRARY=%25SYS&CLASSNAME=SYS.Database#FreeSpace
go to post Robert Cemper · Feb 11 see docs: https://docs.intersystems.com/ens201813/csp/documatic/%25CSP.Documatic.cls?LIBRARY=%25SYS&CLASSNAME=%25CSP.Response#ContentLength• property ContentLength as %String; Sets the Content-Length header. Since the HTTP headers are sent after the OnPreHTTP() method is complete, setting it after this has no effect.
go to post Robert Cemper · Feb 6 As a first step I would search Journals to find the Globals affectedif they are not in IRISTEMP/CACHETEMP or PPG of if Journal is switched off. In order to separate routine calls (abc^myroutine) from real ^globalsThough journal just shows Process Ids, no routine names.
go to post Robert Cemper · Feb 6 Great idea.Though it requires to run the whole application repeatedly.Eventually need to fix transactions broken by <PROTECT>
go to post Robert Cemper · Feb 4 I just identified a possible source of the hidden Python installation:https://docs.intersystems.com/iris20243/csp/docbook/DocBook.UI.Page.cls?KEY=GEPYTHON_prereqs#GEPYTHON_prereqs_version Microsoft Windows does not come with a default version of Python, andas of InterSystems IRIS 2024.2, the InterSystems IRIS installer for Windowsno longer installs Python for you. I did an upgrade from my previous IRIS 2024.1
go to post Robert Cemper · Feb 4 After un-install of my own python versionsPY was still there in a different hidden and protected version unknown for me.I detected it using regedit C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.12_3.12.2288.0_x64__qbz5n2kfra8p0\ I fail to explain where it came from (pre-installed win ?? )Manual killing it and reinstallation of an official Python distribution fixed it.BIG THANKS for your advise and help-
go to post Robert Cemper · Feb 4 Merci,As noted I'm back to python 3.9.13. sys.path looks correctthe problem persistsmessage log shows: (17064) 1 [Generic.Event] Python library failed to LoadLibraryEx :126 C:\Program Files\Python313\python3.dll NTFS error 126 indicates also a problem in DLL registry.I used an official 64bit installer. Probably Pre-WIn11 design.
go to post Robert Cemper · Feb 3 Your file format doesn't fit, but you are close.UDL Header is missing, also leading blanks in the lines as you have no labels.And you have to switch to namespace %SYS and back to make it work. ROUTINE DisplayDB[Type=INT] new $namespace zn "%SYS" set db=##class(Config.Databases).DatabasesByServer("",.dbList) for i=1:1:$LENGTH(dbList,",") { set dbName= $PIECE(dbList,",",i) write dbName,! } quit