Caché

Syndicate content 116 

Question

I am configuring IIS to work with the CSP Gateway but I'm running into this error:

"The Module DLL 'C:\Inetpub\CSPGateway\CSPms.dll' could not be loaded due to a configuration problem. The current configuration only supports loading images built for a x86 processor architecture."

 

Answer

+ 2   0 1
0

comments

915

views

+ 2

rating

Hi all,

I was wondering, what is your favourite public cloud provider?

What is your level of engagement with the cloud provider? Are you testing their infrastructure? In which case I'd expect you being progressing a parallel test with at least a second provider ;-) Or, are you already running a production environment?

--

 

OK, so, let me be the first one to share my experience with one specific cloud provider

Last comment 26 February 2016
+ 2   0 5
0

answers

262

views

+ 2

rating

Hi-

I'm curious to know what InterSystems clients are using for csp based web development methodology.

Are you doing tag based development, or class based development?

If you are using tag based development, what tools are you using to create the look and feel of your web pages?  Are you using tools like Adobe Dreamweaver, or do your developers sit down and code HTML using plain editors like Notepad and Notepad++

Are you doing prototyping of web pages and then adding CSP tags, or are you just developing the finished csp page with no prototype?

Thanks
Ken

 

Last comment 26 February 2016
+ 2   0 0
0

answers

215

views

+ 2

rating

Question:

How can I create, change etc. Security entities (like Users and Roles) programmatically?

Answer:

You can use the Security package classes in the %SYS namespace. For example Security.Roles or Security.Users.

Of course in order to perform these actions the user will require the needed authorization.

Here's a small example using Security.Roles

+ 3   0 3
0

comments

205

views

+ 3

rating

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

+ 1   0 3
0

comments

1011

views

+ 1

rating

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é. 

Opening File

This possible with %Studio.AbstractDocument. While extending this class, developer should add a Projection

Last comment 23 February 2016
+ 5   0 2
550

views

+ 5

rating

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

Last comment 22 February 2016
+ 7   0 2
499

views

+ 7

rating

Suppose you have developed your own app with InterSystems technologies stack and now want to perform multiple deployments on the customers' side. During the development process you've composed a detailed installation guide for your application, because you need to not only import classes, but also fine-tune the environment according to your needs.
To address this specific task, InterSystems has created a special tool called %Installer. Read on to find out how to use it.

Last comment 19 February 2016
+ 12   0 4
1960

views

+ 12

rating

I am pleased to announce the next 2016.2 field test kit, 2016.2.0.595.0.

It may look like a slow week, with less than fifty changes having been checked in, but this kit includes the following fixes to problems found by you, the ones running the kits in the field:

  • ALE2845, which fixes the cachejdbc.jar version
  • JN1637, which fixes an issue that blocked debugging Atelier when used in conjunction with Kerberos
  • DLP3508, which fixes a JSON issue with $compose()

The rest of the fixes have been spread among different areas of the product, chief among them DOCUMENT Data Model, SQL and Atelier.

Please download the kit and give it a try; the latest field test of 2016.2 is available HERE.  And, as always, we welcome your feedback.

Steve Glassman, Director of QD

+ 3   0 3
0

comments

139

views

+ 3

rating

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

A very simple code generated method

For starters, let's begin with a very basic code generated method

+ 4   0 1
0

comments

348

views

+ 4

rating

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)

Last comment 18 February 2016
+ 6   0 3
0

answers

705

views

+ 6

rating

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é Servers; Namespace and combine (SQL JOIN!) this data with other datasources like SQL Server; MS Access or simple CSV files.

Last comment 18 February 2016
+ 3   0 1
1442

views

+ 3

rating

XData blocks in Caché classes has a MimeType property, and dcoumentation says

MimeType — The MIME type (more formally, the internet media type) of the contents of the XData block. The default is text/xml

But unfortunately I can't set any other values, such as text/html or application/javascript, because XData still expect only XML. 

So, question is, for what reasons this property was appeared?

