go to post Eduard Lebedyuk · Feb 27, 2020 As to Supported Server Platforms, it might be even Ubuntu 18.04 LTS for x86-64 rather than 16.04. Question was about Ensemble initially which supports 16.04. InterSystems IRIS Supports 18.04. And what about RHEL 8? Which IRIS version will be supported under this OS? Asking @Andreas Dieckow to comment.
go to post Eduard Lebedyuk · Feb 27, 2020 Yes, looks like no exception is thrown. Try this query: sql = "SELECT 1"
go to post Eduard Lebedyuk · Feb 27, 2020 Any exceptions on stack? import sys, traceback traceback.format_exception(sys.last_type, sys.last_value, sys.last_traceback) Can you run SELECT 1 query?
go to post Eduard Lebedyuk · Feb 26, 2020 To answer that, before query is compiled all arguments are parametrized: like 'text%' becomes like ? so we can't really replace LIKE with %STARTSWITH on code generation step (there's a brackets argument specification I suppose).
go to post Eduard Lebedyuk · Feb 25, 2020 Properties inherited from % classes and properties starting with %% are skipped in DTL. Multidimensional properties are skipped in DTL. Found official (but experimental - use at your own risk) way. Your class should extend Ens.GenericObject and implement %EnumerateProperties method. Documentation.
go to post Eduard Lebedyuk · Feb 25, 2020 Share a code sample please? One other thing: both methods should be either methods or classmethods.
go to post Eduard Lebedyuk · Feb 25, 2020 %GetComponentById and GetComponentById are different methods.
go to post Eduard Lebedyuk · Feb 24, 2020 Do you want to call %GetComponentByID of a parent class? You can do it like this: set result = ##super(args...) Documentation.
go to post Eduard Lebedyuk · Feb 24, 2020 Sure, you can access it as: process.AlertGroups process is a special variable, holding the current instance of the BPL process.
go to post Eduard Lebedyuk · Feb 23, 2020 Load method writes to the current device which is a big no in the Native API ecosystem. Add flags to suppress all output: var qspec = "/displaylog=0 /displayerror=0";
go to post Eduard Lebedyuk · Feb 22, 2020 Supported platforms for Ensemble are listed here, for InterSystems IRIS here. If you don't want to use RHEL you can choose between: Ubuntu 16.04 LTS Oracle 7 SUSE Linux Enterprise Server 12 I prefer Ubuntu.
go to post Eduard Lebedyuk · Feb 20, 2020 1 sql request per property, or only one "big" sql request ? How are you planning on merging distinct requests? One case I've seen where you need something like this is when you want to get a valid subset of filter values (which would return 1+ rows) for each next filter, but in the end all filters are still combined into one query. You need to decide on: what predicates are allowed (=, %STARTSWITH, <, >, LIKE, IN, ISNULL, BETWEEN) what logic operations are allowed (OR, AND, NOT) are nesting and brackets allowed is it free form (auto constructed from metadata) or fixed (from a pre-set list of properties). After that on a client you construct filter object, validate and parse it on a server and execute the query. If you're not satisfied with performance, server-side part can be tweaked without modifying the client. what's the disadvantage of using lot of indexes ? INSERTS/UPDATES are slower, more space is needed.
go to post Eduard Lebedyuk · Feb 20, 2020 Sure. I think it's the key formatting error. Can you try to bake the key into the class like this and use it instead of a file? Here's an article on RSA encryption with InterSystems IRIS.
go to post Eduard Lebedyuk · Feb 19, 2020 There could be two issues: Race condition SQL error For race condition you need to compare the time when the query is executed to the time when Workflow objects are created. For sql construct query as a string and trace that.
go to post Eduard Lebedyuk · Feb 18, 2020 PartoNo is present thrice in your XML so you should correspondingly set Property PartoNo As %String; three times. One time it also an attribute so add XMLPROJECTION="attribute". Docs.
go to post Eduard Lebedyuk · Feb 17, 2020 You can replace do myStream.Rewind() set len = 32000 While (len > -1) { set sRead = myStream.Read(.len) do httpRequest.EntityBody.Write(sRead) } With set sc = httpRequest.EntityBody.CopyFrom(myStream)
go to post Eduard Lebedyuk · Feb 17, 2020 After you compiled Property PartoNo As %String; what error are you getting?
go to post Eduard Lebedyuk · Feb 16, 2020 Tasks contain session reference so you can simplify your query to: SELECT TaskStatus_Request As ID FROM EnsLib_Workflow.TaskResponse WHERE TaskStatus_SessionId = ? For debugging: add hang 1 before executing SQL. What happens? What do you want to do with ID?