Announcement Evgeny Shvarov · Jun 30, 2017

Hi, Community!

Hope you have already put in your schedule the visit to InterSystems Global Summit 2017 which will take place on 10-13 of September in remarkable JW Marriott Desert Springs Resort and Spa.

This year we have Experience Lab, The Unconference, and 50 more other sessions, regarding performance, cloud, scalability, FHIR, high availability and other solutions and best practices.

1
0 556
Article Vitaliy Serdtsev · Jul 7, 2017 19m read

Quotes (1NF/2NF/3NF)ru:

Every row-and-column intersection contains exactly one value from the applicable domain (and nothing else). The same value can be atomic or non-atomic depending on the purpose of this value. For example, “4286” can be
  • atomic, if its denotes “a credit card’s PIN code” (if it’s broken down or reshuffled, it is of no use any longer)
  • non-atomic, if it’s just a “sequence of numbers” (the value still makes sense if broken down into several parts or reshuffled)

This article explores the standard methods of increasing the performance of SQL queries involving the following types of fields: string, date, simple list (in the $LB format), "list of <...>" and "array of <...>".

0
0 1205
Question Chris Sprague · Jul 4, 2017

Hello,

I'm currently exploring alternatives to CSP/services and ODBC/Sql Maps for access to Caché. I'm not seeing a library which would interest me, so am considering creating one myself.

Does 'CacheConnection' in C# use RPC of some sort, or a defined protocol to communicate with Caché, or does it do so over telnet with scripted commands? I would assume the former. If so, is this a publicly documented protocol that can be implemented by library developers?

Any guidance in this area would be appreciated.

9
0 890
Question wx fg · Jul 5, 2017

hi

    I restored one database on Server B with EXTSELCT^DBREST command from   backup file (this backup file is taken from Server A).  

When I execute select some rows from one table,  it return error like this, 

the same select sql can return correct data  in server A

But when I select other rows from same table on Server B, it return correct data.

Why? maybe the backup file corrupted?

Thanks

1
0 238
Question CM Wang · Jul 5, 2017

"SELECT  %SYSTEM.SQL_TableExists('table name') "could work as expected under SQL shell,

but for   "CALL %SYSTEM.SQL_TableExists('table name')" does not work (not any error reported, it just show nothing).

Is there any reason why CALL could not be applied to a stored procedure?

Thanks.

7
0 571
Article Stephen De Gabrielle · Jul 5, 2017 2m read

I needed to pass through a file with Ensemble but the operation wasn't writing some filenames as given because the  EnsLib.File.PassthroughOperation 'sanitizes' filenames removing characters that are not valid on some operating
systems;
09000655_AEDC_C3344059_A&#47;E_Martin Browne_09000655_201706221018.pdf
09000655_AEDC_C3344059_A#47E_Martin_Browne_09000655_201706221018.pdf

Oh No! It has stripped out my semicolon and ampersand! I need them! (and they are valid filename characters in windows)

I needed a class that ignores the file name parameter and instead writes the destination file with the same

0
0 1249
Question Svetlana Ilina · Nov 28, 2016

Hello. I am a student from Syktyvakar Forest Institute(Russia). 

I need to make Research : "Databases for working with spatial data
Consider MySQL, PostgreSQL and 1 to choose from". I want to explore Cache with subject library of spatial data.

Help.

Does Someone from the developers write the libraries of spatial data?

3
0 470
Article Maks Atygaev · Dec 11, 2016 4m read

Caché offers a number of methods for going through a collection and doing something with its elements. The easiest method uses a while-loop and lets you fulfill the task in an imperative manner. The developer needs to take care of the iterator, jumping to the next element and checking if the loop is within the collection.


 But is it really what a developer should be concerned with?!A developer should be working on solving the problem at hand – quickly and producing code of the highest quality.

18
1 1910
Question JAQUELINE KRIEGER · Jul 3, 2017

Hi everybody, 

I have to create a pivot that shows the result comparing the last week of the current date with the last week of the last year in the same month. I tried using the function LAG, but didn´t work.  Works only if I want to compare the months between the two years.  If someone has some idea, i will appreciatte a lot. 

Thanks.

Jaqueline Krieger

4
0 400
Question Marek Bernád · Jul 3, 2017

Good day, I have this issue. I have global like: ^myglobal(varX) = $LB(var1,var2). I need to delete all globals that have variable var1 in that list same without a need to iterate through all globals and checking their value.

Exact example:

- in database exist following:

^myglobal("Marek") = $LB("code2",1400)
^myglobal("Ondrej") = $LB("code1",12)
^myglobal("Nikita") = $LB("code2",32)
^myglobal("Evgeny") = $LB("code1",76)
^myglobal("Maks") = $LB("code2",99)
^myglobal("Eduard") = $LB("code1",14)
Now!How to delete all globals that have in list in the first place value "code2" please?

3
0 1310
Discussion Mike Kadow · Jul 3, 2017

I know this may sound like sour grapes, but really it is not.

I hear all the exciting things about the up coming InterSystems Conference, and I am sure it is.

