Scott Roth · Aug 23, 2022 go to post

I was looking to connect to the SAM container to add code for custom metrics to SAM for our group. If it isn't a suggested path I could always create the code locally and move it over to the SAM container.

Scott Roth · Aug 22, 2022 go to post

Is there a magic trick to get it to work with VS Code as well? I have configured all the security settings and I am getting a "Forbidden" error when trying to access it via VS Code?

Scott Roth · Aug 22, 2022 go to post

What if I only want to run the metric once a day? I don't know how much of a performance hit it will be to keep on having these queries run every 5 min or so.

Scott Roth · Aug 19, 2022 go to post

I was able to get it to work once I added the command statement. Thanks.

Scott Roth · Aug 19, 2022 go to post

writing status to file: /home/irisowner/irissys/iscagent.status
Reading configuration from file: /home/irisowner/irissys/iscagent.conf
ISCAgent[15]: Starting
ISCAgent[19]: Starting ApplicationServer on *:2188
[ERROR] Required Linux capability cap_setuid is missing.
[ERROR] Required Linux capability cap_dac_override is missing.
[ERROR] Required Linux capability cap_fowner is missing.
[ERROR] Required Linux capability cap_setgid is missing.
[ERROR] Required Linux capability cap_kill is missing.

I found this link that references the error. I will make the changes to the docker-compose.yml
 

Scott Roth · Aug 18, 2022 go to post

Alex can you explain a bit more on how 

>set tSC=##class(UnitTest.Test.DTL.TestTrans.TransformSource2).AddTestFromMessageBody("EnsLib.HL7.Message",1218511,1,.sourceXdataName,.targetXdataName)
 

is suppose to work? I tried the message above with the 1218515 message ID and got a syntax error.

DEVCLIN>set tSC=##class(UnitTest.Test.DTL.TestTrans.TransformSource2).AddTestFromMessageBody("EnsLib.HL7.Message",1218515,1,.sourceXdataName,.targetXdataName)

SET tSC=##CLASS(UnitTest.Test.DTL.TestTrans.TransformSource2).AddTestFromMessage
^
Body("EnsLib.HL7.Message",1218515,1,.sourceXdataName,.targetXdataName)
<CLASS DOES NOT EXIST> *UnitTest.Test.DTL.TestTrans.TransformSource2

Scott Roth · Aug 17, 2022 go to post

I tried install csvgen and got ERROR! 'csvgen' not found in any repository. Anyone else having this issue?

IRIS for Windows (x86-64) 2022.1 (Build 209U) Tue May 31 2022 12:16:40 EDT

Scott Roth · Aug 12, 2022 go to post

I don't like using temp tables, I would just write the data to another table then truncate/drop the table when I am done if necessary. The syntax between the different SQL system can be a little tricky and my guess there is an incompatibility between MS SQL and InterSystems. 

Scott Roth · Aug 11, 2022 go to post

I had to pull the images down via another PC that could access docker. Should I still run start.sh to get everything loaded?

Scott Roth · Aug 11, 2022 go to post

Why not use a view instead of a Temporary table? Since Temporary Tables are just Temporary and created at the time of execution how are you setting privs on the Temporary Table.

Scott Roth · Aug 3, 2022 go to post

I missed the Discord chat, however I am very interested in trying it out once you have the documentation together. I look forward to it.

Thanks

Scott

Scott Roth · Aug 3, 2022 go to post

Thanks unfortunately the servers I am trying to install these on do not have the ability to download the docker images. So I am trying other avenues to try to make it work for my team.

Scott Roth · Aug 1, 2022 go to post

Just FYI..... One and probably many of my BPL's have over 30+ IF statements. Interface Maps has a limitation on how many IF statements it handled. It was suggested that I split apart my BPL, or wait for Development, which has been entered into the internal InterSystems system.

Scott Roth · Jul 25, 2022 go to post

Jul 25 13:21:31 int-lxiris-vd01 kernel: oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-2001341.slice/session-1349.scope,task=irisdb,pid=1411729,uid=327
Jul 25 13:21:31 int-lxiris-vd01 kernel: Out of memory: Killed process 1411729 (irisdb) total-vm:64515128kB, anon-rss:40949392kB, file-rss:216kB, shmem-rss:21504kB, UID:327 pgtables:100648kB oom_score_adj:0
 

Scott Roth · Jul 25, 2022 go to post

I am not seeing much in the logs. I tried executing it from the GUI again and this popped up in the logs...

