Raincode Insight


Version 4.2.490.0

1. Introduction to Raincode Insight

Raincode Insight is a Power BI desktop-based data visualization and analysis tool. It provides users with an interactive and creative dashboard for the repository of the raincode legacy compilers. For more details, see Raincode Legacy Compilers artifacts repository

1.1. Prerequisites

  • SQLite ODBC Driver: To load the SQLite Database in Raincode Insight, user has to install SQLite ODBC Driver

SQLite ODBC Driver is available at http://www.ch-werner.de/sqliteodbc/
  • Desktop version of Power BI

Desktop version of Power BI is available at https://powerbi.microsoft.com/en-us/downloads/
  • Raincode Insight requires a previously installed version of Raincode Legacy Compilers and Tools and Raincode Batch.

1.2. Create Raincode Insight compatible DB3 file

  • Execute script PrepareRaincodeInsight.ps1 placed at C:\Program Files\Raincode\Compilers\scripts\Repository to create the Raincode Insight compatible DB3 File.

2. Load Database in Raincode Insight

Follow the steps mentioned below to load the database in the Raincode Insight:

  • Double click on the Raincode Insight template (RaincodeInsight.pbit). A pop-up will appear on the main window.

image001
Figure 1. Pop up screen
  • Provide the path to the DB3 database from the Raincode compiler in db3datasource text box and click on Load

image002
Figure 2. Path to DB3 Database
  • A progress pop-up window with the status of the loading of the database will appear.

image003
Figure 3. Progress pop up window
If the system issues ODBC-related error messages while loading the database, it is likely that your ODBC driver has not been installed properly or at all.
  • Once the database is loaded, the Raincode Insight dashboard will be available to the user.

image004
Figure 4. Raincode Insight dashboard
  • Save the Raincode Insight template: Select File→Save and provide a name and location in Save As window and click Save.

image005
Figure 5. Save Raincode Insight

3. User interface

The user interface of the Raincode Insight provides three basic views:

  • Report view: The dashboard gets created in this view.

reportview
Figure 6. Report view

Dashboard consists of the following tabs:

2 Errors

3 Calls

4 CICS

5 JCL

6 SQL

9 Graph

  • Data view: Provides preview of the data.

dataview
Figure 7. Data view
  • Relationship view: Displays the relationship between various objects.

relationshipview
Figure 8. Relationship View
Be notified that any changes in the data and the relationship views would reflect in the report view.

4. Overview

This tab provides total number of programs available in the compilation repository. It also provides filters for programs.

image006
Figure 9. Overview Tab

4.1. Filters

  • Language : Filter the view as per the programming language.

LanguageFilter
Figure 10. Language Filter

For example, select COBOL as the language: the report view will filter all the data related to COBOL.

Reportviewcobol
Figure 11. Filtered data
  • Volume: Populate the details on total number of COBOL programs , PL/I programs and HLASM programs.

totalnoofprograms
Figure 12. Volume

It also provides the details such as Languages, Expanded, Non Expanded and total number of Programs.

  • Compilation result: Provides details of the error types.

compilationresults
Figure 13. Compilation result

Errors can be filtered:

  • By the error types: for example, when the error type is selected as 022-Compilation Error, the overview tab will populate data corresponding to the selected error type.

compilationerror
Figure 14. Report view compilation error
  • By the programming language and the error types: for example, select a COBOL programming language from the language filter and the error type as 034 Parsing error, the overview tab will populate the data corresponding to the filter applied.

reportviewfilter
Figure 15. Report view filters

User can hover over a data point in the report view to see the tooltip. This tooltip presents the values of the data point.

hover
Figure 16. Tool-tip

5. Errors

This tab provides the details of all types of errors.

image007
Figure 17. Errors Tab

5.1. Filters

  • Search error message

Type or select by drop down menu

search
Figure 18. Search error message
  • Language

LanguageFilter
Figure 19. Language
  • Log Levels

selecterror
Figure 20. Log Levels
  • Error types

typeoferrors
Figure 21. Error types
Option for the error filter on the top right corner of the report view would disappear, if No error is selected in the error filter.
  • Sorting