But it is way, way out of my price range, and I am sure out of the price range of most of the Cache/MUMPS developers, without company backing.

Just wondering what others think.

4
0 579
Question Marek Bernád · Jul 3, 2017

Good day, I would like to find out the size of Caché ObjectScript variable in order to guarantee that my program will not leak, equally in terminal and Caché globals.  For example how huge number I can store in that variable ? And what happen in Caché when variable will leak ? How is this behavior treated? (how much memory is reserved for common variable?)

Thanks  in advance for your answers.

2
0 760
Article Tirthankar Bachhar · Sep 27, 2016 3m read

How do we generally create an error object of %Status?

Set status=$SYSTEM.Status.Error($$$GeneralError,"Something went wrong")

Now, like $$$GeneralError there are many more macro defined within %occErrors include file by Intersystem which we can use.

i.e.
#define GeneralError                            5001
#define CacheError                               5002
#define NotImplemented                      5003
#define FeatureNotSupported               5014
#define DataMissing                             5022
#define FileCanNotCopy                       5024
#define FileAlreadyExists

6
1 1570
Question Alexander Koblov · Feb 5, 2016

Hi.

It is easy to receive JSON representation or dynamic Array from %ListOfDataTypes:

set l=##class(%ListOfDataTypes).%New()
do l.Insert("a")
do l.Insert("b")
do l.Insert("c")

set arrStr=l.$toJSON()
zwrite arrStr
set arr=l.$compose([])
zwrite arr

How to make backward conversion? How to receive %ListOfDataTypes from dynamic Array an JSON string?

I've tried

SAMPLES>set list = ##class(%ListOfDataTypes).$fromJSON("[""a"",""b"",""c""]")

%FromObject+21^%Library.RegisteredObject.1 *%Exception.General Compose Compose %FromObject Unable to map from %Library.Array instance to
3
0 1526
Article Mike Kadow · Jun 26, 2017 1m read

Here is an idea that would make the Developer Community immensely more valuable (to me anyway)

Have the capability of getting Listing output from searches or tags or groups.

In addition, have people put titles on their answers and comments,

And having a detailed list with all the answers and comments if needed

Then being able to sort the list by date or other criteria.

Something like:

Sub1 . . . .

-answer . . .

-comment . .

-answer . . .

Subject2 . . .

-answer . . .

Subject 3 . . .

-comments . . . 

1
0 310
Question Nora Hutchison · Jun 29, 2017

Hi, we are trying to deployed a changed schedule to our DEV instance (from our TST).  And are getting an error:

SingleFailure: Error during import ERROR <Ens>ErrException: <COMMAND>zImportStream+13^Ens.Util.SettingsDocument.1 -- logged as '-' number - @' tcommit' > ERROR #6315: Errors reporting importing XML subelement in file '/xxx/deploy/Lee-Test.xml' at line '12' offset '40', skipping this item.
 
RequiresManualIntervention: Manual intervention required: Error during import ERROR <Ens>ErrException: <COMMAND>zImportStream+13^Ens.Util.SettingsDocument.1 -- logged as '-' number - @' tcommit' >
6
0 494
Question Stuart Byrne · Jun 29, 2017

Dear All,

I would like to block ADT_A18 and ADT_A47 HL7 2.3 messages with an empty MRG:1 field.

This is to prevent my current HL7 ADT router (Business process) sending blank Merges downstream.

I've attempted to create a business rule where this would return out the business role process.  However the messages still loop though the other rules.

Any advice would be great.

Kind Regards

Stuart

6
0 898
Question PILAR GUERRERO · Jun 29, 2017

Hello...

I need to convert a array  (JSON) in a List Of String. I think, there is some method that does it directly.

Something like that:

SAMPLES>set list = ##class(%ListOfDataTypes).$fromJSON("[""a"",""b"",""c""]")

%FromObject+21^%Library.RegisteredObject.1 *%Exception.General Compose Compose %FromObject Unable to map frm %Library.Array instance to %Library.ListOfDataTypes

I have reading about this but I don't found some trick to help me.

https://community.intersystems.com/post/how-convert-json-listofdatatypes

Thanks!!

1
0 645
Question Eduard Lebedyuk · Jun 26, 2017

I have a class with text property, which contains html text (usually pieces, so it may be invalid), here's a sample value:

<div moreinfo="none">Word1 Word2</div><br>
<a href = "123" >Word3</a>

When I add iFind index on text, there are at least two problems:

  • Words like moreinfo="none">Word1, so exact match with Word1 returns nothing
  • Irrelevant results for href search

How can I pass plaintext into iFnd index?

4
0 553
Article John Murray · Jun 29, 2017 1m read

When posts are displayed on the DC homepage they only show the first part of each post. This part is known as the teaser, or the trimmed version. The DC software does its best, but without being given any hint by you it can sometimes produce teasers that are of limited value, e.g. "Hi!"

When composing your post, the Preview button lets you see what the teaser will look like. For example, here's the preview of an initial version of this post:

And if you want to take control, put the cursor at the point you want the teaser to end, then click this button on the editor toolbar:

But sometimes all it

0
0 501