Question Giray Ozel · Jun 6, 2019

Say you have a DICOM document with an input information sequence with many sequence items. You could access every item one by one by looping and querying the path by passing it to the GetValueAt method as demonsrated below.

This works but there are some performance issues on my system if the document has to  be read for each query (as far as I know, that is the case on my system). Is there a way of querying a path, which would return the sequence items as an array? I think I am missing something. With 900 items the process takes around 20 seconds currently.

1
0 326
Question Giray Ozel · Apr 19, 2019
Class ICT.Experiments.A Extends %Persistent
{
Property Name As %String;
Property Collection As list Of ICT.Experiments.B;
Property Collection2 As array Of ICT.Experiments.C;
}

Class ICT.Experiments.B Extends %Persistent
{
Property Name As %String;
}

Class ICT.Experiments.C Extends %Persistent
{
Property Name As %String;

I have the classes above and I can select columns from the array collection by using two joins as follows:

SELECT 
mainTable.ID, mainTable.Name, c.Name
FROM ICT_Experiments.A mainTable
LEFT JOIN ICT_Experiments.A_Collection2 arrayTable ON arrayTable.A = mainTable.

9
1 2129
Question Giray Ozel · Mar 25, 2019

I have two classes:

Class Example.Parent Extends %PersistentProperty 
Child Extends %Persistent

A parent can have many children. I want to query for parents and add children for each parent to my result.

Here is the code that I query with:

In the QueryParents method, while iterating through the result set, I trigger a new query for each parent to find the children. And at the end I return a JSON structure. Now, this works but it is not going to scale well when there are many records in the database.

Is there a better approach to doing this?

I have version 2017.2 installed.

7
0 1218
Question Giray Ozel · Jul 10, 2018

I have a CSP REST web application where I'm using delegated authentication via basic authentication in the REST calls. When I do a call to the web app with correct user credentials, I get a  CSPSESSIONID cookie back representing the CSP session, which has started for the user I'm logged in with.

And when I want to log out/end the CSP session with the "CacheLogout=end" query parameter, I get a 401 Unauthorized code back. But the csp session itself does get terminated, which means the logout call was successful.

Is there a way to have it return a 200 OK status code?

3
0 680
Question Giray Ozel · Mar 2, 2018

I was able to run the Cache terminal from the command prompt with the following command, in the namespace that I provided in the brackets:

cterm /console=cn_ap:ENSEMBLE[TEST_1]
But the command suddenly stopped opening the terminal in the correct namespace. It just opens it in the default namespace. I tried it with different namespaces or invalid namespaces, it always opens the terminal in the default namespace now.

I cannot figure out what is causing this behaviour.

5
0 1320