Article Yuri Marx · Jan 29, 2021 1m read

With https://openexchange.intersystems.com/package/IRIS-Publisher, you can document your IRIS Application and gererate the Application Documentation Web Portal (responsive). See the results:

Main Page:

Classes Menu and Class Page: The class page with class documentation, the list of methods and properties.



Navigation and Search bar: 

Search dialog:

About page: your contacts

Change the theme:

1
1 337
Article Yuri Marx · Jan 25, 2021 2m read

Hi Community,

In the past, technical documentation of the source code and software products was generated in chm, pdf files and documentation generators of the programming languages themselves. This old approach had the following limitations:
1. Outdated documentation;
2. Non-interactive and difficult to consult documentation;
3. Layout unresponsive, unfriendly and not adherent to HTML;
4. Inability to customize the layout of the documentation;
5. Inability to have HTML 5 documentation online and offline.
6. Lack of Markdown support.

5
0 726
Article Yuri Marx · Jan 25, 2021 3m read

The ObjectScript language of InterSystems IRIS has a very powerful metadata engine called XData. This feature allows the creation of metadata definitions for your classes, to be used by the compiler or by programs that will extend the standard features of the language, based on the XData definitions of its scope.

An example is IRIS Publisher, an Open Source application from the community capable of collecting all XData definitions in HTML and / or Markdown format and generating a Web Portal with all the application documentation assembled from these XData elements.

0
0 491
Article Yuri Marx · Jan 20, 2021 1m read

Sometimes it is necessary to execute commands from the shell of the host operating system, where your ObjectScript program is located, to launch programs, operating system services, schedule crontasks, among other activities. For this, the language has a utility procedure called $ZF(-100). See:

$ZF(-100,flags,program,args)

Where flags is the type of command you want to execute. In our case, the flag is "/ SHELL", to execute shell commands on the host operating system.

Program is the name of the program or service to be executed.

Args are execution arguments passed to the program.

2
2 1217
Article Yuri Marx · Jan 16, 2021 3m read

Hi InterSystems Community!

The ObjectScript language of InterSystems IRIS has the ability to extend classes using a very interesting feature called XData.

It is a section in your class that can be used to create custom definitions to be used within the class itself and also externally.

To create one or more XData definitions for your class is very easy, see the example:

