#Caché

30 Followers · 4.5K Posts

  

InterSystems Caché is a multi-model DBMS and application server. See more details here.

Documentation.

Question Kevin Furze · May 25, 2017

Hello,

I'm having a problem with %SQL.Statement.

I have a ClassMethod on Cache that I'm trying to access via - this.db.invoke_classmethod.

When I get to my %Prepare I get a <DYNAMIC LIBRARY LOAD> error. Upon checking cconsole.log I find the following...

4
0 575
InterSystems Official Steve Brunner · May 26, 2017

InterSystems is pleased to announce the availability of the following maintenance releases:

  • Caché and Ensemble 2017.1.1
  • HealthShare Health Connect v15.021 on core technology 2017.1.1

Caché and Ensemble are available on the same platforms as 2017.1.0, except as noted below

  • The full list of corrections can be found in the release notes.
  • The version number of the kits for these releases is 2017.1.1.111.0
  • Oracle Solaris 10, 11 for SPARC-64 and Oracle Solaris 10, 11 for x86-64 are not yet approved.

HealthShare HealthConnect v15.021 on core technology 2017.1.1.111.0

0
0 577
Question Evgeny Shvarov · May 26, 2017

Hi!

I'm saving object instance using RestForms.

RESTFormsUI calls %Save() for me, which is great. But I want to set the property CreationDate with the current date for every new record being inserted.

So  object callback implementation seems as a reasonable option. I did the following:

Method %OnBeforeSave(insert as %Boolean) As %Status [ Private, ServerOnly = 1 ] 
{

 if insert s ..CreationDate=$H

 q $$$OK

}

And it works fine.

But Documentation says I'd better use %OnAddToSaveSet()

What are you using for the callbacks in similar cases?

15
0 1071
Article Michelle Stolwyk · May 25, 2017 2m read

The Data Platforms department here at InterSystems is gearing up for this year's crop of interns, and I for one am very excited to meet them all next week!

We've got folks from top technical colleges with diverse specialties from hard core engineers to pure computer scientists to mathematicians to business professionals. They come from countries around the world like Vietnam, China, and Finland and they all come with impressive backgrounds. We're sure they will do very well this summer.

0
0 622
Question PILAR GUERRERO · May 25, 2017

Hello,

I’m creating a REST API service but I need to convert my object in JSON.

The Class “A” is extended from another Class “B”:

Class message_B Extends Ens.Request
{

Property ClientId As %String(MAXLEN = "");

Property mesagge As %String(MAXLEN = "");

}
Class message_A Extends message_B
{
Property idDate As %String;

Property Datetime As %String;

Property time As %String;

​}

When I use:

set pRequest = ##Class(message_A).%New()
​do ##class(Ens.Util.JSON).ObjectToJSONStream(pRequest, .content)
7
0 2185
Question Alexey Maslov · May 11, 2017

Since most of our customers moved to Caché 2015.1, some admins became abused with CPUPct warnings (sometimes alerts) in console log without other signs of lacking CPU power.
Documentation states that:

          CPUPct               job_type              CPU usage (percent) by all processes of the listed job type in aggregate       

What does it really mean?
E.g., if total system CPU usage is 25%, and all running processes are of the same type (e.g, CSPSRV), would CPUPct be equal to 100%? If so, why this case should be a reason for alert? 

4
0 753
Question Confused Developer · May 22, 2017

We have multiple server and multiple namespace. 

I have a script having sql query  which fetch data from current  namespace of a server. 

If I want to run the same query on different server to fetch data, but I want to run that script on just one server for all server. 

Please let me know how can I proceed. 

2
0 749
Question Sean Connelly · May 17, 2017

From a browser, an XMLHttpRequest to a CSP page on a different server will obviously hit the CORS security check.

To get around this I can set the Access-Control-Allow-Origin header on that particular CSP class.

However, setting any request headers on the XMLHttpRequest object will trigger a pre-flight OPTIONS request.

This OPTIONS request is not handled by the target CSP page and the Access-Control-Allow-Origin header is never set, triggering a CORS error.

I can see in the new REST class that it can get a handle on the OPTIONS request but standard CSP pages don't seem to get them.

3
0 807
Question Laura Cavanaugh · May 17, 2017

I need a trick to display the cellTitle for just ONE column in a tablePane with a unique value.  Here are the issues:

1. OnDrawCell has access to the cell data for that row/column, in %query(pName),  but setting the cellTitle property to a column doesn't refresh the column object

