Caché

Syndicate content 115 

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
0 4
0

answers

143

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 6
0

answers

603

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 2
0

answers

142

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 4
0

answers

830

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 4
0

answers

243

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.
0 2
0

comments

181

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

0 2
0

comments

107

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 4
0

answers

122

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 5
0

answers

499

views

0

rating

Do to unforseen circumstances the Atelier build that was distributed with the Cache 2016.2 field test had certain incompatibilites which prevented it's effective use with the server that it was bundled with.

We are working on remediating this regretable situation and will provide a compatible Atelier in the 2016.2 field test refresh which is scheduled for today Monday, 1st of Februrary.

We sincerely apologize for any inconvenience so caused.

Last comment 5 February 2016
0 6
152

views

0

rating

I'm designing a workflow for PHR via FTP.  What I've done is create a single FTP adapter to pick up files from multiple customers.  A router then accesses a lookup table and determines if a particular customer is allowed to send a particular message type to the state.  If not, the message doesn't go out.  It seems like everyone is against this approach (other than my CEO, thankfully), including Intersystems:

Our recommendation though is to create separate interfaces to retrieve PHR data from individual
participants. This configuration ... gives us the ability to disable an individual data feed without affecting other other participants.

This seems like a terrible practice to me, but before explaining my reasons I wanted to see what everyone else thinks.

Last comment 5 February 2016
0 3
0

answers

179

views

0

rating

I am pleased to announce the next in the series of 2016.2 field test kits, 2016.2.0.585.0.

In the two weeks since the last field test posting Development has made over a hundred fixes and improvements in Atelier, Enterprise Manager, Ensemble and Caché.

In Atelier alone there were over a dozen changes including a fix for the incompatibility issue that Jamie Newton described in his posting of February 1.

In Caché major areas of focus include:

  • SQL (ten changes),
  • ECP and mirroring (11 changes),
  • Objects and JSON (13 changes),
  • DeepSee (nine changes), and
  • Documentation (23 changes)

We also continue to focus on problems turned up by our developer community and so this kit contains the fix to WRC 854826, a problem dealing with REST processing of HTTP Accept headers

0 0
0

comments

115

views

+ 3

rating

What do you do if you want to have the ID field have a meaningful name for your application? 

Sometimes it comes to pass that when you're making a new table that you want to have the unique row identifier (a.k.a. IDKEY) to be a field that has a name that is meaningful for your data.  Moreover, sometimes you want to set this value directly.  Caché fully supports this functionality and it works   Suppose you have a class Test.Kyle.  The data will be stored like so:

^Test.Kyle(IDKEY)=$LB("",Field1,Field2,...,Fieldn)

Any other field can be unique, but the IDKEY is the one that is the subscript for all the data.  There are two ways to create a named IDKEY.

  1. Property KyleID as %Integer [Identity];
  2. Property KyleID as %Integer;

             Index IDKEYIndex on KyleID [IDKEY]

Last comment 3 February 2016
0 5
244

views

+ 3

rating

Some third party backup products may by default restore CACHE.DAT files as UNIX sparse files when there are trailing zeroes in the backup file.

The support for sparse files vary from UNIX distribution and file system types.  Sparse files attempt to use file system space more efficiently when blocks allocated to the file are mostly empty similar to thin-provisioned storage.  The file system transparently converts metadata representing empty blocks into "real" blocks filled with zero bytes at runtime. The application is suppose to be unaware of this conversion.

The Problem

It has been reported to InterSystems in several occassions upon using some restored database CACHE.DAT files as sparse files may be identified by Cache' as corrupt databases.  The remedy in this case was to change the backup software default to not create sparse files.

The Recommendation

0 4
0

comments

152

views

+ 5

rating

Do you need to quickly build a web page to interact with your database? 

Take a look at these two courses to learn how Zen Mojo can help you display collections and make your collections respond to user interactions.

Displaying Collections and Using the Zen Mojo Documentation

