Hi Ed, thanks for sharing!
3. Add template to a server with InterSystems IRIS
Could you provide more details on it?
- Log in to post comments
Hi Ed, thanks for sharing!
3. Add template to a server with InterSystems IRIS
Could you provide more details on it?
Hi, Rubens!
PS: Evgeny, what do you think of adding a Post type called Information? I think the one I used is not adequate, but I had no options since the other types seemed lesser adequate.
Thank you! It's a good idea. You always can submit a feature request for DC. I would say that this looks like a public discussion around product feature requests, right? To have DC as a sort of idea-portal.
Maybe we'll introduce something like this. But in order to have this more than conversation and to have some follow up on product development, we need to discuss it with Product management.
For now, I think this is more of type Question than Article.
Hi Chip!
It’s not an answer, but this could be done via Arduino devices. Here is the related article by @Eduard Lebedyuk and the app on Open Exchange
Wow. Thanks Dmitry, this is a real freedom of opportunities.
Also, if you use $I() or $seq() for id generation it's not comparable with count=count+1 cause $I is not reversible in trollbacks
Which implies that foreach iteration is not desired here.
Got you, this was the word "dictionaries". Removed it and added the comment about each element of array.
If you're sure that it would be less than $$$MaxStringLength then you can use $lb, otherwise use locals (which can be converted to ppg/globals easily).
Yes. Thanks.
Interesting that I can use $LB in a parameter declaration, but cannot call a method - e.g. if you need some logic to form a list. This is not compilable in this case.
2. Sometimes you WANT and NEED to do the full scan. And my topic was about these cases. In some programming languages, we even can find reserve words for such, e.g. for each.
And again your comment is interesting and helpful and deserves another topic too.
Thanks, Ed! Two remarks:
1. You mention iteration over resultset and introduce an example of iteration over array of columns cortege or record.
2. My question is not about getting values from arrays like list, locals, ppg, globals but what is better to use when you have a case of full scan over the array that in some cases lists are handier vs locals etc.
Though the question of what array is better when you need to get values for keys is interesting too, maybe it's another good topic for discussion. Answering your statement here I agree for LB the choice for value by position if it's not a very large (huge) array, where the global is the only answer.
@David Loveluck, thanks for sharing!
Do you want also to submit the code to Github and Open Exchange?
I was looking at @David Underhill's code for Metrics project and decided that for one level global traversing his code style is the most readable:
s database="" for {
s database=$o(databases(database))
q:database=""
...
}
And in general:
s iter="" for {
s iter=$o(^array(iter)) q:iter=""
// do something
}
So, use for instead of while for global traversing and this is readable and you never miss the next set is in while example.
Cool. And what is better with while $listnext from the performance point of view - local variable or refer to a parameter every time?
Thank you, @Eduard Lebedyuk and @Alexander Koblov! I agree, $lb variant is much better here.
Very rich library and awesome package structure and ObjectScript styling. Perfect work, thank you Richard!
Hi Ed!
Does RestForms leverage %JSON.Adapter functionality to expose classes data to REST via JSON?
Mine is faster ;)
ClassMethod RussianToEnglish(russian = "привет") As %String
{
set rus="абвгдезийклмнопрстуфхыэАБВГДЕЗИЙКЛМНОПРСТУФХЫЭьЬъЪ"
set eng="abvgdeziyklmnoprstufhyeABVGDEZIYKLMNOPRSTUFHYE"
set rus("ж")="zh"
set rus("ц")="ts"
set rus("ч")="ch"
set rus("ш")="sh"
set rus("щ")="shch"
set rus("ю")="yu"
set rus("я")="ya"
set rus("Ж")="Zh"
set rus("Ц")="Ts"
set rus("Ч")="Ch"
set rus("Ш")="Sh"
set rus("Щ")="Shch"
set rus("Ю")="Yu"
set rus("Я")="Ya"
set english=$tr(russian,rus,eng)
set wow=$O(rus(""))
while wow'="" {
set english=$Replace(english,wow,rus(wow))
set wow=$O(rus(wow))
}
return english
}
USER>w ##class(Example.ObjectScript).RussianToEnglish("Я вас любил: любовь еще, быть может, В душе моей угасла не совсем;"))
Ya vas lyubil: lyubov eshche, byt mozhet, V dushe moey ugasla ne sovsem;
USER>
Hi Vivek!
If you want to check for all the required fields instead of checking it on %Save, you better scan the class before %Save on the properties with required flag and check whether you have the value for it.
IMHO, this is the only way to show all the required fields at once.
And!
It worth to mention, that credit in development goes to:
Thank you very much, guys! I hope the list of contributors will be much longer soon!
1 - Is there any plans to automatize the
module.xmlgeneration by using something like a Wizard?
Submit an issue? More over, craft a module which supports that! And PR - it's a Community Package manager.
3 - Is it possible to run pre/post-install scripts as well? Kind of what installer classes do.
I think, this already in place. @Dmitry Maslennikov who contributed a lot will comment.
4 - Is also possible to use the
module.xmlto provide a contextual root?
We maybe can use the code! Thanks! @Dmitry Maslennikov ?
Hi Vandrei!
Als check the video on how to start coding InterSystems Object Script with GitHub and VSCode on IRIS Community Edition. Takes 5 min.
Thanks, Udo!
Another version of KYC - Know Your Community )
Julian, you are welcome!
There is a lot of other good stuff on InterSystems Open Exchange made by this community developers.
Thanks @Julian Matthews !
Also just to add - this situation could be reproduced in a real-world too: this is a Web Terminal made by @Nikita.Savchenko7047 , which is quite installable into any IRIS, Caché, Ensemble, etc.
Hi Dmitry!
So the new release on VSCode on Open Exchange.
It says - there is a debugger now.
How to introduce a breakpoint?
Great! Happy to hear that
Hi Salma!
isc dev is a community project. So you either can submit an issue or/and contribute the desired functionality by yourself and PR it to the repo.
Perfect!
So, what is the setting of this parameter to export classes into:
/src/cls
folder?
Sorry Vivek. My code provides you the Id of objExternalUser you save (possible create) above. It's 1).
It's not the latest inserted record. I thought you need:
I need RowId of inserted record.
Out of curiosity: why do you need the latest record?