2. Setting showValueInTooltip is good for the entire table, not just one cell

3. ** the column element does not evaluate zen expressions, so I can't say cellTitle="#(%query.Comment)#", for example.  That's the crux of the problem.

<tablePane id="tblComplete"  
 tableName="MyTable" 
 orderByClause="ID DESC" 

2
0 593
Question Rubens Silva · May 12, 2017

Hello.
I would like to know if there's a way to batch a certain amount of writes done inside a job and display it sequentially on the main process.
My idea is to prevent the main process from freezing while displaying the batched data. The main process's device could be

the terminal or the Studio output.

%Studio.Debugger does something close to that when printing the output from the debug target process.
$System.Event.Signal($zparent) doesn't signals the parent if a device is open. So I can't create the batch buffer along, because I can keep the buffering device open and notify the main process.

11
0 754
Question Kurro Lopez · Jan 26, 2017

Hi all,

Sorry to bother frown

I have a Business Object with SOAP.OutboundAdapter and it gets the response from a WebApi.

Following the sample Creating REST Services and Clients with Ensemble - Developing a REST Operation, I've done the call and it retrieves a JSon with the information. The result is a JSon with a Base64 content (at least 15000 bytes)

I've put a trace to check the content  with $$$TRACE(tHttpResponse.Data.Read() I have a cut result (to 1200 character), so the JSonStreamToObject is not able to allocate the full result into a object.

6
0 633
Article Brendan Bannon · Sep 1, 2016 9m read

The Art of Mapping Globals to Classes  (2 of 3)

If you are looking to breathe new life into an old MUMPS application follow these steps to map your globals to classes and expose all that beautiful data to Objects and SQL.

This example is going to cram in 4 or 5 different things beyond what was covered in Part 1 

All that is left after this is the Parent Child mapping example and then you will be on your way.

Same disclaimer:  If you can’t make heads or tails of your globals after reviewing these articles please contact the WRC and we will try to help you out:  Support@InterSystems.com

2
0 2707
Question shobha rani · May 17, 2017

HI,

Please let us know the solution to the below error:

ERROR:#5388 - You do not have write permission on the database class . %SOAP.WebClient is in , so class lock cannot be obtained .

Thanks, Shobha

8
0 1066
Discussion David Little · May 16, 2017

Hi All

I'm looking for some field experiences, lessons learned, or actual deployed solutions to the problem of replicating non-CACHE.DAT data in a mirrored Cache environment.  

Environment:

  • Operating System is IBM AIX
  • Hardware is IBM Power w/ virtualised storage
  • Cache 2017.1
  • 2x Production mirror members
  • 1x DR mirror member

There are a number of different data types that we're looking at mirroring, and a number of identified solutions.  The two main types of data to be mirrored outside of Cache mirroring are:

1
0 509
Article Rob Tweed · May 22, 2017 1m read

Most frameworks support either REST or WebSockets, and don't make it easy to switch between the two, and/or support both styles of application at the same time.  WebSockets offer many advantages over REST, eg:

- most benchmarks show WebSocket messaging to be significantly faster than over HTTP

1
0 534
Question wx fg · May 22, 2017

hi

   I want to online backup one Caché database by windows bat, I find some article from the online documentation about  terminal script and the ^DBACK tool and External Entry Points for ^DBACK,  so I can invoke the External Entry Points for ^DBACK from terminal  script like this:    send: Do BACKUP^DBACK<CR>

Is there other better way for backup database from bat/script?

Thanks

2
0 733
Article Vitaliy Serdtsev · May 20, 2017 10m read

This is a translation of the following article. Thanks @Evgeny Shvarov  for the help in translation.

Let's assume that you wrote a program that shows "Hello World!", for example:

  write "Hello, World!"

The program works and everyone is happy.

With time, however, your program becomes more complex, gets more features and you eventually need to show the same string in different languages. Moreover you don't know the number and names of these languages.

The spoiler below contains a description of how the task of multi-language localization is solved in Caché.

1
1 1208
Question Amir Samary · May 10, 2017

Hi everyone,

This is:

Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2016.2 (Build 736U) Fri Sep 30 2016 12:25:56 EDT

The server is on RedHat Linux while the browser is running on Windows (Firefox).

I am helping a partner build a complex modern HTML5 web application that talks with Caché using REST calls. They have been using %CSP.REST very successfully. Security works great as well. 

11
0 10279