go to post Enrico Parisi · Jun 28, 2024 You need to pass each argument separately, this will work: d $ZF(-100,"/logcmd", "qpdf", "--encrypt", "test123", "test123", "256", "--", "C:\test\basement.pdf", "c:\test\basementenc.pdf")
go to post Enrico Parisi · Jun 28, 2024 I don't think the upgrade runs $System.OBJ.CompileAll() "automatically", it's your responsibility to recompile, if necessary.
go to post Enrico Parisi · Jun 27, 2024 %SYS>s db=##class(SYS.Database).%OpenId("C:\InterSystems\IRIS\mgr\user") %SYS>w db.SFN8%SYS>
go to post Enrico Parisi · Jun 27, 2024 Your question is too vague to answer, I'd suggest to start reading the documentation, a good starting point can be Communication Protocols in Interoperability Productions. Then, after reading the documentation you can ask a more specific question.
go to post Enrico Parisi · Jun 27, 2024 Have you read the chapter "Purpose of System Default Settings" in the RIS documentationpage that @Vic Sun I linked in his post? After reading the documentation, have you found the info you were looking for?
go to post Enrico Parisi · Jun 24, 2024 In my opinion, if you need to encode a file/stream "as is", without any conversion, so that the counterpart receiver get EXACTLY what your source file/stream is/was, then use %Stream.FileBinary. If you need some character conversion (say, Unicode/UTF8 or others), then use %Stream.FileCharacter (with appropriate parameters...) that can handle the conversion.
go to post Enrico Parisi · Jun 23, 2024 I'm a little puzzled, according to documentation the method %FromJSONFile() it's not implemented in version 2022.3, it has been implemented in 2024.1, so I don't understand why you get that error, I'd expect a <METHOD DOES NOT EXISTS> error, but I don't have version 2022.3 at hand to test. In any case, for IRIS versions that implement the %FromJSONFile() method, please note that the parameter to pass is the filename, not a %File object instance. Form class reference of the %Library.DynamicAbstractObject class the first parameter is documented as: filename A file URI where the source can be read. So, the code should be: set newObject = {}.%FromJSONFile("/tmp/longObjectFile.txt")
go to post Enrico Parisi · Jun 17, 2024 Why define and reference an outbound adaptor when you don't use it in your code?I'd suggest to have a look to the documentation Using the HTTP Outbound Adapter. Anyway, given your code, you don't need a stream, it's just waste of resources and make your code more complicated for no reason, you can simply: ....Set httpRequest.ContentType = "application/xml"Do httpRequest.EntityBody.Write("<?xml version=""1.0"" encoding=""UTF-8""?><getURL>"_pRequest.getURL_"</getURL>")Set sc = httpRequest.Post("", 2).... Note that I assume that <Url1></Url1> is contained in the getURL string property content, as your first post suggest.
go to post Enrico Parisi · Jun 17, 2024 I don't understand your question in the context of the original question: "I work with a legacy that most screens are built using only CLS" If you want to rewrite using modern approach, then use your favorite front-end framework and implement a REST API in the Caché backend.......and maybe move from legacy Caché/Ensemble to modern IRIS as well...
go to post Enrico Parisi · Jun 16, 2024 I'm not sure if this apply to your case but in the past we found that a very old database (20+ years) that has been upgraded many time over the years had bitmap indices "not compacted" and we gained a lot of space and, more importantly, huge performance improvement running %SYS.Maint.Bitmap documented here: This utility is used to compact bitmap/bitslice indices. Over time in a volatile table (think lots of INSERTs and DELETEs) the storage for a bitmap index may become less efficient. To a lesser extent index value changes, i.e. UPDATES, can also degrade bitmap performance.
go to post Enrico Parisi · Jun 16, 2024 From a class that extends %CSP.Page you can include a CSP page using the Include() method inherited from %CSP.Page, like: Do ..Include("TestInclude.csp") This is what is actually generated when a csp page containing a CSP INCLUDE tag documented here is compiled, like: <CSP:INCLUDE page="TestInlude.csp"> Please note this is legacy (deprecated?).
go to post Enrico Parisi · Jun 16, 2024 It looks like an <UNDEFINED> error occurs in a SQL query generated code. Debugging generated code it's not easy/simple, I would double check SQL queries and parameters passed to the queries in the CSP page.
go to post Enrico Parisi · Jun 6, 2024 It depends on your timezone, well...the timezone configured in the IRIS system! 😊 Does the trailing +01:00 represent your timezone? Or what? I'm in a UTC+2 timezone, so: USER>w $zdt($zdth("1988-08-18 00:00:00.000",3),3,5,2) 1988-08-18T00:00:00.00+02:00
go to post Enrico Parisi · Jun 1, 2024 What platform? Using the IRIS Community Edition kit you can install only client components, including ODBC driver:
go to post Enrico Parisi · May 27, 2024 I'm no Python expert at all, but it looks like user and password are missing. (uid and pwd??)
go to post Enrico Parisi · May 24, 2024 From the error you get I suspect you are sending your HS.Message.PatientFetchRequestAsync to the wrong service/endpoint in the remote server. How are you sending your request and how the operation is configured?
go to post Enrico Parisi · May 23, 2024 The first parameter (Lookup Table Name) of Exists function must be quoted: Exists("HologicProcedureFilter",.....) If you want, you can switch to the old zen based rule editor, in the upper right of the page click on the user icon and select Open in Zen rule editor: Note that it will open the rule in new tab, leaving the old tab open, make sure you use only one tab to edit the rule!
go to post Enrico Parisi · May 22, 2024 Assuming response1 json ALWAYS contain a single entry, then: ; import stream into Dynamic Object Set Response1=##class(%DynamicObject).%FromJSON(response1.informesAutorizadosRangoFechas) Set Response2=##class(%DynamicObject).%FromJSON(response2.informesAutorizadosRangoFechas) Write "Response1 has ",Response1.entry.%Size()," entries",! Write "Response2 has ",Response2.entry.%Size()," entries",! ; loop all the entries in Response2 Set EntryIter=Response2.entry.%GetIterator() While EntryIter.%GetNext(.EntryKey, .Entry) { Write "Response2, entry ",EntryKey+1," has ",Entry.resource.%Size()," resources",! ; loop all resources within Entry Set ResourceIter=Entry.resource.%GetIterator() While ResourceIter.%GetNext(.ResourceKey, .Resource) { ; add resource from Result2 in first entry of Result1 Do Response1.entry.%Get(0).resource.%Push(Resource) } } Write "Merged Response1 has ",Response1.entry.%Get(0).resource.%Size()," resources",! Using your samples the output is: Response1 has 1 entries Response2 has 7 entries Response2, entry 1 has 1 resources Response2, entry 2 has 1 resources Response2, entry 3 has 1 resources Response2, entry 4 has 1 resources Response2, entry 5 has 1 resources Response2, entry 6 has 1 resources Response2, entry 7 has 1 resources Merged Response1 has 8 resources The resulting json is different than your manual merge.......
go to post Enrico Parisi · May 17, 2024 We had this same issue (missing support for SNI) long time ago, I think using healthshare based on cache version 2015.2. I'm afraid you need to add this to the (possibly very long) list of good reasons to upgrade.