Tools

Syndicate content 15 

image

The InterSystems DBMS has a built-in technology for working with non-structured data called iKnow and a full-text search technology called iFind. We decided to take a dive into both and make something useful. As the result, we have DocSearch — a web application for searching in InterSystems documentation using iKnow and iFind.

Last comment 1 April 2019
+ 8   0 8
724

views

+ 8

rating

I'm sure most of you have already familiar with the possibility of using GZIP in InterSystems products. But, the problem is that GZIP working only with one file or stream, and it does not support folders. When you work in Unix systems, there is a possibility how to solve it, using tar compress tool which goes with every Linux system from out of the box. But what to do if you have work on Windows as well, which does not have it. 

I am pleased to offer you my new project isc-tar, which will help you do not care about operating system, and deal with tar files anywhere.

Last comment 18 March 2019
+ 6   4 2
213

views

+ 6

rating

Greetings, InterSystems community!

I am pleased to announce that the web terminal project, Caché WebTerminal version 4 gets its release! After long period of enhancing this web application from 2013, it came to the version 4, which features major stability and security improvements, intelligent autocomplete and syntax highlighting, convenient SQL mode and a lot of other useful features.

The goal of this article is to spread the knowledge about this project over the InterSystems community.

Last comment 26 February 2019
+ 15   2 8
1673

views

+ 15

rating

Hi,

This is a quick tutorial how to install and use TFS in Atelier. It is based on my self experience and some tricks that I 've noted.

If you are used to using visual studio maybe you feel that is a bit slow and heavy, but you have the same TFS panel as you have in Visual Studio, so don't need any special "training" to use it smiley

It's important don't store the file .buildpath because it has the server definition that you are working in a team, each one have the personal configuration, so the name of the server could be different.

To prevent it, create a file called .tfignore with this conten

Last comment 15 February 2019
+ 12   1 8
742

views

+ 12

rating

Can someone tell me if /deepsee-sysmon-dashboards is developed for a specific version of Ensemble? Looks like it could be useful to my group but we aren't upgrading till later this year and we are on 2015.2.2.

Thanks

Scott

Last answer 7 January 2019
0   2 1
0

comments

74

views

0

rating

In this article I'll show you how you can easily convert between many different document formats, these to be precise:

  • in: html, odt, doc, docx, rtf, sdw, txt...
  • out: html, odt, docx, rtf, pdf, txt, tex, xhtml...

and many more, check out this table. We'll use LibreOffice as a conversion engine.

Last comment 21 December 2018
+ 8   4 8
1552

views

+ 8

rating

Is anyone in the fine community of developers who work with ISC technologies looking at Microsoft's Visual Studio Code offering?

One of Bill McCormick's recent posts about Atelier referred to Visual Studio being considered the best IDE. Granted, Code is far less of a tool than VS, and probably always will be. But it claims to be open source and cross-platform, i.e. Linux and OS X as well as Windows.

I'm not 100% sure my post belongs in the Atelier group, but didn't see any other group that would be a better home.  Might we benefit from a "Tools" group?

Last comment 27 November 2018
+ 8   3 15
3196

views

+ 8

rating

Hi All,

Is anyone using Veritas NetBackup 8.1 to backup Caché database? DB is on Linux 7.4 on host running VMware ESXI 6. Size of DB is about 1.5TB. Any advice on integrating with freeze/thaw.

Happy pro provide more info if needed.

Thanks in advance,
Ashish

Last answer 20 September 2018 Last comment 21 September 2018
0   0 2
158

views

0

rating

Hello community!

At the global summit in Phoenix, we (Lite Solutions) will be presenting a tool performing static code analysis on ObjectScript source files. You can see it in action at this URL:

https://demo.cachequality.com

