select * from A left join B on A.x = B.x inner join C on B.y = C.y
does Cache SQL treat the join path: LEFT_JOIN(A,INNER_JOIN(B.C)) also a valid candidate path?
Thanks.
select * from A left join B on A.x = B.x inner join C on B.y = C.y
does Cache SQL treat the join path: LEFT_JOIN(A,INNER_JOIN(B.C)) also a valid candidate path?
Thanks.
Hey guys!
Thanks for participating in our small but productive COS marathon on behalf Adventofcode 2017!
The leaderboard is here:

And we are ready to announce the winner but need your public repositories with COS solutions inside. Please share it below in comments.
We have results!
1st place: Bert Sarens! Repository.
2nd place: Peter Steiwer! Repository.
3rd place: Dmitry Maslennikov. Repository.
Congratulations Bert!
You get 10,000 Global Masters points and the title of the AdventOfCode champion in Caché ObjectScript at least until December 2018!
Peter and Dmitry!
What is difference between using a command $classmethod rather than just invoking them straight away?
For example if i need to call a class and its method i can just use like
do ##class(circle).radius()
rather than using
do $classmethod("circle",radius)(I suppose both of them doing the same function i am not aware of it)
Please help me understand what is different and is there any specific usage.
Correct me if i have made mistake.
I have made a complete copy of our test namespace into a secondary test namespace. Thereby we can test with our current EHR version and our soon to be deployed EHR version simultaneously. However, we have a number of saved searches within the Message Viewer that we would like to have available within our secondary namespace. Is it possible to export the saved searches within the message viewer?
Thanks!
Is there any config setting in Net.SSH.Session that I can use to set StrictHostKeyChecking to no, I am getting an error about unable to exchange encryption keys. Also how would I set keyboard-interactive I dont see any option to set this?
aSSH Error [80101012]: Authentication failed (username/password) [80101012]
[libssh2] 653.630730 Transport: Looking for packet of type: 20
[libssh2] 653.630730 Failure Event: -37 - Unable to exchange encryption keys
=> libssh2_transport_read() raw (952 bytes)
0000: 00 00 03 B4 04 14 37 FE 5D 7C 12 50 E1 41 3
Hi everyone
How can I connect using the Terminal to a remote server?
I changed the server indication on the Healthshare icon on the Windows toolbar.
The management portal works but not the Terminal. When I open the terminal it displays only some information about the server ("SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.2"), but it doesn't give the possibility to log in.
Do you have any suggestions how I could fix it?
Thanks a lot and best regards
Milena
Hi community ,
i worked this last time on the access token generate method , now it's ok, i want use the received access token to have access for asking the resources server.
i found the [%SYS.OAuth2.AccessToken] class which describes how add access token in the http request header , but i don't know how use it in my project.
Do me take only this class or the full package %SYS.OAuth2.
Thank you for helping .
This the issue i am getting while trying to install atelier using eclipse oxygen
I have done using this link https://download.intersystems.com/download/atelier.csp
My system is windows 10. How to reslove it.
[Update] The problem has been fixed.
The update sites listed on the Atelier download page will be temporarily down for some time. We will notify the community here once the servers are brought back up.
As a result, you will not be able to install Atelier 1.1.391 from the beta update site until this work is completed.
Thank you for your patience and we apologize for any inconvenience.
InterSystems is pleased to announce the availability of these maintenance releases:
· Caché and Ensemble 2017.2.1
· HealthShare Health Connect v15.03 for 2017.2.1
Caché and Ensemble 2017.2.1 details:
· Platforms are the same as for 2017.2.0, with the addition of:
o Oracle Solaris 10, 11 for SPARC-64
o Oracle Solaris 10, 11 for x86-64
· The version number of the kits for these releases is 2017.2.1.801.0
· The full list of corrections can be found in the release notes
HealthShare Health Connect v15.03 on core technology 2017.2.1.801.
Hello everyone,
From now till the 25th of december each day 2 programming problems to sharpen your programming skills.
Theme this year:
The night before Christmas, one of Santa's Elves calls you in a panic. "The printer's broken! We can't print the Naughty or Nice List!" By the time you make it to sub-basement 17, there are only a few minutes until midnight. "We have a big problem," she says; "there must be almost fifty bugs in this system, but nothing else can print The List. Stand in this square, quick!
Let's say I have Macro.Parent class:
Include Parent
Class Macro.Parent
{
ClassMethod Test()
{
write "Class: " _ $classname() _ $c(10,13) _ "Value: " _ $$$name
}
}
which references Parent.inc macro name:
#define name "Parent"
Now, I want in my subclass Macro.Child to have Test method with the same code, but to redefine value of name macro.
Hello, I will. Cls file (including Chinese comments) directly into the ensemble studio, studio tips imported successfully through the udl file, but my Chinese comment does not display properly, how do I deal with? Thank you!
I am using a Windows 7 system, ensemble 2016, .cls file I am currently using UTF-8 encoding.
Hi, Community!
I'm pleased to announce that in this December 2017 we have 2 years of InterSystems Developer Community up and running!

