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?
InterSystems Caché is a multi-model DBMS and application server. See more details here.
InterSystems Caché is a multi-model DBMS and application server. See more details here.
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?
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.
why do I sometime get a <Session disconnected> error when running a $system.OBJ.Export command from a *.scr script file?
Hi
How to install cspgateway in silent mode?
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
The following code downloads https://www.intersystems.com/assets/intersystems-logo.png and saves the file as c:\temp\test.png.
You need to define an SSL configuration called SSLTEST before executing this code
ClassMethod download() As%Status
{
Set sc = $$$OKSet httprequest=##class(%Net.HttpRequest).%New()
set httprequest.Port = 443set httprequest.Https = 1set httprequest.SSLConfiguration = "SSLTEST"Set httprequest.Server="www.intersystems.com"Do httprequest.Get("/assets/intersystems-logo.png")
Set httpresponse=httprequest.We need one common method to persist data for all tables from C# rest api to InterSystems cache object script.
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?
Question:can a business process with pool size > 1 invoke external programs in parallel via $ZF(-100)?
We have a production that takes HL7 (ORU_R01) messages in and produces a PDF from each one for onward transmission to a document store.
The PDF creation is implemented in a business process which transforms the HL7 to XML, saves the XML to the filesystem, then calls Apache FOP (the version distributed with Ensemble) via $ZF(-100) to produce the PDF, which is stored on the filesystem.
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.
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
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?
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.
For more information about temporary globals and the IRISTEMP database, see the following document:
Temporary Globals and the IRISTEMP Database
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.
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.
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.
This option may be of particular interest to users of our Deltanji source control product, particularly when used in combination with the Deltanji extension for VS Code.
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.
If you do not specify the option to remove the mirror attribute of the mirror database when deleting the mirror configuration, the database cannot be restored to a normal state and will be mounted read-only the next time it is mounted. To restore the database to a read-write state, you must remove the mirror attribute using the system routine ^MIRROR.
Hi all.
Recently, I have noticed Scott Roth's mission to resolve issues with Orphaned messages with a lot of focus on prevention, and I envy that level of dedication.
Not wanting to be left out, this has sparked an interest in checking my environments for orphaned messages. Amongst a few different posts on the subject, I came across this post from Suriya Murugan in 2016 that included an interesting class in a Github Gist that seems to be built to do a deep dive into the identification and cleanup of Orphaned Messages.
Hi we are migrating to Linux from OpenVMS. which includes a new server and SAN. after reading a prior post about the differences with ESX and a VSAN I would think that the a SAN with Virtual disks all SSD type would be similar. which after reading it makes me think that using thick provisioning is the way to go. the 3rd party vendor is arguing this point with me. is it the same premise? is non-dedupe the way to go with thick provisioning. we are currently on 2015.2 of Cache with the plans to go to 2018 until the app vendor is able to certify their product on the latest versin.
In PHP, I'm able to utilize the implode and str_getcsv functions to convert a comma-delimited string to a tab-delimited string. The following is an example.
$strtotab = implode("\t", str_getcsv($str, ","));I am wondering if there is a similar way to do this in Cache and ensure that it takes into account fields enclosed in quotes. I am away of the CSVTOCLASS() method in the %SQL.Util.Procedures class. As I understand it, this is used to convert an entire file rather than a single string. The goal is to be compliant with RFC 4180.
Hi Community,
In this article, I will introduce my application iris-RAG-Gen .
Iris-RAG-Gen is a generative AI Retrieval-Augmented Generation (RAG) application that leverages the functionality of IRIS Vector Search to personalize ChatGPT with the help of the Streamlit web framework, LangChain, and OpenAI. The application uses IRIS as a vector store.
I setup a linked server to a cache database to query the data and when I try an query the data I get
OLE DB provider 'MSDASQL' for linked server 'xxx' returned data that does not match expected data length for column '[MSDASQL].CSFAELIGVENCITY'. The (maximum) expected data length is 20, while the returned data length is 23.
Should I be using a different driver when setting up the DSN?
Hi:
I have been adapting the IRIS WHIZ addon as part of the contest. I will soon fork the code on github so the changes are available.
The next phase is I am storing the date from and to time for a more complete search cache
zenPage.getComponent(36).value
it works in the chrome console ok
.png)
I'm not sure in external JS how to set the page it is on as a zenpage to use the zenpage functions
Here, we will introduce a sample code for registering and referencing task schedules.
①Sample of task schedule registration
*Create a task to execute do ^TEST every day at 1:00 am.
set task=##class(%SYS.Task).%New()
set task.Name="MyTask1"
set taskDescription="Execute ^xxx every day at 1:00 AM" // Optional
set task.NameSpace="USER"
set task.TimePeriod=0
set task.DailyFrequency=0
set task.DailyFrequencyTime=""
set task.DailyIncrement=""
set task.DailyStartTime=$ZTimeh("01:00:00")
set task.DailyEndTime=""
set task.TaskClass="%SYS.Task.RunLegacyTask"
set task.
Hi there,
My purpose is to encrypt a communication using JWT tokens. I am developing on IRIS and my purpose is to generate a JWT token that will run on an older version of Cache (so I have to use functions that are compatible with the older version, Cache).
I wrote this code in IRIS:
s username = "user-test123"
set st = ##class(%OAuth2.Utils).TimeInSeconds($ztimestamp,0)
set et = ##class(%OAuth2.Utils).TimeInSeconds($ztimestamp, 60*15)
s payload = {"id": "test-id-123", "username": "test-username"}
s payload.exp = et
s payload.
To compile class routines including the mapped modifier, specify the compiler modifier "/mapped=1" or "/mapped". For example, do the following:
[Example 1] Get the class list and compile
do$System.OBJ.GetClassList(.list,"/mapped")
// build your classes starting from .listdo$System.OBJ.Compile(.list) [Example 2] Compile all classes
do$system.OBJ.CompileAll("/mapped") Hi,
I'm new with writing Caché Objectscript so I need some assistance. I have XML which contains information like this:
<?xml version="1.0" encoding="UTF-8"?> <session> <sessionId>124364</sessionId> <cabinet>demo</cabinet> <eventType>IN</eventType> <eventTime>20161006160154</eventTime> <login>test</login> <loginFirstName>test</loginFirstName> <loginLastName>test</loginLastName> </session>
I have a class representing this object as follows:
Class Testing.Messages.Session Extends (%RegisteredObject, %XML.Adaptor, Ens.
An effective source control solution allows organizations to manage complex codebases, facilitate seamless collaboration within development teams, and streamline deployment processes.
Sonic Healthcare, a leading provider of pathology, radiology, general practice, and corporate medical services, has significantly enhanced visibility and control over its complex environment by implementing Deltanji source control. The tight integration Deltanji provides with InterSystems IRIS and IRIS for Health has been central in achieving these improvements.
I encountered this quirk when investigating an unrelated issue affecting how Studio projects are handled in VS Code.
When you add the top level of the webapp to a %Studio.Project this inserts a %Studio.ProjectItem with a .DIR suffix. For example, if Studio or VS Code is connected to the USER namespace and you add the /csp/user webapp to a project the new ProjectItem name is "csp/user.DIR".
When you export this project to XML from the project's context menu in Studio, or by calling the %Studio.Project.