alerts.log
07/25/22-11:07:30:783 (1170818) 2 [Generic.Event] Process terminated abnormally (pid 1407120, jobid 0x000501f1)

messages.log
07/25/22-11:07:30:783 (1170818) 2 [Generic.Event] Process terminated abnormally (pid 1407120, jobid 0x000501f1)
07/25/22-11:07:30:802 (1170818) 0 [Generic.Event] cleaned dead job, pid: 1407120, jobid 0x000501f1
07/25/22-11:08:29:835 (1407553) 2 [Utility.Event] ResourceCleanup: Dead job cleanup from '' job '1407120' of 'gbl:^IRIS.Temp.cspServer(1407120)'

csp.log
local-time="Mon Jul 25 11:04:14 2022" wg-build="RT 2201.1823 (linux/apapi:srv=2.4.52/apr=1.7.0/apu=1.6.1/mpm=worker)" wg-log-level=-1 when="2022-07-25 15:04:14.745" level=WARNING event=WebGateway.ProcessRequest pid=1170851 thread-id=139680926398208 csp-connection-no=0 csp-server="LOCAL" csp-server-pid=1407120 csp-request-id=6f7 csp-session-id=oShZWGY9SY csp-remote-addr=10.95.70.50 csp-page="POST /csp/healthshare/devclin/%CSP.Broker.cls" text="Error Condition" details="CSP application closed the connection before sending a complete response"
 

Since messages.log mentions IRIS.Temp.cspServer does it mean there is an issue with globals?

Scott Roth · Jul 25, 2022 go to post

Node: int-lxiris-vd01.unix.osumc.edu, Instance: DEV

USER>zn "DEVCLIN"

DEVCLIN>set start=$h,rs=##class(Ens.InterfaceMaps.Utils).EnumeratePathsFunc(),end=$h write "Time in seconds: ", $p(end, ",", 2)-$p(start, ",",2)
Killed

It timed out in the cache session as well.

Scott Roth · Jul 25, 2022 go to post

I made the suggested change to the Web Application but till received...

I did not see anything in the Application log, but did do a trace on the Web Gateway and found this...But it appears the Web Gateway returned a 200?

HTTP/1.1 200 OK
Content-Type: application/x-csp-hyperevent
Set-Cookie: CSPSESSIONID-SP-52773-UP-csp-healthshare-=000000010000NDWvnIIgxIxABp0JuJLbDWSBd89wThY$r1wuVK; path=/csp/healthshare/; httpOnly; sameSite=lax;
Cache-Control: no-cache
Date: Mon, 25 Jul 2022 11:46:01 GMT
Expires: Thu, 29 Oct 1998 17:04:19 GMT
Pragma: no-cache
Set-Cookie: CSPWSERVERID=hA035JK3; path=/; httpOnly;
Content-Length: 614 000000010000NDWvnIIgxIxABp0JuJLbDWSBd89wThY$r1wuVK
#R
// InvokeInstanceMethod:
try {
}
catch(ex) {
var text = 'A JavaScript error occurred while invoking a server instance method.\nClass: EnsPortal.InterfaceMaps\nMethod: PrepareCancel\n';
zenExceptionHandler(ex,arguments,text);
}
// %EndChangeTracking: sync client with server changes
try {
}
catch(ex) {
zenExceptionHandler(ex,arguments,'A JavaScript error occurred in %EndChangeTracking.');
}
delete _zenProxyIndex[-2]; if (zenPage && zenPage.onServerMethodReturn) {
zenPage.onServerMethodReturn('PrepareCancel');
}
#OK
1172932

Scott Roth · Jul 20, 2022 go to post

I did increase the timeout to 180, 300, and 1800. Each time I got an HTTP 500 error

Scott Roth · Jul 20, 2022 go to post

Below is the error I am getting... "Executing your search took longer than the timeout for requests....." This seems more of a System Management Portal waiting for response error. Is there a way to adjust that? or make the search run more efficiently when you have a large namespace?

Scott Roth · Jul 13, 2022 go to post

A couple of questions about UnitTest as we have not used it before...

  1. Your application only tests the message you define like in Example.cls?
  2. What if we want to test more than one ADT message? Can this be modified to use a file instead?
  3. Also is it possible to test the DTL at the same time and send that result to a file based on the Rule within the Business Process?

I just would like to understand the process a bit more to see if it is valuable for us to use...like I said before ideally I would like to automate a way to feed in a file send it though all the necessary routers (to make sure the rules still work) and collect the output from the DTLs that I can compare to our Production server.

If I have the proof or can report on it, I can use it to show that the testing works, and put the rest of my team's mind at ease from moving from 2018.1.3 to 2022.1

