Evgeny Shvarov · Aug 27, 2019 go to post

I agree. I don't know the reasons which caused to limit the MAXLEN to 50 characters... 

It steals months (if not more) of developers time to find out what was the bug and why this doesn't work because of MAXLEN=50;

Evgeny Shvarov · Aug 27, 2019 go to post

As I see in your code you already do some "error handling". So you can continue:

Change your code

Do objExternalUser.%Save()

to the following:

set stat=objExternalUser.%Save()

if $$$ISERR(stat) {

 #; error handling

 d $System.OBJ.DisplayError(stat)

}

HTH.

Out of curiosity - you have empty Try-Catch block. Why don't use it?

you could embrace your code into the following:

$$$TOE(objExternalUser.%Save())

And catch your error with status in catch then.

Evgeny Shvarov · Aug 27, 2019 go to post

Hi @Vivek Nayak!

Always check the status of %Save - it could result in an error. And I think this what was happened in your case.

90% of my "it doesn't save" with %Save caused by MAXLEN of %String property. %String property goes with MAXLEN=50 by default and it's often not enough. Check you have a such ;)

Evgeny Shvarov · Aug 21, 2019 go to post

That's why I like to develop with IRIS docker containers - every time you have clean IRIS with no garbage code, cache, temp globals, whatever... - you have only what you setup in a build dockerfile script.

Evgeny Shvarov · Aug 19, 2019 go to post

Hi Salma!

If you import this file from this Open Exchange project it can do the export classes in folders:

Once imported call this to setup a folder:

USER>do ##class(dev.code).workdir("my/workdir/src")

Call this to export all classes, macro, deepsee resources in a given workdir.

USER> do ##class(dev.code).export()

You also can import the whole package too.

HTH

Evgeny Shvarov · Aug 18, 2019 go to post

Global name is in the var already. Here is the code I needed it for:

ClassMethod InvertList(from, to) As %Status

{



set iter=$o(@from@(""))

while iter'="" {

 set value=@from@(iter)

 set @to@(value)=iter

 set iter=$O(@from@(iter))

 }

}

Evgeny Shvarov · Aug 18, 2019 go to post

Says 

#1038: Private variable not allowed : 'gniter=$na(from)' : Offset:21 [zInvertList+1^Example.Globals.1]

for

ClassMethod InvertList(from, to) As %Status

{

#define ForAll(%in,%gn) s gn%in=$na(%gn) s %in="" f { s %in=$o(@gn%in@(%in)) q:%in=""

#define EndFor }



$$$ForAll(iter,from)

set value=@from@(iter)

set @to@(value)=iter

$$$EndFor

}
Evgeny Shvarov · Aug 18, 2019 go to post

Maks, thanks for that project!

Do you want to add a sort of "For Each" for a global?

Suppose a have a global ^A(index)=value

And I need to go through all the indexes to do something with the value. 

Currently, I do the following in Objectscript to perform this:

s iter=$Order(^A(""))

while iter'="" {

set value=^A(iter)

/// do something with value

set iter=$O(^A(iter))

}

Would be great to change this to something like that:

zforeach(iter,^A) {

set value=^A(iter)

/// do something with value

}

Evgeny Shvarov · Aug 14, 2019 go to post

Updated the ObjectScript code blocks in your post a bit. 

And don't see any DeepSee cubes here - is this DeepSee related?

Evgeny Shvarov · Aug 7, 2019 go to post

Hi Juha! 

Thanks for the question! 

What are the issues do you face with API Management with container? 

Evgeny Shvarov · Aug 6, 2019 go to post

Hi @Victor Ferreira!

It's not an answer to your question but just a notice that we also have a Spanish community too. So you are able to click on ES switcher(right top corner of the question) of your question and you'll be able to introduce the linked question in Spanish too.

Evgeny Shvarov · Aug 3, 2019 go to post

Sean, I cannot promise collaboration) But happy to test and submit issues if any )

Evgeny Shvarov · Aug 3, 2019 go to post

Have this Docker extension but didn't know the feature. VSCode Tasks are interesting too. Cool stuff thanks. 

Evgeny Shvarov · Aug 3, 2019 go to post

Hi Sean!

Is it possible to serialize global to JSON and export into a file with Cogs?

and vice-versa - import JSON to a global?

Evgeny Shvarov · Jul 31, 2019 go to post

My one)

ClassMethod FizzBuzz()

{

f i=1:1:100 {

s k=i

f a=3,5,15 s:'(i#a) k=$CASE(a,3:"Fizz",5:"Buzz",:"FizzBuzz")

w k,!

}

}