InterSystems Caché is a multi-model DBMS and application server. See more details here.
I have a custom process that is parsing HL7 and inserting it into a table. Periodically the inserts fail with # due to error: ERROR #5803: Failed to acquire exclusive lock on instance of....
Traditional databases would wait until the lock is removed then do the insert, but cache fails. I'm sure it's my coding approach.
How can I work around this? A Try/Catch loop?
Thanks in advance.
hi, i am new to Studio and also new to objectscript, but i am not new to programming and
want to implement some synonymfunctions e.g. LOCATE should be used as InStr (.. like in much languages ;o)
more generally spoken, i want to implement a library for my string routines BUT of course i want an need autocomplete.
defining a macro $$$InStr does no autocomplete when i type $$$In<CTRL-SPACE>
example: my lib is called STRINGS and the functions are: InString, Split, ...
when i type STRINGS. it should autocomplete
i also don't want to write ##class(xxxxx.yyyyy).InString() every
I have one persistent, xml-enabled class.
I need to convert objects of this class to XML.
However I need to project each object in different ways (depending on
where I send it), for example:
- Different list of attributes are projected
- Attributes have different names
- ...
Is there a way to do that with XML Adaptor?
Someone use gitflow for control of code version? How are doing with production when have many projects?
I have a FullBackup.cbk file generated by Caché Backup Online.This file has many databases.
Is there a Caché feature to restore only one database?
I've tried EXTSELCT^DBREST(), but this routine runs through all databases (skipping the unselected).This process becomes slow, lasting 1 day to finalize the process.
Hello,
I assume there is a simple explanation for this, but I do get <OBJECT DISPATCH> error, when I am trying to set a global to a value.
My example is huge, but I reproduced it using Samples namespace:
First I delete the Title from ##class(Cinema.Film) - 3
Secondly:
SAMPLES>s ref=##class(Cinema.Film).%OpenId(3)
SAMPLES>w ref.Title
SAMPLES>set ^AK(1)=$G(ref.Title)
SET ^AK(1)=$G(ref.Title)
^
<OBJECT DISPATCH> *Property 'Title' in class 'Cinema.Film' must be MultiDimensional
$D also does not work, same error, however this works fine: if ref.Title S ^AK(1)=ref.
InterSystems has corrected a defect that can result in application data integrity issues following an abnormal shutdown.
This problem exists for:
- Caché and Ensemble 2018.1.2
- HealthShare Health Connect (HSAP) 15.032 on Core version 2018.1.2
- InterSystems IRIS Data Platform 2019.1
- InterSystems IRIS for Health 2019.1
- HealthShare Health Connect 2019.1
The defect breaks the journal sync guarantee that all updates in the journal buffer have been written to the journal file. The failure is silent: it does not generate an error message and there is no entry about it in any log file.
Are there any third party tools that have native plugins for monitoring Cache?
Hello all,
I have a Recordset object which contains data from a table "XYZ".
Currently i use this object to extract data using %Get(COL1,COL2...) in a loop and than pass it to a function which inserts the data into another dynamically created Table "ABC" for each record. This takes a lot of time when 100's of records.
Is there a way i can directly copy a RecordSet to a dynamic table without looping through..?
Something like copy Recordset (COL1,COL2..)--> "ABC"
Thanks,
Jimmy
Say I have a property in a persistent class that stores list of colours and I would like to query that field and return a list and be able to loop that list to get individual colours how will l go about achieving this I have tried something like this but its not working as expected
&sql(SELECT colour INTO :colourList FROM favouritecolours)
While (SQLCODE = 0)
{
for i=1:1:$LENGTH($P(colourList,","))
{
set fvalue=$P(colourList,",",i)
write "the first"_fvalue,i,
}
}
the query returns colours but its just a string no delimiter eg;
green red blue
I have tried with
&sql(SELECTI used Cache 2016.
I used the following statement to sort after paging, but suggested an error:
SELECT *
FROM
(SELECT sslog.userRowid,
sslog.CreateDate,
sslog.CreateTime,
Sslog.SSUSR,
sslog.Terminal,
ssuser.Initials,
ssuser.USName
FROM SUser_Log sslog
LEFT JOIN DHC_SSuser ssuser ON (Sslog.SSUSR = ssuser.userRowid
OR sslog.ssusr = ssuser.Initials
OR sslog.ssusr = ssuser.USName)
WHERE ssuser.USName ['admin'
ORDER BY sslog.End users sure love Excel tables. So, how can you deliver the second to the first? Read this post to find out.
Greetings,
Is there any default exception handling feature available in Zen report? I am working on a report that comprises of several different composites report (%ZEN.Report.Display.composite). I am incorporating several composites into the main Zen report, If any composite fails or encounters an issue such as issue with the sql statement or class method which i am using to fetch the data, the report (pdf) fails and shows a Zen error. It is very hard to find an exact composite or code that causes the error as Zen report displaying a generic Zen Error without any details.
Hi All,
I have a REST dispatcher class in which I enabled the Parameter HandleCorsRequest = 1;
I can able to access the API using Postman, but not with my web application. It throws the below error.
Access to XMLHttpRequest at 'https://ec2-10-200-XXX-X.com/REST/MRM/get/Message?MessageCode=ERR0006&L…' from origin 'https://ec2-80-106-XX-XXX..com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Is this something need to be modified in the apache config file
Hi all,
I am trying to create multiple tasks all in a single task.
For instance MyApp has three tasks.
One to send a email if a limit is exceeded = MyApp-check-credits
One to purge files = MyApp-purge
One to auto delete files = MyApp-Del
I would love to get all tasks MyApp-check-credits, MyApp-purge, MyApp-Del into a single parent task called MyApp-AllTasks.
Is there anyone that could give me guidance of how to complete this it would be much appreciated.
We are currently trying to implement TortoiseGIT into Cache Studio as per the following Github project
https://github.com/intersystems-ru/cache-tort-git
Our architecture is as follows:
- A server with Ensemble installed on
- Team of several members connect to the server and perform their code build
TortoiseGIT was installed on the server, however, should the REPO location be:
- on the server itself (as a shared path)?
- locally on every developer station? If yes, how would this be set up?
Hello,
I want to search a process ID in Object Script using the reference variable e.g. 1119102928 and kill that process ID. Please guide how it can be achieved.

Thanks in advance.
Vinay Purohit
I' have done some tests with Caché and Apache Zeppelin. I want to share my experince to use both systems together. I'll try to describe all steps that are required to config Zeppelin to connect to Caché.
What is Apache Zeppelin?
For all who think: What the heck is Apache Zeppelin?, here some details what the project site (http://zeppelin.apache.org) says:
"A web-based notebook that enables interactive data analytics. You can make beautiful data-driven, interactive and collaborative documents with SQL, Scala and more.
Has anyone worked with OPC Unified Architecture protocol (iot/machine to machine communication protocol for industrial automation)?
If so, how did you communicate with it?
In the previous parts (1, 2) we talked about globals as trees. In this article, we will look at them as sparse arrays.
A sparse array - is a type of array where most values assume an identical value.
In practice, you will often see sparse arrays so huge that there is no point in occupying memory with identical elements. Therefore, it makes sense to organize sparse arrays in such a way that memory is not wasted on storing duplicate values.
In some programming languages, sparse arrays are part of the language - for example, in J, MATLAB. In other languages, there are special libraries that let you use them. For C++, those would be Eigen and the like.
Globals are good candidates for implementing sparse arrays for the following reasons:
Hi everybody
I'm new in this forum and also new working with a Caché-Database.
Problem:
I have to delete records from a table (by SQL) which contains a field declared as:
Property Image As %Stream.FileBinary;
When I try to delete a record with an image I get an error
[%msg: <FEHLER #5019: Kann Datei 'H:\BK Solution\DSTBern\eXpert\Data\Expert\stream\YJC7o7ngR9WUeA.stream' nicht löschen>]
[SQLCODE: <-412>:<Allgemeiner Stream-Fehler >]
because the physical file doesn't exist (for any reason) but the database want's to delete this file.
Hi everyone,
Im new in cache, i came from Java and im missing some features that i couldn't find in the documentation, I hope you can help me with this questions.
Just a brief introducction:
- Im in a project with old cache version, so saddly i can't use Eclipse + Atelier, so im using Studio.
- Currently im in a project with persistent classes, we want to turn apart the globals and focus on tables.
The questions:
Is there any way to make something like hibernate for cache %Persistent classes?
Hi,
recentley we started to work with Atelier & VSTS in our organization .
we are looking for a way to use the VSTS as Our Version/Source control system .
I have read the article about "Continuous Delivery of your InterSystems solution using GitLab" & now trying to find a way to use a similar metodology with the VSTS that we have in our organization.
It Apeares that it is possible to Create a Git Repository in the VSTS but i'm not sure how are we to use it from the atelier.
The main questions are:
- What Is the best practice in saving cache code in VSTS GIT?(cls files?, legacy XML?
In our table, we have a column cities, which has a filter which displays the cities of a state depending on the state
For simplicity let's assume we have a page
Property State As %String = "CA"
Our filter should run this query to show all cities of state ca
"SELECT Name FROM City WHERE State= "_%page.State
<tablePane>
<column colName="City"
filterQuery="SELECT Name FROM City WHERE State= <This is where I am stuck>"
filterType="query"
header="City"
width="10%">
</column>
I am not able to pass any parameter to filterQuery.
I have a class defined like this:
Class test.ABC Extends %RegisteredObject {
Property myProp As %Binary [ Internal, Private ];
}Is there a way to get a value of myProp from outside of the object?
I can't modify or extend the class obviously.
Need a sample of using %Net.HttpRequest and %NetHttpResponse from Cache to retrieve and then use/reuse a bearer token to send json data to a REST web service.
Hello,
Need some technique to solve an issue about zen page table.
- "xyz" table exists in all my namespaces.
I have a simple Zen page in "USER 1" namespace. It has a tablepane which pulls data from "xyz" table.
OnLoad of the page i want the zenpage to pull the data from "USER 2" namespace with same "xyz" table name.
Zenpage has to be in "USER 1" namespace
I tried to use the server side callback handler %OnAfterCreatePage() and do a ZNSPACE "USER 2" but still it is not doing the job of pulling data from another namespace.
Any suggestions will be appreciated.
Thanks,
Jimmy Christian.
here is my trigger:
CREATE TRIGGER "SQLUser".SYM_ON_U_FOR_SYM_CHNNL_125123 AFTER UPDATE ON "SQLUser"."sym_channel" REFERENCING OLD ROW AS OLD NEW ROW AS NEW FOR EACH ROW DECLARE @var_row_data VARCHAR(16336); WHEN ( 1 = 1 and 1 = 1 ) -- I will use OLD/NEW alias here set @var_row_data = ''; LANGUAGE sql insert into mytable (id, data) values(1, @var_row_data);
here is error message:
ERROR: [SQLCODE: <-400>:<FATAL ERROR >] [Location:
Hello,
I'm trying to get ODBC running on a Mac but I don't get it working.
Has someone an overview how te install,configure and use it in Excel on MacOSX ?
Regards,
Kurt Hofman.
