go to post Enrico Parisi · Jun 17, 2024 I'm not a python expert, but I'd try with: imptask = dbnative.classMethodValue('%SYS.Task','ImportTasks',"F:\\Zbackup\\LISBackupTask.xml","ck")
go to post Enrico Parisi · Jun 16, 2024 ImportTasks() method returns a %Status that probably contains the answer you are looking for. I'd suggest to check that.
go to post Enrico Parisi · Jun 16, 2024 What kind of task? Does your task provide a return status? If what you need is displayed in the Error column in the "Task History" page in Management Portal, then you can use the query: select Error from %SYS_Task.History where Task = <YoutTaskID>
go to post Enrico Parisi · Jun 16, 2024 Do you want to use SSL/TLS for incoming connection to IRIS (Ensemble) or want to use SSL/TLS for outgoing connections from IRIS (Ensemble) to other systems, possibly using some HTTP/SOAP/etc. adapter? Please provide some detail.
go to post Enrico Parisi · Jun 16, 2024 I agree, but that's not the scenario of the initial question! I tried to address and provide a solution to the original question that it seems has some previous constraints imposed by the current design, not to argue of what it could have been done if....
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 So, this imply that the sample message published in the document "IHE Laboratory Technical Framework, Volume 2a (LAB TF-2a)" is actually an invalid message?
go to post Enrico Parisi · Jun 16, 2024 I've used Object Script to update linked tables projected as IRIS/Caché classes, like in your sample, since very long time and it works. As the error says, your issue is that some property/column cannot be set/modified, I'm pretty sure the same issue arise if you use SQL to update/insert the same column. Without the table definition it's impossible to guess what's the field and why that column cannot be set.Maybe some of the fields are part of the primary key that includes other fields that are not set?Make sure that the table is properly linked, the link table wizard sometime need "guidance" on properly linking tables, particularly in defining primary keys... Anyway, if properly linked, you can definitely treat/manage/manipulate linked tables the same way as native IRIS/Caché classes.classes.
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 Another option is to use the %SYS.GlobalQuery_Size() class query documented here, it can be conveniently used from SQL like: call %SYS.GlobalQuery_Size('c:\intersystems\iris\mgr\',,'*',1,,1) It can be called from the portal SQL or any SQL odbc/jdbc client tool.
go to post Enrico Parisi · Jun 16, 2024 Ciao Pietro, as said %DynamicAbstractObject has excellent performance and can handle easily very large JSON streams/files.Depending on your system settings, for large JSON you may need to accommodate process memory, fortunately you can adjust it in your code at runtime so you can write robust code that does not depend on system configuration parameters.Note that the default value of "Maximum Per-Process Memory" has changed during time, so a new installation and an upgraded installation have different values. IMHO the real question here is: in what side of the JSON processing is your code? Are you generating the JSON or are you receiving the JSON from a third party? If you are receiving the JSON, then I don't think there is much you can do about, just load it and IRIS will handle it.I'm pretty sure that any attempt to "split" the loading of the JSON stream/file will result in worst performance and consumed resources.To split a large JSON you need to parse it anyway.... If you are generating the JSON, then depending on the project and specifications constraints, you may split you payload in chunks, for example in FHIR the server can choose to break a bundle it up into "pages". I'm not sure if your question is about loading the JSON file/stream into a %DynamicAbstractObject or about processing the large %DynamicAbstractObject once it has been imported from JSON? What's your problem and what's your goal?
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 4, 2024 Does the returned sc status contains the <INVALID OREF> error? Add this line following the one I suggested: if $$$ISERR(sc) $$$LOGERROR($system.Status.GetErrorText(sc) Then check the event log after calling your component and post here what you find in the event log.
go to post Enrico Parisi · Jun 4, 2024 An integrity check also treats it as if it was a single file. This is only going to be more of an issue as the max size increses. There is no other option for integrity check because in multi volume database a global can span across multiple volumes/files and a global structure must be fully scanned to check integrity. If this is a concern, maybe splitting a global across multiple "small" (the concept of small may vary! 😁) database using subscript mapping can be an option.Integrity check is performed at database/global level, not namespace/global level.
go to post Enrico Parisi · Jun 4, 2024 Evidently there is an issue where you reference MSH:9.2, without details of your rule definition is virtually impossible to guess where the problem is.
go to post Enrico Parisi · Jun 3, 2024 I'd suggest to check the returned %Status from the %FromFHIRJSON() method. Instead of: do ..FHIRAdapter.%FromFHIRJSON(pRequest.Payload.Read(),.pmReqFHIRobj,"HS.FHIR.Model.Resource.Bundle") Use: set sc=..FHIRAdapter.%FromFHIRJSON(pRequest.Payload.Read(),.pmReqFHIRobj,"HS.FHIR.Model.Resource.Bundle") Then check the status.
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 31, 2024 There is also this recent announce from @Rob Tweed that mention support for legacy weblink applications: mg_web for ObjectScript Developers
go to post Enrico Parisi · May 30, 2024 You may have the option of using Extended Global References and in particular Bracket Syntax with References to Databases. In your code you need to change all your global references from:^SYS("CommonConfig")to^[%dbConfig]SYS("CommonConfig") Then, for normal situation where you want the %ALL mapping to apply, just use:set %dbConfig=""When you need to explicitly map it to a BARCONFIG database, then:set %dbConfig="^^:ds:BARCONFIG" This way you can switch from default %ALL mapping to "explicit reference" within your code.In the example I used a % local variable (%dbConfig) to hold the "database name reference" because it has a global scope, you may use a different approach like a property in some of your classes, a macro with some reference (in a global?) or...whatever is appropriate for your environment.