In MSSQL I think you can do something like this:
select *
from HS_IHE_ATNA_Repository.COLUMNS
where TABLE_NAME='Aggregation'
How can I do this in Cache SQL?
[%msg: < Table 'HS_IHE_ATNA_REPOSITORY.COLUMNS' not found>]
In MSSQL I think you can do something like this:
select *
from HS_IHE_ATNA_Repository.COLUMNS
where TABLE_NAME='Aggregation'
How can I do this in Cache SQL?
[%msg: < Table 'HS_IHE_ATNA_REPOSITORY.COLUMNS' not found>]
I'm planning to have a web-based management and deployment interface. For now I have started writing some .mac scripts. Will I be able to call these from a web page? Or do I just need to start with Zen?
A customer needs to add lines in the Excel sheet before the MDX resultset content.
Is there a more elegant/convenient way than modifying %DeepSee.UI.MDXExcel methods ?
Thanks in advance.
Sylvain
C:\data\backup.bat :
C:\InterSystems\Ensemble\bin\cache -s"C:\InterSystems\Ensemble\Mgr" -U%%SYS ##Class(Backup.General).ExternalFreeze() <C:\data\login.scr
echo %ERRORLEVEL%
rem note that we need to check errorlevel from highest to lowest here....
if errorlevel 5 goto OK
if errorlevel 3 goto FAIL
echo errorlevel returned wrong value
goto END
:OK
echo SYSTEM IS FROZEN
xcopy c:\InterSystems\Ensemble\mgr\ z:\backup\Ensemble /s /e /y /i
echo %ERRORLEVEL%
goto END
:FAIL
echo SYSTEM FREEZE FAILED
:END
rem Now unfreeze the system
C:\InterSystems\Ensemble\bin\cache -s"C:\InterSystems\Ensemble\Mgr" -U%%SYS ##Class(Ba
We released another set of improvements this week and will continue pushing out fixes and features in the upcoming weeks.
Thank you for using the InterSystems Developer Community and please continue providing feedback.
Hi, Community!
There are only six days left to win InterSystems Developer Community MVP prize.
As it was announced in addition to Free Registration on InterSystems Global Summit winner gets 4 nights stay in the Arizona Baltimore, Waldorf Astoria Resort.
We measure contribution to Developer Community on valuable posts and comments and prepared special leaderboard built on InterSystems DeepSee.
By default, it shows all the members. We added the filter to the dashboard to show leaderboard without members who are InterSystems employees.
So here is current leaderboard without InterSystems members:
Hi,
Does anybody know when Ensemble 2016.1 will be general availability?
We are holding off upgrading, providing the wait won't be too long.
Thanks,
Graham
Developing an idea with RuleEngine in XData, we could even refuse from editing full class and edit only valuable xml. Sometime ago I have already written an article(in russian) about such possibility, even more, in that article I wrote about compilable JavaScript to Caché.
This possible with %Studio.AbstractDocument. While extending this class, developer should add a Projection.
Projection RegisterExtension As %Projection.StudioDocument( DocumentDescription = "RuleEngine file", DocumentExtension = "RULE",

Are you going to be building an integration with Ensemble or HealthShare? Take the following course to learn about the core architecture in building an integration, the parts and pieces involved and the most common ways that data flows through that architecture.
Some days ago Alberto has written a very interesting article about the usefulness of ObjectGenerators available in Caché.
In this article, Alberto shows an example RuleEngine based on XData, and how it is possible to improve the process of filling such rules. Caché Studio has a Studio Asist for XData; you may have already seen examples of it if you use ZEN or %Installer.Manifest.
We can use the %XGEN.AbstractDocument class for our task. Unfortunately, InterSystems has marked these classes (all of classes in %XGEN, in fact) as for internal use only. With %XGEN, we should not think about parsing X

Let's say the user need to execute some heavy code (build a report, or extensive calculations etc.). So, of course it needs to be asynchronous, and we possibly need to store some data about execution status. How?
Does Caché support a relationship property ordered according to a specifc value?
What shoud be the best approach?
Hi, InterSystems Developer Community!
We are working to improve this site to make it comfortable to read, contribute, share and get answers from InterSystems Developer Community!
But while we haven't fixed some UI issues please find in this post some simple answers on how to deal with Developer Community.
How to add post?
Open Communities page, choose desired e.g. Caché and click "Create New Post" button.
How to subscribe to the post's updates?
To subscribe to post's updates and get them via email click on Favorite link under the post digest. For example:
How can I manage post's header ?
Suppose
The attached file contains an example of code generation using ObjectGenerators which builds a very simple homemade RuleEngine.
Code generation is an excellent way of increasing performance moving run-time calculations to compile-time.
We could generate code creating routines or implemeting methods using ObjectGenerators. In this example we are using ObjectGenerators.
Update: Rule Engine is now on GitHub https://github.com/intersystems-ib/cache-iat-ruleengine
For starters, let's begin with a very basic code generated method:

This morning on the old Caché Google Group, someone posed the following question, which I've decided to answer here, because it's interesting!
Is there a way to iterate ClassMethod's params, and get param's names and values?
The first answer I can come up with is: it's not easy! In any method, you could try to write code like this (where methodName is the name of your method):
set method = ##class(%Dictionary.MethodDefinition).IDKEYOpen($classname(), methodName)
set args = method.FormalSpec
for i=1:1:$length(args, ",") {
set arg = $piece($piece(args, ",", i), ":", 1)
The cache has error messages default, for example , " -139 SQLCODE : Competition impairment on the update: row versions are not the same. "
How i can exchange it for a more friendly to the user's message? I use the CSP.Page and form_save ( ).
What is best practice for this situation?
Caché Monitor is a database\sql tool primarily for InterSystems Caché but can also connect to MS SQL Server, MS Access and more databases. Within Caché Monitors Server Navigator you see all available Namespaces on your Caché Servers. No need to know the name of the Namespace, no need to configure many many JDBC Connections by hand. Just click on the namespace and see all objects like tables, views, classes and more...
There is a beta build available with some new features: A main new feature in this build is called Query Cloud. With this feature you can write SQL Statements across multiple Cach
In preparation for a presentation I need a real-world LDAP schema that has been customized a bit beyond the basics. Perferably this would be based on an OpenLDAP system which would make it easier to merge into this presentation.
If you have such a schema you would be willing to share please respond or contact my directly at Rich.Taylor@InterSystems.com
Thanks in advance.
Rich Taylor
Here is my original query:
SELECT EventType, InitiatedAt, COUNT(*) as cnt FROM HS_IHE_ATNA_Repository.Aggregation WHERE EventType = 'LOGIN' AND LocalDateTime > '2016-02-16 11:00:00' GROUP BY EventType, InitiatedAt
This gives me data like this:
| LOGIN | %SYSTEM | 69918 |
| LOGIN | OTHER | 39 |
However, I need to get the data back as two columns with all but the last concatenated and delimited, more like this:
| LOGIN;%SYSTEM | 69918 |
| LOGIN;OTHER | 39 |
I tried this:
SELECT EventType + ';' + InitiatedAt as k, COUNT(*) as cnt FROM HS_IHE_ATNA_Repository.Aggregation WHERE EventType = 'LOGIN' AND LocalDateT
Hi,
Given a log file with these records representing, hypotethically, the ‘movements’ or changes in residential city, for citizens, like this:
ID CitizenRef RelocationDate City Surname
...
48 1000 2015-04-01 Boston Smith
49 1000 2015-07-01 Seattle Smith
50 1000 2015-10-01 Boston Smith
51 1000
Do you need to build an object-oriented application using Caché? Take this course to learn how to create, retrieve, update and delete objects in Caché.
Caché Objects Introduction
Learn the basics of Caché objects. This course will provide an overview of Caché Classes, Methods, and interaction with the Caché database by creating, saving, loading and deleting objects. The lessons in this course assume that you have some previous object-oriented programming experience. Learn More.
Hi,
We do have a production including a SOAP.OutboundAdapter that make a request to a .NET WCF Service. The response from that service vary in size. When it come to large one, we talk about maybe 8000 records (with 6-8 attributes per record) in xml, the adapter always give a timout. Even if we put a high number of seconds or set -1. After 1 1/2h still nothing get back. It's just standing there and waiting for ever.
Our .NET developer have look at it (on the WCF-service) and from ther point of view they say that it seems like Ensemle can't handle such big responses.
In .Net it.s possi
I'm interested in different approaches on how to store user data in Caché. I'm assuming that application uses Caché security/Caché users and not a self-made authentication system.
Several approaches, I'm familiar with:
I'm writing some custom functions for use in a routing rule. I have a few that are working, but right now I'm trying to use one that has no parameters. Typically this would be a sub instead of a function, but I'm not familiar enough with Cache to know what I need to do here.
Here is the code:

We heard from a customer who wanted to display a version number as a read-only production setting. During the build on the build server, this version number is added to the Production class. This works fine, and the Version is displayed in the Portal, but the customer wanted to write protect it, so the enduser can’t change it. The customer had defined the setting like this:
Property Version As %String;
Parameter SETTINGS = "Version:Info";
We advised the customer to define SETTINGS like this instead:
Parameter SETTINGS = "Version:Alerting:label"
where label is the control to use a
Looking at a property defined as follows:
Property SystemTime As %Library.TimeStamp [ SqlComputeCode = {Set {*}=$ZDATETIME($NOW(),3,1,0)}, SqlComputed ];
The documentation talks about using SqlComputed and SqlComputeCode with SqlComputeOnChange (specifying which events will trigger computation), and about using them with the Calculated keyword (so it's always computed). I don't see any specific explanation of the case above, though, when neither SqlComputeOnChange nor Calculated is specified.
From a bit of testing, it seems that the behavior is:
This post is intended to share how we have implemented HL7 v.2.x in XML format in several Ensemble projects.
We have added to our local InterSystems Iberia GitHub repository a package which uses an approach that takes advantage of EnsLib.HL7.Message class.
More information here:
Given the following code:
I get <UNDEFINED>start+4^DeploymentTool *tstVar
I also tried setting the variable outside the start method but that doesn't work either. I realize I could pass tstVar to the TestIt() routine but I'm trying to create a couple variables that will be reused repeatedly so that doesn't really work.
Hello,
I am trying to log the output of csession in Linux. I try this command:
csession cache | tee myoutput.log
Although it works each new lines at screen output doesn't appear at row 1...
Any tip?