It would be very usefull to set in this property anything other then text/xml, and Studio would highlighted it as developer expected.

Last comment 18 February 2016
+ 3   0 4
0

answers

144

views

+ 3

rating

Hello,

I am trying to use %ZEN.proxyObject to send out in JSON format so I do:

    set tProxyRequest = ##class(%ZEN.proxyObject).%New()
    set tProxyRequest.notanumber = "28001"
    set tProxyRequest.aboolean = "true"
    
    set tBody = ##class(%GlobalCharacterStream).%New()
    do ##class(Ens.Util.JSON).ObjectToJSONStream(tProxyRequest,.tBody,"aelotwu")
    w tBody.Read()

and I get:

{
        "aboolean":"true",
        "notanumber":28001
}

But I want this:

{
        "aboolean":true,
        "notanumber":"28001"
}

 

Help please !

Last comment 17 February 2016
0   0 6
0

answers

617

views

0

rating

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

Last comment 17 February 2016
0   0 2
0

answers

147

views

0

rating

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%SYSTEM69918
LOGINOTHER39


However, I need to get the data back as two columns with all but the last concatenated and delimited, more like this

Last comment 17 February 2016
0   0 4
0

answers

921

views

0

rating

I'm revisiting some older projects that can benefit from the new JSON support and dynamic object capabilities in 2016.1 FT / 2016.2 FT. (Particularly, some of the really new features in the latest 2016.2 FT.)
For the particular thing I'm working on, it would be very handy to be able to merge objects, similarly to https://api.jquery.com/jquery.extend/. The closest thing I've found so far (in 2016.2 only) is:

Set o1 = {"a":1,"c":2}, o2 = {"b":1,"c":1}
Write "o1: ",o1.$toJSON(),!
Write "o2: ",o2.$toJSON(),!
Write !
Write "Merge two objects into a third (new) object, with values from o2 overwriting those from o1 when property names are shared: ",!
Set o3 = o2.$compose({"returnValue":o1.$clone()})
Write "o3: ",o3.$toJSON(),!
Write "o1: ",o1.$toJSON(),!
Write "o2: ",o2.$toJSON(),!
Write !

Last comment 12 February 2016
0   0 4
0

answers

248

views

0

rating

Do you want to learn about the different products and technologies InterSystems has to offer? 
 
Introduction to Caché, Ensemble, HealthShare and Related Technologies
This course gives a non-technical overview to InterSystems products and technologies. It will help you to explore the possibilities of your existing products, help you to identify products you may need to solve gaps at your workplace and allow you to have educated conversations about all InterSystems products, technologies and their capabilities from a non-technical perspective. Learn More.
+ 1   0 2
0

comments

187

views

+ 1

rating

I am pleased to announce the third 2016.2 field test kit, 2016.2.0.590.0.

In the week since the last field test posting Development has made over a hundred fixes and improvements in Atelier, Enterprise Manager, Ensemble and Caché.  Unlike the previous field test kit, though, in which the changes were distributed evenly over multiple areas and products, in this kit over half of the changes are associated just with Atelier.

Please download the kit and give it a try; the latest field test of 2016.2 is available HERE.  And, as always, we welcome your feedback.

Steve Glassman, Director of QD

+ 2   0 2
0

comments

111

views

+ 2

rating

I've searched the ObjectScript reference for any instances of Upper, Lower or Case and the only thing is a case/switch statement.  In all the documentation I can only find SQL and Cache Basic references for things like UCASE.

So how do I do this in ObjectScript?

 

For instance,  if (ucase(dtype)="G") { }

Last comment 8 February 2016
0   0 4
0

answers

126

views

0

rating

Has anyone come up with a way to create a separate thread of processing that can achieve shared access to a set of objects created from the initials process?  The situation is this.  There is a large complex set of objects representing a business process.  Some of these objects are in-memory only.  The desire is to spin off a separate thread that could do some ancillary processing on this data set without slowing down the main process.   Any thoughts?

Last comment 8 February 2016
0   0 5
0

answers

513

views

0

rating