Together we did a lot this year, and a lot more is planned for the next year!
Our Community is growing: In November we had 3,700 registered members (2,200 last November) and 13,000 web users visited the site in November 2017 (7,000 last year).
Thank you for using it, thanks for making it useful, thanks for your knowledge, experience, and your passion!
And, may I ask you to share in the comments the article or question which was most helpful for you this year?
Happy Birthday, Developer Community!
Hi, Community!
Check the second Developer Community Video of the week:
Deal with Dynamic (Schema-less) Data
With the release of Cache 2016.1, JSON support was re-architected and made part of the core object model with the creation of %Object and %Array classes, which allow you to create dynamic JSON enabled objects and arrays.
On a recent demonstration I was working on, I had the need to create a REST web service that returned a JSON representation of a persistent object. After searching for methods that would allow me to accomplish this, ultimately I found none, until now.
With the release of 2016.
How can I get a terminal connection to Caché server from Atelier?
Is it possible?
Let’s continue our series of articles about creating a web application using REST only.
Hi, Community!
Please welcome a new session recording from Global Summit 2017:
Data Visualization: The Choice is Yours
In if condition what is the difference between specifying the single operator and double operator? For example, what is the difference between (&& and &) or (|| and !)
Hello everyone, I work for a company that currently uses Studio on version 2016.1.2, and will be looking at options to upgrade to 2016.2 and beyond. This would also include the potential to switch from Studio to Atelier, however there are a lot of workflow changes and new features to test.
Does Atelier have a simple way to evaluate what it has to offer without needing to setup an entire separate environment? How did your organization demo its features before committing?
Thank you! ![]()
In OS X 10.8 and earlier, PHP was built with ODBC support, making it easy to connect to a Caché database:
$ php -r 'phpinfo();' |grep 'ODBC Support'
ODBC Support => enabled
However, this support was removed in OS X 10.9:
$ php -r 'phpinfo();' |grep 'ODBC Support'
Some people use Homebrew, MacPorts, or Fink to get their tools back. If you're comfortable coloring a little outside the lines (i.e., using sudo and the command line), you can build the odbc.so or pdo_odbc.so extension (depending on which API you prefer), and use it with Apple's version of Apache and PHP.
I am trying to read an xml document using %XML.TextReader and that's is all well and l can get my elements values but would like to determine where the next record start on the xml without referring to the document path in essence would like to use the same method to read different xml docs. I would like to know if is there a way or a function that I can use to get the start and end of a record in xml as I would to get the start and end element.
Hi ,
I have problem to run the Java Gateway Wizard in Eclipse with Atelier.
Eclipse version is the latest:
Atelier IDE is the latest stable version: version 1.0.284
Running on Windows 7 Enterprise
Ensemble server is version: Cache for Windows (x86-64) 2017.2 (Build 744U) Fri Sep 29 2017 10:58:27 EDT
The JAR-file I am trying to import is a small example, it will just create two Apache Avro JSON-messages and write the result to a LOG-file.
Main JAR-file: DataLakeMessage.jar
Third-party JAR-files in a sub folder with the name lib:
Hi all,
I have a database with 140 million records containing financial transactions. When I do a query to calculate the sum of those records spanning a number of months it takes around 4 seconds on my database server which seems reasonable. However if I run the same query on an application server it takes around 40 seconds to do the same query.
In just this instance I would like to run that piece of code on the database server instead of the application server. It's a query that is only run a few times a day so I would prefer to have a fast result and don't mind putting a bit more stress on my database server for that.
Hi community,
I got quite a busy namespace with lots of services, processes and operations. The Ensemble purge that runs daily keeps the last 10 days. I would like to increase the NumberOfDaysToKeep to 60, but only for a small number of the interfaces in the namespace, and I would like to do it in a way that will be seamless to the users, so they will not have to change the URL of their calls, or will even be aware of the change.
The one idea that I had is to move these few interfaces to a new namespace , but how do I then do it without affecting the URL? with a Pass-Through interface somehow?
This might be a very simple rookie question but I'm trying to create couple of web services in Ensemble and using document below as my tutorial, I do manage to do it:
http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…
But instead of doing it as described above, where method signature is like this:
Method GetCustomerInfo(ID As %Numeric) As ESOAP.
I am trying to install cache 2017.2 on vagrant/VirtualBox and Ubuntu. I have tried both Linux precise64 3.2.0-23-generic #36-Ubuntu and Linux vagrant-ubuntu-trusty-64 3.13.0-137-generic #186-Ubuntu. I am getting an error that i can’t figure out. I have done this:
sudo apt-get install build-essential
sudo apt-get install software-properties-common python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get install libstdc++6
sudo apt-get install gcc-4.9 g++-4.9
sudo apt-get update
sudo apt-get upgrade
Any ideas on what to do?
Today %SYS.Namespace.ListAll started to report one namespace, for example USER, two times: once as "USER" and once as USER's database "^^c:\databases\user".
Details: my Cache instance has 50+ local namespaces. Today I have "touched" 3 of them (imported new classes), and now ListAll reports each of these 3 twice. Looks like ListAll is the only one who sees those strange duplicates, in all other places (Portal, Studio) only USER is shown.
Can someone explain what is happening?
We are starting to look into our BPL's and catch errors that calls may return. Can someone explain how to use the THROW and CATCH within the Business Process Language or have a sample of how it should work?
Thanks
Scott Roth
The Ohio State University Wexner Medical Center