Article Evgeny Shvarov · Jan 24, 2020 3m read The Simplified ObjectScript Source Folder Structure For Package Manager Hi Developers! Recently we released the updated version 0.1.3 of ObjectScript Package Manager (ZPM) which comes with the support of simplified ObjectScript sources folder structure. What 'simplified' does mean? Before 0.1.3 ZPM expected the following structure: /src ---/cls - for ObjectScript classes ---/cls/package_name/class_name.cls ---/cls/package_name/class_name2.cls ---/mac - or Mac ObjectScript routines ---/mac/package_name/mac_routine.mac ---/mac/package_name/mac_routine2.mac ---/inc - for ObjectScript macro include files. ---/inc/package_name/include_file.inc #Deployment #ObjectScript #InterSystems Package Manager (IPM) #InterSystems IRIS #Open Exchange Open Exchange app 6 3 1 947
Discussion Evgeny Shvarov · Jan 22, 2020 Convert all answers to comments, mark comments as accepted for questions Hi Community! We plan to get rid of the answers. Convert them all to comments, rename comments to replies and make the option to mark comments-replies as accepted. Profit: you don't bother what to post: answer or comment. You can accept comments as answers if you search for a comment you don't need to search in answers too. What do you think? #DC Feedback 1 7 0 269
Article Evgeny Shvarov · Jan 18, 2020 2m read Installing Samples BI module with ObjectScript Package Manager Hi Developers! Many of you are looking for samples on how to work with InterSystems IRIS Analytics, formerly known as DeepSee. There is a Samples BI module with Patients and Holefoods examples which is available on Github with source code. The installation steps are clear but take time. Recently we added the option to run IRIS Community Edition containers with ObjectScript Package Manager (ZPM) on board. This simplifies the installation to the "run-one-command" step for the modules submitted to ZPM Community Registry. And thus we can benefit the Samples BI installation with ZPM. And here is how you can run it on your laptop. Let's go! #Deployment #ObjectScript #InterSystems Package Manager (IPM) #InterSystems IRIS #InterSystems IRIS for Health #InterSystems IRIS BI (DeepSee) #Open Exchange Open Exchange app 1 1 0 428
Article Evgeny Shvarov · Jan 17, 2020 2m read Using ObjectScript Package Manager With InterSystems IRIS and IRIS for Health Docker Containers Hi Developers! Recently we published on Docker Hub images for InterSystems IRIS Community Edition and InterSystems IRIS Community for Health containers. What is that? There is a repository that publishes it, and in fact, it is the same container IRIS Community Edition containers you have on official InterSystems listing which have the pre-loaded ObjectScript Package Manager (ZPM) client. So if you run this container with IRIS CE or IRIC CE for Health you can immediately start using ZPM and install packages from Community Registry or any others. What does this mean for you? It means, that anyone can deploy any of your InterSystems ObjectScript application in 3 commands: run IRIS container; open terminal; install your application as ZPM package. It is safe, fast and cross-platform. It's really handy if you want to test a new interesting ZPM package and not harm any of your systems. Suppose, you have docker-desktop installed. You can run the image, which wiil pull the latest container if you don't have it locally: #Docker #InterSystems Package Manager (IPM) #InterSystems IRIS #InterSystems IRIS for Health #Open Exchange Open Exchange app 1 1 0 341
Article Evgeny Shvarov · Jan 15, 2020 3m read Using Invoke Element to Call Class Methods in ObjectScript Packages Hi Developers! Often when we install a code package we want to make some post-install settings, e.g. call to a method, set up a configuration file. This article describes how to do this with the ObjectScript Package Manager. To make any post-install calls you need to add <Invoke> elements into <Invokes> tag to the module.xml. Each <Invoke> element can have nested <Arg> elements if you want to pass params to the method: #ObjectScript #InterSystems Package Manager (IPM) #Tutorial #Open Exchange Open Exchange app 2 0 1 590
Article Evgeny Shvarov · Jan 13, 2020 4m read How to Make Open Exchange Helpful For Your InterSystems Application Hi Developers! In previous articles, we spoke on how to publish your application. But how to make Open Exchange work its best for your application? What do you want for your application on Open Exchange? It is attention (traffic) and downloads. Let's talk about how Open Exchange can deliver this. #Tutorial #Open Exchange 0 0 0 322
Article Evgeny Shvarov · Jan 12, 2020 2m read InterSystems Open Exchange: How to Publish a New Release of Your Application? Hi Developers! Suppose you published your application on Open Exchange with version 1.00. And then you've added a new outstanding feature and you make a new release. You can also make a new release of your application on Open Exchange. Why make releases on Open Exchange? This the way for you to highlight the new features of your application. When you publish a new release the following happens: Release notes appear on the News page of Open Exchange The version of your app changes Version History tab is updated #Tutorial #Open Exchange 0 0 0 274
Article Evgeny Shvarov · Jan 11, 2020 2m read How to Setup a Company on Open Exchange Hi Developers! Many of you work in the companies which produce tools, solutions, frameworks on InterSystems Data Platforms. You can list your Company on Open Exchange to have an option to publish tools, solutions, and frameworks on behalf of your Company: This article describes how to do that. #Tutorial #Open Exchange 0 0 0 321
Article Evgeny Shvarov · Jan 10, 2020 3m read How to Publish an Application on InterSystems Open Exchange: Part 2 Hi Developers! This post describes how you could publish your InterSystems application on Open Exchange. What is the InterSystems application? It could be anything, which is built with InterSystems data platforms or to help work with InterSystems data platforms: InterSystems IRIS, InterSystems IRIS for Health, InterSystems HealthShare, InterSystems Ensemble and InterSystems Caché. This could be tools, frameworks, adapters, examples and business solutions. Why publish on Open Exchange? InterSystems Open Exchange is an "App Central" for the solutions in InterSystems. It's the first place where the developer goes to look for tools, frameworks, and examples on InterSystems IRIS. And Open Exchange brings the added traffic to your solution which could be converted into leads. We are having a set of business development tools for published Open Exchange applications. This definitely makes your InterSystems application more noticed. Submitting an application Suppose you have a library with open source published on Github which you want to publish on Open Exchange. For the purpose of a demo, I'll fork this remarkable project of @Peter Steiwer ObjectScript-Math which I forked and renamed to object script-super-math. #Tutorial #Open Exchange 1 2 0 376
Article Evgeny Shvarov · Jan 9, 2020 2m read InterSystems Open Exchange: How to use it? Hi Developers! Recently we updated the design of Open Exchange and I want to describe how you can find the solutions you are interested in. Applications Catalog The first thing you see is the catalog of published applications, tools, and solutions. #Release #Tutorial #Open Exchange Open Exchange app 0 0 0 405
Announcement Evgeny Shvarov · Jan 3, 2020 InterSystems Open Exchange December 2019 Digest Hi Developers! This is the digest of new solutions and applications submitted to InterSystems OpenExchange in December 2019! New applications in December 2019 ObjectScript-Math Math library for InterSystems ObjectScript Author: @Peter Steiwer , OEX Profile JSONExportManyToMany Sample for %JSONExport against a class with Many to Many Relationship Author: @Peter Steiwer , OEX Profile InterSystems ObjectScript zpm-registry Server-side hosting service for ObjectScript packages installable via ZPM client. Author: @Evgeny Shvarov, OEX Profile Publisher: InterSystems Corporation SUDOKU SUDOKU game written in InterSystems ObjectScript Author: @Robert Cemper, OEX Profile Portlet Samples Sample DeepSee Portlets showing different ways to implement custom widgets Author: @Peter Steiwer , OEX Profile Advent of Code ObjectScript Docker Template A simple template to craft Advent of Code with ObjectScript in InterSystems IRIS Author: @Evgeny Shvarov, OEX Profile Ingestion Speed TestShows how IRIS can ingest thousands or millions of records per second while allowing for queries on the same cluster. Works on a single IRIS instance or on an IRIS cluster on the cloud. Author: @Amir Samary, OEX Profile John Conway's Game of Life With this class, you could simulate Game of Life world that John Conway invented in 1970. We can see how John Conway universe evolves in our terminal Author: @Jose-Tomas Salvador, OEX Profile #Digest #Open Exchange 2 0 0 157
Announcement Evgeny Shvarov · Jan 2, 2020 InterSystems Developers Community Release, January 2020 Hi Developers! Happy New Year! And I'm pleased to share the notes on the new DC Release. What comes? New design for Articles Voice over for Articles Format painter feature for editor New private messages informer, Github profile and other minor enhancements See the details below, here we go! #Release #Developer Community Official 1 2 0 302
Question Evgeny Shvarov · Dec 26, 2019 How to Make One Docker Container See The Web Service of Another One? Hi Developers! I stuck with one interesting problem. For example, let's use this template repo. If you build this container A using docker-compose and then run the container it exposes REST-API which is available on: localhost:52773/person/all The question is how to make this REST-API accessible from another docker container B running on the same machine? E.g. with IRIS 2019.4 Community from this repo? The problem is that for the second container localhost it's something which belongs to container B. I think I need to set up a network between containers somehow. E.g. using docker-compose. But is there any simpler way? #Containerization #Docker #REST API #InterSystems IRIS 0 2 0 333
Discussion Evgeny Shvarov · Dec 24, 2019 New Articles Look and Feel: Do You Like It? Hi Developers! Recently we updated the look and feel of articles on DC: The font is bigger, with no ads on aside. Articles look like that now: The intent was to make reading process for articles more focused cause sometimes we want to share a deeper thought with article and this needs more concentration and less distraction. Do you like it? Share your thoughts, please? #DC Feedback 1 1 0 263
Announcement Evgeny Shvarov · Dec 3, 2019 ObjectScript Package Auto Publishing is Now Available on Open Exchange! Hi Developers! I'm pleased to announce that ObjectScript package publishing is now generally available on Open Exchange with this November 2019 release! If you want your ObjectScript application to be published in ObjectScript Package Manager just enable "Publish in Package Manager" option: And send the app on approving. Once the application is approved it will be published automatically in ObjectScript Package Manager Registry and will be available for installation via ZPM client. See the details below. #InterSystems Package Manager (IPM) #Release #Open Exchange Open Exchange app 4 5 2 543
Announcement Evgeny Shvarov · Dec 2, 2019 ObjectScript Template for Advent Of Code 2019 and InterSystems IRIS in Docker Hi Developers! For those who want to participate in the Advent of Code 2019 and code with ObjectScript in IRIS, I created a very simple but handy Github Template. Use the green button to copy template in your own repo, clone the repo and run in the repo folder: docker-compose up -d you will get InterSystems IRIS 2019.4 Community Edition running with the template classes to load input data from files and Day1 solution. This is also set up to start crafting solutions of Advent of Code 2019 and edit, compile and debug ObjectScript with VSCode addon. Happy coding with Advent of Code 2019! #Contest #Docker #ObjectScript #InterSystems IRIS #Open Exchange Open Exchange app 0 0 0 297
Announcement Evgeny Shvarov · Dec 2, 2019 InterSystems Open Exchange November 2019 Digest Hi Developers! This is the digest of new solutions and applications submitted to InterSystems OpenExchange in November 2019! New applications in November 2019 BridgeWorks VDM by Tony Coffman BridgeWorks VDM is an ad hoc reporting and graphical SQL query application. #Digest #Open Exchange 0 0 0 162
Announcement Evgeny Shvarov · Dec 2, 2019 InterSystems Developers Community Release, December 2019 Hi Developers! Here is what's we introduced in Developers Community features and UI last month: Pinned topics for main feed and tags; One-click unsubscribe option in every email we send; A 'new' indicator for the posts and comments; Notification of changes made by moderators; Articles without translation don't show 'access denied' anymore. See the details below! #Release #Developer Community Official 0 0 0 298
Article Evgeny Shvarov · Nov 21, 2019 7m read Describing a module.xml for ObjectScript Package Manager Hi Developers! As discussed in previous parts of Package Manager stories to turn your IRIS application into a deployable package you just need to introduce the module.xml file into the root folder of the repository and describe all the resources. I’m pleased to introduce you to a new project template on Open Exchange which contains examples of how to make different types of resources of your InterSystems IRIS application a part of the ObjectScript package and so make the deployable ObjectSctipt package. Let's see how you can describe your application resources using this template project as an example. See the details below. #Deployment #ObjectScript #InterSystems Package Manager (IPM) #InterSystems IRIS #Open Exchange Open Exchange app 5 2 7 605
Article Evgeny Shvarov · Nov 19, 2019 1m read Recurse Parameter for REST API Applications in InterSystems IRIS Hi developers! I just want to share with you the knowledge aka experience which could save you a few hours someday. If you are building REST API with IRIS which contains more than 1 level of "/", e.g. '/patients/all' don't forget to add parameter 'recurse=1' into your deployment script in %Installer, otherwise all the second and higher entries won't work. And all the entries of level=1 will work. /patients - will work, but /patients/all - won't. Here is an example of CSPApplicatoin section which fix the issue and which you may want to use in your %Installer class: <CSPApplication Url="${CSPAPP}" Recurse="1" Directory="${CSPAPPDIR}" Grant="${RESOURCE},%SQL" AuthenticationMethods="96" /> #CSP #Deployment #REST API #Caché #InterSystems IRIS 2 0 1 288