Technically, the tool is a language plugin over SonarQube (http://sonarqube.org) and consists of three main parts:

  • parsing the language,
  • collecting metrics,
  • collecting issues.

The third point is where we kindly request for feedback.

Explanation: issues are the result of rules being triggered by inspecting the source files. But while we do have some experience with the language, this experience is too "fresh" for us to accurately estimate the severity/time to fix of such issues. The list of rules, along with their severity and time to fix can be found here

Last answer 5 April 2016 Last comment 28 August 2018
+ 5   1 7
909

views

+ 5

rating

As a developer, usually I'm concerned about how my code health is, and how the other coders code can affect to my own work.  And I'm quite sure most of us feel very similar.

In our company we use a Static Code Analysis tool to analyze code for different languages to ensure we are writing high quality and easily maintainable code by following a few best practices in terms of code structure and content. And the question was: why should be different for Caché ObjectScript language?

Last comment 1 August 2018
+ 6   4 4
538

views

+ 6

rating


Hello!

This article is a small overview of a tool that helps to understand classes and their structure inside the InterSystems products: from IRIS to Caché, Ensemble, HealthShare.

In short, it visualizes a class or an entire package, shows the relations between classes and provides all the possible information to developers and team leads without making them go to Studio and examine the code there.

If you are learning InterSystems products, reviewing projects a lot or just interested in something new in InterSystems Technology solutions — you are more than welcome to read the overview of ObjectScript Class Explorer!

Last comment 3 July 2018
+ 17   1 11
3076

views

+ 17

rating

In this article I would like to present the RESTForms project - generic REST API backend for modern web applications.

The idea behind the project is simple -after I wrote several REST APIs I realized that generally, REST API consists of two parts:

  • Work with persistent classes
  • Custom business logic

And, while you'll have to write your own custom business logic, RESTForms provides all things related to working with persistent classes right out of the box.
Use cases

  • You already have a data model in Caché and you want to expose some (or all) of the information in a form of REST API
  • You are developing a new Caché application and you want to provide a REST API
Last comment 17 May 2018
+ 12   3 8
3059

views

+ 12

rating

This is the first article of a series diving into visualization tools and analysis of time series data. Obviously we are most interested in looking at performance related data we can gather from the Caché family of products. However, as we'll see down the road, we are absolutely not limited to that. For now we are exploring python and the libraries/tools available within that ecosystem.

The series is closely tying into Murray's excellent series about Caché performance and monitoring (see here) and more specifically this article

+ 9   1 5
1002

views

+ 9

rating

Database Blocks Explorer for InterSystems Caché

Key features

Tree explorer
  • Shows tree of database blocks;
  • Export tree as SVG or PNG image;
  • Shows every node in the block;
  • Open any block just by clicking on node in parent block;
  • Reload block info by clicking at the same node second time;
  • Zoom in and out, fit and navigator;
  • Easy way to switch between view modes (tree/map);
Fragmentation map
  • Shows every block with the same colour for every globals;
  • Legend for globals;

Installation

Minimal supported version is 2015.3 or 2016.1.

Just import xml file, in any of your namespaces by Studio or in any other way, with compilation, user should have an access for creating web applications. And then you can open that application by link http://localhost:57772/blocks/ (just check your host and port)

Last comment 4 January 2018
+ 7   0 3
248

views

+ 7

rating

If you have to fill or change your class data other than by standard object filer or SQL filer
you also have to get your indexes in line with your data.
Rebuild Index might be time consuming exercise eventually blocking access at all.

I just detected ##class(%Library.Storage).%ValidateIndices()

Not really new, but in 2015.1.1 ,  2016.2.1 there was not a single character of documentation to it.
Now I see on latest

http://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?P...

Last comment 14 November 2017
+ 6   0 8
576

views

+ 6

rating

Hi,

I know you're doing a big effort to build a new IDE in Eclipse ecosystem but Visual Studio Code is a new an even better and faster tool for coding... did you have any plans to release any COS extension for it in the near future? There you can already find extensions for all current more common progrmaming languages and it would be great to have COS as one of them.

Thanks

Last answer 16 October 2017 Last comment 31 October 2017
+ 2   0 1
900

views

+ 2

rating

One of the most important features during application development is the ability to debug your code easily. Because of the asynchrnous nature, a standard Node.js application server works single-threaded by default. When you are developing applications using an IDE like Visual Studio Code, you can very easily debug your Node.js process:

First, download the free Visual Studio Code IDE (@code) and install it on your development machine.

We will start with basic debugging using a very small test.js file and go to the debug view:

You'll notice we need to define a debug configuration first (at the top, click on "No configurations" and select "Add configuration". You'll see a "launch.json" file is created and select "Node.js: launch program":

+ 3   0 2
0

comments

941

views

+ 3

rating

This 'feature' have been around for a long time, but I don't see any articles on it so I thought I would make everyone aware.

A method is provided to customize the appearance of the Cache cube icon in the system tray so different instances can be visually distinguished.  When csystray.exe, the Cache/Ensemble cube program, starts, it will look for files named "up.ico" and "down.ico" in the \bin directory below the instance installation directory.  If these .ico files are present, csystray.exe will load the icons and display them in place of the default blue and gray Cache/Ensemble cube icons.  These files should each contain a single small (16x16) icon.

In order for the change to take affect, you need to exit the cube and then start it again from the Start menu (note - obviously this only works on Windows as the Cube doesn't run on other platforms)

Last comment 7 September 2017
+ 14   0 9
466

views

+ 14

rating

Hello everybody.

What I have is a criteria how to select "my" strings. What I need is to replace all of them with macro calls (using the same strings as arguments) in all classes of current namespace.

I was ready to write straightforward code, but at the last moment decided to ask the community: maybe I've overlooked a smarter option?

Any comments and advices would be great appreciated.

Last answer 28 August 2017 Last comment 29 August 2017
+ 1   0 3
258

views

+ 1

rating

In this short article we talk about how to get Yape running in a docker container to avoid having to setup python on your machine.

It's been a while since the last article in this series, so let's recap quickly.

We talked about using matplotlib to create a basic graph. Afterwards we introduced dynamic graphs using bokeh.
In the 3rd part we talked about generating heatmaps using monlbl data

Last comment 7 August 2017
+ 5   0 3
435

views

+ 5

rating

You might find it useful or not. It depends on what you can imagine it to be used with, like I had to.

Either way, I created a lib that can fetch environment variables from a file or from the OS where Caché is running.

Mostly know as dotenv. Many languages have it, so why not Caché?

The usage is pretty simple:

If you want to use OS env vars exclusively, just use the method:

##class(DotEnv.Parser).FromOS()

Otherwise, if you want to specify a .env file containing your variables to complement the OS ones use the method:

##class(DotEnv.Parser).FromPath("/path/to/file")

Both methods return an %ArrayOfDataTypes containing the env variables.

Last answer 11 July 2017 Last comment 11 July 2017
+ 1   0 1
211

views

+ 1

rating