Article Mike Kadow · Jun 11, 2016 2m read

NewBie's Corner Session 7 True and False

Welcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.

Click on the Caché Cube in your system tray and select Terminal to try out these commands.

In COS, a 0 is false and any other number (positive or negative) is true.

0
0 414
Article Alexander Koblov · May 20, 2016 12m read

Order is a necessity for everyone, but not everyone understands it in the same way (Fausto Cercignani)

Disclaimer: This article uses Russian language and Cyrillic alphabet as examples, but is relevant for anyone who uses Caché in a non-English locale. Please note that this article refers mostly to NLS collations, which are different than SQL collations. SQL collations (such as SQLUPPER, SQLSTRING, EXACT which means no collation, TRUNCATE, etc.) are actual functions that are explicitly applied to some values, and whose results are sometimes explicitly stored in the global subscripts. When stored in subscripts, these values would naturally follow the NLS collation in effect (“SQL and NLS Collations”).

7
1 3196
Question Danny Spell · Jun 9, 2016

I've been in IT since 1986.

I started with Pr1me INFORMATION and Primos on Pr1me hardware.

In the 90s and 00s, I used D3.

I'm giving Caché a try, but I'm kinda having some difficulty getting started.

I've installed Caché on a 64-bit Windows 7 workstation. It was installed under an administrator's account. From a standard users account, I'm trying to access the Management Portal at:

http://localhost:57772/csp/sys/UtilHome.csp

It is prompting me for credentials. Which ones do I use? I've tried several, but nothing is working.

5
0 447
Question Blaise ZARKA · Jun 8, 2016

In DeepSee, having a customer account cube. The cube includes a time dimension AccountCreationDate.

How do you create a calculated measure to get the total number of accounts from the beginning to a certain date in abscissa ?

I tried many things including this:
AGGREGATE(%TIMERANGE([AccountCreationDate].[H1].[MonthYear].&[190001],[AccountCreationDate].[H1].[MonthYear].CURRENTMEMBER) ,[Measures].[%Count])

But I don't get the right result because the date in abscissa creates a filter on the first date.

I tried also with %MDX function, but then I loose the context for the CURRENTMEMBER.

2
0 950
Question Mario Sanchez Macias · Jun 8, 2016

I am having a problem when using atelier on my instance, which I just synched from perforce on latest and then did a built

I am getting the error ERROR #5880: Unable to create source control class: %Studio.SourceControl.ISC [zSourceControlCreate+17^%Studio.SourceControl.Interface.1:%SYS]

every time I want to open any class or routine from %SYS namespace in the Server tab.

Did someone had the same issue?

Mario

5
0 612
Question Paul Reesman · Jun 7, 2016

We have noticed that when compiling with Atelier (either Atelier itself or sending the code through the REST interface) that the build will fail if all brackets '() {} []' are not closed. This includes brackets opened in comments.

 

For example, this will fail:

class myclass

{

//if someVar {

}

 

I do not know if this issue has been fixed or if this issue has been brought up, but it has been a nuisance over here.

3
0 443
Question Ray Fucillo · Jun 6, 2016

Mirroring provides an admin capability to Stop Mirroring on this member, which causes a non-primary member to temporarily disconnect from the primary, stop dejournaling, etc.  While most system administrators may never need or use this function, some employ it for certain kinds of maintenance or other special cases.

The intent is that the administrator uses the Start Mirroring function when they wish the member to reconnect. However, today mirroring also implicitly restarts (reconnects) if the Caché instance restarts.

4
0 466
Question Nikita Savchenko · Jun 6, 2016

Hello!

I have a WebSocket application which spawns new process using JOB command.

Sometimes WebSocket connection can be terminated, and in the meantime I need to hold spawned process alive until it can be associated with the new WebSocket connection. (Do not suggest serializing process state here instead please)

Technically, in Caché WebSocket connection is represented by the class, which executes in its own process. This process is terminated when the connection is lost. In this case the JOBbed process does not terminates (thanks Edward), but it rely on $ZPARENT variable.

11
0 485
Announcement Paul Gomez · Jun 3, 2016

On June 7th we'll be releasing two new views of content that will allow you to rapidly see what's new on the site as well as identify content that has gone unanswered. The next step for this (after this release) will be to add in personalization so that you can filter content based on your tag and member "following" preferences.

4
0 372
Article Benjamin De Boe · Jun 7, 2016 7m read

Sentiment Analysis is a thriving research area in the broader context of big data, with many small as well as large vendors offering solutions extracting sentiment scores from free text. As sentiment is highly dependent on the subject a piece of text is about (financial news vs tweets about the latest computer game), most of these solutions are targeted at specific markets and/or focus on a given type of source data, such as social media content.

0
0 1106
Question Nancy Martínez · Jun 6, 2016

Hello,

Why I don't see the full content of a XML file inside a Ens.StreamContainer Message?

When  I look into the content I only see:

<?xml version="1.0" ?><!-- type: Ens.StreamContainer  id: 5 -->
<StreamContainer><OriginalFilename>C:\Temp\In\aa.xml</OriginalFilename><Stream></Stream><Type>FC</Type></StreamContainer>

How I can see all the content? There is any setting to modify this behavior?

I am using a EnsLib.File.PassthroughService,

Regards

1
0 1213
Question Evgeny Shvarov · May 30, 2016

Hi, Community!

Last weekend we held the Final of InterSystems Contest on Caché, DeepSee and iKnow under the aegis of IT Planet Student Championship in Ekaterinburg. BTW, this year we had more than 1,400 participants in InterSystems Contest.

One of the tasks for the final was to solve T9 Spelling problem  with Caché ObjectScript and use the minimum code. 

Problem description:
The Latin alphabet contains 26 characters and telephones only have ten digits on the keypad. We would like to make it easier to write a message to your friend using a sequence of keypresses to indicate the desired characters.

20
0 1417
Article Steve Brunner · May 19, 2016 1m read

I am pleased to announce the field test of Caché and Ensemble 2016.3 -  with many new improvements.

The product team at InterSystems looks forward to your participation in the field test and feedback over the coming months.

Some of the more signification changes in 2016.3 are new RESTful APIs for iKnow and broader APIs for programmatic control of multiple servers (enterprise manager).  As always, there are a host of scalability and performance improvements, including improvements to the core database and SQL.  And hundreds of smaller improvements and corrections.

8
0 1079
Question Chip Gore · Apr 20, 2016

Hi -

After having seen how Atelier is working, I've decided to start learning/using Atelier for an existing project.

I've installed, and after a bit of poking around, I've managed to get a project that includes my classes, and they compile and such (these were all from an existing export), but I see that NONE of my .csp files came along despite being in the export file.

 

I'm trying to figure out what the planned strategy is for .

6
0 863
Question Isaac Aaron · Jun 3, 2016

Hello

During some consultant activity I did at a client's I have discovered something very interesting. It seems like the current processing cycle as written in ObjectScript has trouble utilizing an SSD-based storage machine with five-digit IOPS.

6
0 2793
Question Harry Tong · May 31, 2016

Recently I was asked by a customer with this question. In MS SQL Server, there is a function called host_name() that will return the work station name.

Here is how I would do it in Caché :

With default SQL schema name, in my case SQLUser in SQL (which is equivalent as User in Caché class definition), I have a class called User.dummy, I added a classmethod called hostname and expose it as SQL function host_name:

 

/// 
Class User.Dummy Extends %Persistent [ ClassType = persistent, DdlAllowed, ProcedureBlock, SqlRowIdPrivate, SqlTableName = dummy, StorageStrategy = "" ]
{
Property f1 As %Library.

4
0 1578
Question Peter Kopp · Jun 2, 2016

I have a ZEN page with buttons, text boxes and a tab group. The tab group contains a single tab which I use to display an image(src). When the user, uses the browser zoom capabilities to reduce or enlarge the image, the other controls are reduced or enlarged as well. How can I reduce or enlarge the tab src alone? Thank you for any and all input.

1
0 452
Article Mike Kadow · Jun 2, 2016 3m read

NewBie's Corner Session 6 If and Kill commands

Welcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.

Click on the Caché Cube in your system tray and select Terminal to try out the commands.

As in other computer programming languages, the If command is the primary decision makes.

If command with numeric operands

Set X=12
If X=12 Set X=13
Write X
13

If command with alphanumeric operands

Set X="ABC"
If X="ABC" Set X="XYZ"
Write X
XYZ

Whenever alphanumeric data is being referenced, quotation marks are required.

0
0 512
Question Laura Cavanaugh · May 31, 2016

Hi all - I'm running a Zen page that inherits from %Zen.Component.page, and I'd like to step through code and debug it.  Is this possible, and how?

 

I've tried to attach to a process that I think is mine (it has my internal IP address) but is using "Unknown User".  Any ideas on where to start debugging the page  -- this page calls lots of other pages.  I'd thought I'd start at the home page.  

 

Perhaps I need to navigate to my page that I want to debug, and attach at that point.

 

Any info on the debugger in this atypical use is appreciated.

Thank  you,

Laura

10
0 1093
Question David E Nelson · Jun 2, 2016

What would be the easiest or best way to filter the options presented by a filter control?

For example, suppose that I create a query using HoleFoods that uses a named filter to filter the product categories according to some criteria. When I display the query on the dashboard, I would like to provide a filter control that will allow users to further constrain the product categories. However, a simple filter control will display all the product categories available in the cube many of which are irrelevant to the current query.

Thanks for your help!

3
0 466
Question James Bourette · Jun 2, 2016

This is more of an eclipse thing, but I couldn't really find an answer when I searched.  I created a new workspace, but I had updated my keyboard shortcuts in the first workspace and now I'm trying to import the changes.  I successfully exported them as .csv, but I cannot find a way to import the changes into the new workspace.

Any help would be appreciated.

2
0 683