Question
· Sep 4
Speed of pagination.

Hi,

My purpose is to make pagination for a table that selects from a large database. I need to jump to any page number (if the page size is 99 and I want to display the 111th page, I need to select as fast as possible the rows between10989 and 11088).

I used %VID BETWEEN :from and :to for the select query. Now, the %VID is available only if I select either from another nested select, or from a view. %VID does not work if I select directly from a table.

0 2
0 71
Question
· Jul 17, 2018
Cache Dynamic SQL Pagination

Would like to know if there is an alternative or better way to paginate through a dataset using dynamic SQL than what I am using below. The problem is that as the potential pool of data gets larger, this code slows down to the point of not being useable. In analyzing each line of code below, it appears the slow down is related to the initial rset.%Next() iteration. Is there anything available which does not require a subquery/%VID such as a simple LIMIT/OFFSET?

My code is similar to :

s sql=##class(%SQL.Statement).%New()

1 28
3 3K
Question
· Aug 28
COMPARE ROUTINES

IS IT POSSIBLE TO COMAPRE TWO ROUTINES ACCROSS INHOUSE NETWORK AND IF SO THEN WHAT IS THE PROPER SYNTAX TO USE?

SAMPLE:

K ^RICH D ##class(%Library.Routine).RoutineCompare("\\IP\C$\.......\$NAMESPACE","RTN","\\LOCALHOST\..........\$NAMESPACE","RTN","^RICH")

1 2
0 73
Question
· Mar 31, 2021
End Session programmatically

We have a background job that keeps an eye on our ongoing CSP sessions, counts licenses used and some other tasks. Question: If I know the session ID (something like "wuuZ2Gwgxw"), how do I (find and) end that particular session programmatically in ObjectScript - i.e., the equivalent of %session.EndSession=1 in the csp page code?

Thanks!

Michael Reach

1 15
2 807
Question
· Aug 28
JOB $SYSTEM.obj

IS THERE A WAY TO JOB A $SYSTEM.OBJ FUNCTION AND FIND IF THE JOB IS RUNNING OR FINISHED TO ASYNCHRONOUSLY CONTINUE OR HALT THE PROCESS?

1 5
0 87

We have a CSP pages script, which gets and sets a cookie for email tracking purposes, we had problems with cookies not being passed to this script when the URL was opened from an email client due to being cross-site, so I set Session Cookie Scope & User Cookie Scope to None instead of Strict.

This solved the issue with cookies not being passed, however the script entirely does not work anymore due to the error:

"Invalid CSP response cookie. SameSite cannot be set to None without Secure. : CSP Error"

0 3
0 62

Is there a general way to set a variable XYZ equal to the text of the code line being executed now? Debugger or production. For example, for a code below if code is currently assigning a to 1, XYZ would be equal "S a=1". The same question about a variable containing current routine name.

S a=1

0 2
0 88

I am looking for an installation kit: CachePCkit_x64.exe for 64 bits Windows newer than 2015.1
I have had a computercrash and needed to install Caché all over again.
Unfortunately I only had the kit from 2013 and that had just one feature missing.
I always could do anything I had to do with Caché 2015,2 and I don't need anything else.
Could somebody help me?

0 1
0 62

Hello, I am total newbie when it comes to ObjectScript (just started going through the tutorial). We have a task where we have to update the port number for 75-100 items (say for half of the items in our production). Going through the documentation and other community posts it looks like we could utilize class method 'ApplySettings' in Ens.Production. But we are running into an issue. Below is what we currently have. When we hard code the item, it works. But, if we store the item in a variable and try it pass it through. Then it doesn't work. We are also not seeing an error. Is our

0 3
1 112

Good morning

We are looking for a Senior Database Manager for a contract position with a health agency. It's a two and a half year contract, fully remote.

Please review the opportunity by clicking the link below and if you qualify, please let me know if you are interested in speaking about the opportunity.

More info here: https://teckpert.applytojob.com/apply/okkPyvcJn5/Senior-Database-Manager-Intersystems

Need to be based in the US and have work authorization.

0 0
0 86

Dear ladies and gentlemen, in the last month I've improved my Tool Caché Monitor... but first: the name

The name Caché Monitor was chosen to reflect the close integration of the tool with the Caché database. The established name Intersystems Caché will likely be completely replaced by InterSystems IRIS Data Platform in the foreseeable future I think. So a rebranding step became necessary. In order to be less closely tied to a product name in the future, a new name has been chosen to be more neutral: SQL Data Lens

4 4
1 550

I have an application that is called by terminal in local cache environment. The application basically has two processes that runs and does the below call to retrieve files and sub-directories in separate folders. When the main process starts, it jobs off and calls the second process that gathers all files in a directory by using a window dir and file command that pipes the results to a file. The main process continues on and does the same thing but from a different folder. When checking out what was retrieved by the secondprocess, there were directories and files missing. When I run this as just one process it works properly. I am running this on a 2017 license cache instance. I have also tried this on IRIS instance and got the same results. Could you please advise me what is causing the window directory to not work properly when running the processes at the same time?

0 8
0 317

Hello every one, here in our company we are trying to develop a tool to help us in our "Code Review" that today is completely done for another developer.

So I need to develope a tool that reads a class/routine (Already done) and identify if in the current line there is some abbreviated command, that is against our policy of codification, for example:

s variable = "test"
d ..SomeMethod()

So in this cases I want to warn the original developer that the code has parts that need to change the "s" to "Set" and de "d" to "Do".

2 5
2 101

InterSystems FAQ rubric

Temporary globals stored in the IRISTEMP/CACHETEMP databases are used when a process does not need to store data indefinitely, but requires the powerful performance of globals. The IRISTEMP/CACHETEMP databases are not journaled, so using temporary globals does not create journal files.

The system uses the IRISTEMP/CACHETEMP databases for temporary storage and are available to users for the same.

2 0
3 129

Traditional Caché Objectscript has the multi-dimensional array as its main form of complex data structure and the $order command as the main means of traversing said data structures. But newer versions of Caché ObjectScript also have data structures that are direct parallels of what languages such as JavaScript provide, in the form of %DynamicObject and %DynamicArray. These have an easy to use iterator feature via the %GetIterator method, and even a handy built-in literal syntax for constructing new objects.

0 4
0 1K

Ok, I am attempting to clarify the required use of the RESIZE command, when you have a UNIVERSE or a UNIDATA DB attached to Cache. Traditional UNIVERSE / UNIDATA databases 'require' that hashed files be re-sized according to historic use, to prevent file overflow (aka. performance issues). It is not clear if that requirement is fully eliminated by attaching one of these databases to Cache. It is clear that, if you do not allocate 'enough' space on Cache for the database 'as a whole', that is a problem.

0 6
0 74

A nice feature that we recently added to version 2.12.6 of the VS Code ObjectScript extension is controlled by this new setting:

objectscript.serverSourceControl.respectEditableStatus

When set true in JSON, or checked in the Settings Editor, a server-side file will be read-only if the source control class for the namespace reports that it is not editable.

4 0
1 57

when doing ETL process from cache database to mysql database(ods) and to another mysql database(dwd).

There are lots of DR columns in one table.

In the first step we need two databases to be totally consistent(ods=cache database)

However, the DR column in another database lost its meaning and become to normal number.

In the last step we do the data governance in ODS to DWD. My question is how to write sql without many `join` in this step.

0 0
0 24