Scott Roth · Jul 8, 2022 go to post

Cache for UNIX (IBM AIX for System Power System-64) 2018.1.3 (Build 414U) Mon Oct 28 2019 11:24:02 EDT
 

I tried 

TESTCLIN>set msg = ##class(EnsLib.HL7.Message).%OpenId(2725582908)

TESTCLIN>d msg.OutputToLibraryStream(.msgstream)

 Set tIOStream=$S(pLibStream.%Extends("%IO.I.CharacterStream"):pLibStream, 1:##C
 ^
lass(%IO.MetaCharacterStream).%New(pLibStream))
<UNDEFINED>zOutputToLibraryStream+1^EnsLib.HL7.Message.1 *pLibStream

but OutputToLibraryStream generated the error above. Can you tell me why?

Scott Roth · Jul 6, 2022 go to post

I am not sure then, maybe a call to WRC would help further as I have not experienced this issue.

Scott Roth · Jul 6, 2022 go to post

An issue I see with the code is with the value you are specifying with ConvertDateTime. If you are sending YYYY-mm-dd your code needs to account for that "%Y-%m-%d" 

set parms(1) = ##class(Ens.Rule.FunctionSet).ConvertDateTime("2022-01-01","%Y-%m-%d","%q(1)")
set parms(2) = ##class(Ens.Rule.FunctionSet).ConvertDateTime("2022-01-05","%Y-%m-%d","%q(1)")

Scott Roth · Jul 6, 2022 go to post

How is the date columns defined in your Stored Procedure class file? 

For example I have a InsertProviderSp class file that represents all of the Parameters of the stored procedure, and within it I have a Property DOB As %TimeStamp. 

My method within my Outbound adapter looks like this....

If you are "hardcoding" the dates within the EnsLib.SQL.OutboundAdapter, you could be able to call the above ConvertDateTime by adding lines to for ##class(Ens.Rule.FunctionSet).ConvertDateTime....

I have many cases where I am inserting, update, or querying data from external MS SQL sources to pull into Ensemble, so let me know if you still need help.

Scott Roth · Jul 1, 2022 go to post

I figured it out, it would not allow me to do it under Admin or _system. When I added myself to my local machine and made sure I had all privs, it allowed me to execute it without issue.

Scott Roth · Jul 1, 2022 go to post

Sorry.... HealthShare HealthConnect 

IRIS for Windows (x86-64) 2022.1 (Build 209U) Tue May 31 2022 12:16:40 EDT

Scott Roth · Jun 30, 2022 go to post

I tried the line on my local windows IRIS install and I am getting the following error...

ERROR #5002: ObjectScript error: <METHOD DOES NOT EXIST>zGetInstallerProperties+11^%ZPM.PackageManager.Developer.Utils.1 *%GetData,%SQL.StatementResult
  > ERROR #5574: Error reported while running generator for parameter '%ZPM.PackageManager.Developer.Processor.CSPApplication:ATTRIBUTES'
    > ERROR #5030: An error occurred while compiling class '%ZPM.PackageManager.Developer.Processor.CSPApplication'
Detected 1 errors during load.
2022-06-30 14:58:21 0 %ZPM.Installer: ERROR #5002: ObjectScript error: <METHOD DOES NOT EXIST>zGetInstallerProperties+11^%ZPM.PackageManager.Developer.Utils.1 *%GetData,%SQL.StatementResult
  > ERROR #5574: Error reported while running generator for parameter '%ZPM.PackageManager.Developer.Processor.CSPApplication:ATTRIBUTES'
    > ERROR #5030: An error occurred while compiling class '%ZPM.PackageManager.Developer.Processor.CSPApplication'
2022-06-30 14:58:21 0 %ZPM.Installer: Installation failed at 2022-06-30 14:58:21
2022-06-30 14:58:21 0 %Installer: Elapsed time 10.222858s
Time spent 10.295294
ERROR #5002: ObjectScript error: <METHOD DOES NOT EXIST>zGetInstallerProperties+11^%ZPM.PackageManager.Developer.Utils.1 *%GetData,%SQL.StatementResult
  > ERROR #5574: Error reported while running generator for parameter '%ZPM.PackageManager.Developer.Processor.CSPApplication:ATTRIBUTES'
    > ERROR #5030: An error occurred while compiling class '%ZPM.PackageManager.Developer.Processor.CSPApplication'
      > ERROR #5090: An error has occurred while creating projection %ZPM.Installer:Reference.
Detected 1 errors during load.