Classdc.Sample.PersonExtends(%Persistent,%JSON
2
0 556
Article Yuri Marx · Jan 12, 2021 3m read

Hi Community,

In this article I compared the features of the main leaders in the ODBMS gartner quadrant - 2019. See the list sorted by number of existent features.

  1. InterSystems IRIS 2020.3 - 59 features (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls)
  2. Oracle Database 21c - 54 features (https://docs.oracle.com/en/database/oracle/oracle-database/index.html)
  3. Microsoft SQL Server - 45 features (https://docs.microsoft.com/en-us/sql/sql-server/?view=sql-server-ver15)
  4. AWS Aurora - PostgreSQL - 34 features (https://docs.aws.amazon.
4
1 658
Article Yuri Marx · Jan 4, 2021 2m read



Big Data 5V with InterSystems IRIS

See the table below:

Velocity: Elastic velocity delivered with horizontal and vertical node scaling
Enablers
: Distributed memory cache, Distributed processing, Sharding and Multimodel Architecture
https://www.intersystems.com/isc-resources/wp-content/uploads/sites/24/… and https://learning.intersystems.com/course/view.php?id=1254&ssoPass=1
Value: exponential data value produced by Analytics and IA
Enablers
: BI, NLP, ML, AutoML and Multimodel Architecture
https://docs.intersystems.
0
1 611
Article Yuri Marx · Dec 27, 2020 2m read

The InterSystems IRIS has two major paths to a digital service: API/Web Service into Interoperability module and multimodel Database/Analytics. Each of them has your security configuration.

To do API security you apply an OAuth or JWT plug-in to the API endpoint. So in the Admin Portal, API producer and consumers get the keys to authenticate the API and consume it. The Admin Portal allows you configure RBAC policies too.

To do WS security the best strategy is to use SAML. In the inbound/outbound SOAP message, include X.

0
3 478
Article Yuri Marx · Dec 24, 2020 3m read

The InterSystems IRIS has a very nice container class to allows you have your Dashboards as classes source code. It is %DeepSee.UserLibrary.Container.

With this class is possible group all your dashboard and pivot table definitions.

This is useful to automatically create your dashboards when you build your docker project and other automation scenarios.

See:

Classdc.WebsiteAnalyzer.WebsiteAnalyzerBIContainerExtends%DeepSee.UserLibrary.Container

{


 

XDataContents[XMLNamespace="http://www.intersystems.com/deepsee/library"]

{

<items>

<dashboardxmlns="http://www.intersystems.
4
1 311
Article Yuri Marx · Dec 23, 2020 6m read

Web Crawling is a technique used to extract root and related content (HTML, Videos, Images, etc.) from websites to your local disk. This is allows you apply NLP to analyze the content and get important insights. This article detail how to do web crawling and NLP.

To do web crawling you can choose a tool in Java or Python. In my case I'm using Crawler4J. (https://github.com/yasserg/crawler4j).

Crawler4j is an open source web crawler for Java which provides a simple interface for crawling the Web. Using it, you can setup a multi-threaded web crawler in few minutes.

0
1 948
Article Yuri Marx · Dec 22, 2020 1m read

Hi community, I used website-analyzer - an app that uses InterSystems NLP and Crawler4J to extract all website content and do NLP on it. I limited to 200 pages and discovered this:

Top 10 Concepts - business and content topics in the InterSystems site:

Other frequency concepts, see the focus in the iris speed, scale and data value:

Top 10 Concept Dominance - business relations in the InterSystems site.

0
2 299
Article Yuri Marx · Dec 21, 2020 2m read

Today, is important analyze the content into portals and websites to get informed, analyze the concorrents, analyze trends, the richness and scope of content of websites. To do this, you can alocate people to read thousand of pages and spend much money or use a crawler to extract website content and execute NLP on it. You will get all necessary insights to analyze and make precise decisions in a few minutes.

Gartner defines web crawler as: "A piece of software (also called a spider) designed to follow hyperlinks to their completion and to return to previously visited Internet addresses".

3
3 419
Question Yuri Marx · Dec 8, 2020

Is it possible see the execution plan of a SQL sentence in IRIS?

Like this:

explain plan for
select  e.ename,r.rname
from    employees  e
join    roles       r on (r.id = e.role_id)
join    departments d on (d.id = e.dept_id)
where   e.staffno <= 10
and     d.dname in ('Department Name 1','Department Name 2');

That returns this:

3
1 518
Question Yuri Marx · Dec 6, 2020

In Oracle database, the synonym is an alternative name for objects such as tables, views, sequences, stored procedures, and other database objects.

You generally use synonyms when you are granting access to an object from another schema and you don't want the users to have to worry about knowing which schema owns the object.

Is IRIS SQL sintax has something like this: (oracle sintax)

CREATE PUBLIC SYNONYM suppliers
FOR app.suppliers;

This first CREATE SYNONYM example demonstrates how to create a synonym called suppliers

1
0 254
Question Yuri Marx · Dec 5, 2020

Languages like Java and C++ allows to develop a multi-threaded program with two or more parts that can run concurrently and each part can handle a different task at the same time making optimal use of the available resources specially when your computer has multiple CPUs. Is it possible In ObjectScript? If yes, Where I can get a good sample or application?

5
0 1040
Article Yuri Marx · Nov 25, 2020 1m read

Hi Community,

I use an excellent service to collect time programming. Is the WakaTime: https://wakatime.com/.

This service integrate with main IDE tools, including VSCode and collect time spent by project, language, IDE and code stats at general. See my last 7 days:

These information help me to organize and balance my targets by project.

To use Waka signup the service: https://wakatime.com/signup and into your VSCode, into extensions search waka, see:

Restart your VSCode and now input your api key, you can get your api key into https://wakatime.com/settings/account.

3
2 481
Question Yuri Marx · Nov 24, 2020

Hi community!

Is it possible generate HTML documentation to my project ObjectScript classes (.cls)?

In Java we use Javadoc to do it. Javadoc get class comments and java metadata information and when I execute javadoc -d doc src\*, I get whole html documentation to my classes. Has IRIS something like javadoc? Is it documatic? If yes, how can I use it?

12
2 870
Article Yuri Marx · Nov 20, 2020 2m read

According IDC, 80% of all data produced are NoSQL. See:

There are digital documents, scanned documents, online and offline texts, blob content into SQL, images, videos and audio. Imagine a Corporate Analytics initiative without all these data to analyze and support decisions?

In all the world, many projects are using techonologies to transform these NoSQL data into textual content, to allows analyze it.

0
2 346
Article Yuri Marx · Nov 19, 2020 5m read

According to IDC, more than 80% of information it is NoSQL, especially text into documents. When the digital services or applications not process all this information, the business lose. To face this challenge, it is possible use OCR technology. OCR uses machine learning and/or trained image patterns to transform image pixels into text. This is important, because many documents are scanned into images inside PDF, or many documents contains images with text inside. So OCR are an important step to get all possible data from a document.

3
2 672
Article Yuri Marx · Nov 18, 2020 7m read

PEX is a new InterSystems IRIS feature to allows extends IRIS with existent features from Java or .NET.

It is possible create interoperability inbound and outbound adapters, business services (integrate from external to internal) and operations (integrate internal to external).

To create a PEX component it is necessary import .NET (InterSystems.EnsLib.PEX.*) or Java (com.intersystems.enslib.pex.*) packages and extends or implements the properly class.

In this article I will use my OCR Service.

2
2 586
Article Yuri Marx · Nov 14, 2020 8m read

The InterSystems IRIS can be extended using Java or .NET components and its frameworks inside Object Script source code.

I created an application called OCR Service It built with Docker and installs Google Tesseract inside docker instance configured with english and portuguese dialects, but is possible install more than other 100 dialects. Google Tesseract can receive images and return text extracted from it, using OCR. The results are very good with the trained dialects. But you can train Tesseract to read car plates and any other textual patterns and load it to extract text.

8
2 1545
Article Yuri Marx · Nov 10, 2020 5m read

The productions are components developed with InterSystems IRIS Interoperability module to promote integrations between systems, data sources/targets, web services, API, message channels, etc. Productions are composed by:

1) Business services to get/ingest/get data events or requests;

2) Business operations to send or persist data to repositories, systems, API, web services, etc; and

3) BPL - BPEL flows to orchestrate, mediate, compose and route data from business services to business operations.

0
2 752