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.
- Log in to post comments
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.
Works like a charm!
.png)
Wow, @Henrique.GonçalvesDias! This is fantastic!
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
Also available on Open Exchange
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))
}
}
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
}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
}
Hi Kevin!
Thanks for the feedback!
This is a good point. Submitted an issue. If this describes the problem right?
Updated the ObjectScript code blocks in your post a bit.
And don't see any DeepSee cubes here - is this DeepSee related?
Tagging @Patrick Jamieson
Would be great - it’s even more presence and developers can collaborate
Thanks, @Steve Wilson!
Yes, we plan to turn off the attachments feature. As you mention there are a lot of better ways to expose presentation and code.
And as you see @Sourabh Sethi posted the recent package for his recent video on Open Exchange.
Hi Juha!
Thanks for the question!
What are the issues do you face with API Management with container?
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.
Sean, I cannot promise collaboration) But happy to test and submit issues if any )
Have this Docker extension but didn't know the feature. VSCode Tasks are interesting too. Cool stuff thanks.
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?
Wow. I think even our Chinese colleagues will not help to read this)
I like it! though $X is a "hack" ;)
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,!
}
}Hi Tony!
Thanks for sharing!
Could you please submit the repo to Open Exchange too to expand the audience?
You can send Direct Messages now. Learn more.
Another useful command to load into local docker just downloaded from WRC new release of IRIS:
# docker load -i ~/Downloads/iris-2019.3.0.302.0-docker.tar.gz
Good point David, thanks!
Right.
It turned out that VSCode-ObjectScript if is connected to IRIS, has the option to open Management Portal related to the current window of VSCode. Nice job, @Dmitry Maslennikov.
.png)
Robert, thanks for sharing!
Works and compiles with IRIS on Docker in VSCode.

Out of curiosity - if Combochart doesn't work for you? I think it can show the data in different styles for different series on a one widget.
Hi Ed!
One of the ways to expand the functionality in DeepSeeWeb is to expand the library of DSW widgets.
The standard way is to implement the needed functionality in javascript (or take the one which already does what you want from the Internet) and make use of this javascript-widget as a new one with portlets.
Then introduce a new class derived from Portlet class (e.g. SmartMarkersPortlet) into the namespace and make sure that the name of the javascript file is equal to a classname.
Make sure to put the js file into /addons folder of dsw.
Then add the new SmartMarkerPortlet on a dashboard, provide the datasource and work with it as with usual widget.
Check how htmlViewer addon is implemented as an example.
Hi Robert!
Check the PR - introduced IRIS and Docker support for your tool. And provided vscode settings to make it available for editing and compiling with VSCode on InterSystems IRIS.