Errors can be sorted as per:

  • Error message

  • Language

  • Return Code

  • Count

  • Number of programs

filtererrors
Figure 22. Filtered Errors
In the above screenshot the errors have been sorted as per the number of programs.

6. Calls

This tab shows all the targets used in the portfolio.

image008
Figure 23. Calls Tab

It provides a call overview, which is a graphical interpretation of the call type.

graphcall
Figure 24. call overview

6.1. Filters

  • CICS , JCL, Verb, and Call Type.

callfilter
Figure 25. Call Filter
  • Search Target: drop down menu to search for a specific target.

searchtarget
Figure 26. Search Target

Call information can also be sorted by:

  • Call type

  • Count

  • Program count

  • Target count.

sortinformation
Figure 27. Sort information

7. CICS

This tab provides list of the CICS commands found in the portfolio.

image009
Figure 28. CICS Tab

7.1. Filters

  • Search CICS Command, Language, Unrecognized and 3270.

cicsfiltercontrol
Figure 29. CICS filter control
  • Commands WordCloud: shows frequently used keywords in the portfolio.

wordcloud
Figure 30. Command WordCloud

A Tooltip provides frequency of the keyword.

hoverinfo
Figure 31. Keyword hover information

By clicking a keyword, filtered CICS commands would appear.

filteredkeyword
Figure 32. Filtered CICS Command

Usage: populates program name, language and line number of CICS command. It appears when a keyword is clicked or any of the above-mentioned filters are applied.

Usage
Figure 33. Usage

8. JCL

This tab provides details of all the JCL. It populates the total number of JCLs, Program steps, Procedure steps (proc steps) and Data definitions (DDs).

image010
Figure 34. JCL Tab

Search JCL job from the Job Name drop down menu.

jcljob
Figure 35. Select Job name

A graph will populate for the selected job name. Program steps giving the information about program name, program parameters, prog cond, and sequence will also appear.

graphjcl
Figure 36. Graph and Prog Steps JCL job name

9. SQL

This tab lists all the SQL tables available in the portfolio.

image011
Figure 37. SQL Tab

Select any of the SQL table from the Search SQL Table option, a call graph for the selected SQL table will be populated in the Graph area.

graphsql
Figure 38. SQL Call Graph
Selected SQL table is denoted by the red dot.

9.1. Filters

SQL call graph can be further filtered by using Link Type and Depth.

linktype
Figure 39. Filters

10. Statistics

This tab provides general statistics of the portfolio.

image012
Figure 40. Statistics Tab

Statistics tab populates three types of graph:

  • Expanded Lines vs Object Size

expandedline
Figure 41. Expanded Lines vs Object Size
  • Input Lines vs Object Size

inputsize
Figure 42. Input Lines vs Object Size
  • Input Lines vs Static Size

staticsize
Figure 43. Input Lines vs Static Size

By analysing these graphs, users can clearly find the anomalies in programs.

A tooltip appears when the user hovers over the dots, which shows details about the program.

tooltipinfo
Figure 44. Tooltip Information

10.1. Filters

By Language, CICS command, and JCL steps

filters
Figure 45. Filters Type

By Search Program

Searchprogram
Figure 46. Search Program

11. Program Info

This tab provides all the information about the selected program.

image013
Figure 47. Program Info tab

11.1. Filters

Language, CICS command, JCL Steps and Compilation result.

filterprog
Figure 48. Filters ProgramInfo

Select a program from the table to get all the information about it. This tab provides the information about language, compilation errors, CICS command, Error messages, JCL job name and step name.

Proginfo1
Figure 49. Program details

This tab also populates a call graph, which can be further filtered through Link Type and Depth.

Proginfocalltree
Figure 50. Program Info Call Graph

12. Graph

This tab provides graphical representation of the portfolio.

image014
Figure 51. Graph tab

12.1. Filters

Language, Link Type , CICS and JCL.

graphfilters
Figure 52. Graph Filters

Filter types get updated based on the other selected filters. For example, selecting HLASM as language, link type filter will have only call option.

resetfilters
Figure 53. Reset filters

Call graph and table will also get updated.

updatedcallgraph
Figure 54. updated call graph

Appendix A: Lists of tables and figures in document