Learn the steps for displaying a collection of Caché data on a Zen Mojo page, find crucial information in the Zen Mojo documentation, and find sample code in the Widget Reference. Learn More.

Zen Mojo: Handling Events and Updating Layouts

This is an entirely hands-on course devoted to event handling and updating the display of a Zen Mojo page in response to user interaction. Learn to create a master-detail view that responds to user selections. Learn More.

0 2
0

comments

156

views

+ 2

rating

Attached to this post is a PDF document outlining some of the key enhancements included with 2016.2. I will be giving a WebEx session that is open to all tomorrow at 11 AM EST. Once the WebEx is over I will be adding a link to the recording for those who cannot attend.

2016.2 Field Test Launch
Tuesday, February 2, 2016
11:00 am  |  Eastern Standard Time (New York, GMT-05:00)  |  30 mins
 
Meeting number:    747 673 229

Join!

Join by phone
Call-in toll-free number: 1-866-8576852  (US)
Call-in number: 1-636-6925389  (US)

You can look up global numbers by country for those dialing in from outside the US here:

https://www.tcconline.com/listNumbersByCode.action?confCode=5568713526


Conference Code: 556 871 3526

Here is the link to the recording

0 6
0

comments

197

views

+ 4

rating

The object and relational data models of the Caché database support three types of indexes, which are standard, bitmap, and bitslice. In addition to these three native types, developers can declare their own custom types of indexes and use them in any classes since version 2013.1. For example, iFind text indexes use that mechanism.

Last comment 29 January 2016
0 8
1140

views

+ 10

rating

Is there a possibility to map a CSP page residing in namespace ABC to a namespace XYZ so you could access it as if executing from XYZ: http://localhost:57772/csp/xyz/MyPage.csp ? Some odd cocktail of web application and package mappings that could make this happen?

The idea is to keep the CSP page in sort of a read-only namespace that only contains code, with the data residing in another namespace. This works for zen pages, but not for CSP.

Last comment 29 January 2016
0 4
0

answers

257

views

0

rating

Oracle plans to deprecate the much-maligned Java browser plugin in JDK 9. For years, the bundled plugin put users at risk with its numerous security flaws. The web is clearly moving to a plugin-free state, which is a good direction.

If you are relying on the Java browser plugin, you should take a look at Java Web Start.

Here is the official blog post by Oracle:

https://blogs.oracle.com/java-platform-group/entry/moving_to_a_plugin_free

Stefan

0 2
0

comments

192

views

0

rating

Announcing Deltanji 6.0, the latest version of the well-respected George James Software source control product formerly known as VC/m.

Deltanji comes in four editions, including Solo which is quick to install on Caché or Ensemble (2009.1 or later), easy to get started with, and perpetually free.

Deltanji runs within the environment whose code it is managing, integrating closely with Studio and Portal, and storing code versions in a CACHE.DAT database.

Please visit http://georgejames.com/deltanji to learn more and download the software.

Last comment 22 January 2016
0 3
177

views

+ 1

rating

I'm working on some custom utility functions that I can utilize in Business Rules as well as other places.  I saw this line in the docs:

For each function you wish to define, add a class method to your new function set class. There is no support for polymorphism, so to be precise, you must mark these class methods as final.

 but I didn't really know what it meant.  I didn't run into any problems until I tried calling one of my new methods from another method.  Removing the [ Final ] fixed the issue, but I'm guessing that means I can't call them from Business Rules now?

Any clarification would be appreciated.  And just in case, here are the two methods in question

Last comment 21 January 2016
0 0
0

answers

93

views

0

rating

Hi,

I'm trying to create a Zen Report that, when rendered to PDF has a header on every page that includes some items from the group that I'm iterating over in the <body>.  I can't use <header> as that only displays once for each iteration, even if that spans more than one page, but <pageheader> seems to be independent of <body> so again doesn't work.

 

Cheers,

Steve.

Last comment 21 January 2016
0 4
0

answers

152

views

0

rating