go to post Robert Cemper · Aug 1, 2020 Thanks @Evgeny Shvarov for checking !the clause item IN ('$ZE','$ZV') catches the same set of records twice.image + fix in the original reply
go to post Robert Cemper · Aug 1, 2020 Thanks for your clarification. I have now 1 rcc.PKG and several rcc.anything.PKG
go to post Robert Cemper · Aug 1, 2020 @Evgeny Shvarov Are you looking for something like this ? this is the related query: select %vid AbsRef , TO_CHAR(Day,'YYYY-MM-DD') Day , Seq , $PIECE($PIECE(p,'$ZE=',2),'>',1)||'>' Type , $PIECE($PIECE(p,'>',2),',$ZV',1)||'>' Line , $PIECE(p,'$ZV=',2)||'>' Version from ( SELECT TOP ALL day, seq, LIST(item||'='||value) p FROM zrcc.ERRORStack WHERE Stacklevel=0 AND item IN ('$ZE','$ZV') GROUP BY day,seq )
go to post Robert Cemper · Aug 1, 2020 out of the experience: every project in ZPM needs its personal package. otherwise, you may see this: ERROR #5001: Resource 'rcc.PKG' is already defined as part of module 'echoserver-wsock-iris'; cannot also be listed in module 'iris-internal-websocket-client'ERROR #6315: FErrors reporting importing XML subelement in file 'C:\InterSystems\IRIS\mgr\.modules\USER\iris-internal-websocket-client\1.0.0\module.xml', at line'3', offset '55'. skipping this item.
go to post Robert Cemper · Aug 1, 2020 @Evgeny Shvarov %ETN typically stops your job. set $ZT="^%ETN"If you use LOG^%ETN it writes to ^ERRORS and continues the job.this is highly comfortable to be used in try {....} catch error { do LOG^%ETN }more details to be found in ^%ETN.int (easy to read)
go to post Robert Cemper · Jul 30, 2020 Thanks for the hint. I was pretty sure there should be something similar to serve SysMgmtPortal. I just didn't know.Obviously the authors had the same problems as me with the old structure and applied a bunch of custom queries.I don't think I missed something:- the class is deployed so you have to accept what it does.differently %ERN.int doesn't hide anything and speaks full truth. - next to use it you require full access rights to %SYS and a namespace change %SYS to run it.- and finally the topmost requirement: The queries are invisible to SQL! Just because not being exposed as SqlProcedure. My solution runs in any namespace on Caché / Ensemble / iris .Without any privileges and doesn't touch any ISC copyrights!
go to post Robert Cemper · Jul 30, 2020 @Evgeny Shvarov I went into Studio and then killed the job from Portal by <RESJOB>
go to post Robert Cemper · Jul 30, 2020 Thanks @Eduard Lebedyuk ! Fixed@Evgeny Shvarov It seems to me OEX changes the URL with every update. here appending -1 to original URL.
go to post Robert Cemper · Jul 29, 2020 Hi @Lucas Fernandes It was a little bit more complicated than expected. Anyhow take a lookSQL for ^ERROR Global Thanks to @José Roberto Pereira for the inspiration.
go to post Robert Cemper · Jul 29, 2020 in IRIS if the data type is any numeric (%Integer, %Decimal, %Float, ..... or %Boolean) the value is NOT enclosed in Quotes.
go to post Robert Cemper · Jul 29, 2020 Just to outline my understanding:my package will be rcc.subject.classname rarely eventually zrcc.subject.classname if it should go to %SYS . And I will not touch/ rename existing projects as this means changing not just the codebut also README.md , Descriptions in OEX and Articles in DC, Screenshots, Dependencies (not just my own), ...Over all a good source for mistakes, typos, errrors, confusion,
go to post Robert Cemper · Jul 28, 2020 What is the rule for VERSION in Dependencies ?Is it an EQUAL or a MINIMUM Version. e.g. <Version>0.0.0</Version> would mean any version <Dependencies> <ModuleReference> <Name>holefoods</Name> <Version>0.1.0</Version> </ModuleReference> </Dependencies> Thanks !
go to post Robert Cemper · Jul 28, 2020 The so-called SQLformat doesn't exist in Caché (at least not in the last 20 years)But over the gateway, you can move data from Caché to PostgeSQL. "from a table on CACHE to a POSTGRESQL table" So you need a trigger to do it:- Caché has to be the active part hereyou can start the upload over a webservice, an REST call, even as an SQLprocedure, or automatically by the schedulerAnd if you don't want to touch your target table directly you may have a shadow-copy in PostgreSQL thatthen serves as a source for your final updates. ( some INSERT...SELECT....) So instead of import from CSV, you do an import from a local table in PostgreSQLAnything is better than CSV.This would even allow filling your shadow over the day in small steps instead of a big bang (if needed)
go to post Robert Cemper · Jul 24, 2020 There is a JDBC driver to PostgreSQL available.Using that drive you define an SQL Gateway for your PostgreSQL and establish a link for your tables:The projection can be accessed as if was a table in Caché.Details & HowTo here: https://cedocs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GSQL_gateway
go to post Robert Cemper · Jul 24, 2020 just tried. the link leads you to :https://openexchange.intersystems.com/package/Simple-remote-server-controlthere is the link to GitHub
go to post Robert Cemper · Jul 23, 2020 You might be inspired by this: https://community.intersystems.com/post/simple-remote-server-controlIn principle, a job is hanging around waiting for orders. Like a cab waiting for a drive.
go to post Robert Cemper · Jul 19, 2020 a little bit cross thinking it reminds me of this https://community.intersystems.com/post/unlimited-unique-index
go to post Robert Cemper · Jul 19, 2020 I 've never seen the 1000 cols limit. (Consider the record size and the related impact to storage !)But in a comparable situation, I used an array with the column name as a key. => unlimited columns, slim storage.And you can work on it in SQL and in classes.BUT this is object thinking, not straight SQL
go to post Robert Cemper · Jul 18, 2020 try it without "CONSTRAINT TestePK PRIMARY KEY (ID)"and without "ID INT NOT NULL, " so you get an autoincremented unique ID by default