ClearSQL 6 - PL/SQL analyzer, formatter, diagrammer and editor
Edit, format, analyze and fix your Oracle PL/SQL code imported from Oracle databases, SQL scripts or Oracle Forms into
ClearSQL projects. Count metrics and enforce coding standards.
ClearSQL 6 is a full-blown code analyzer and editor for legacy
code maintenance. Analyze declarations, exceptions and the control flow. Remove anomalies. Fix and format your PL/SQL
automatically. Flowchart legacy code to discover the logic, and visualize the conditional branches, loops and jumps,
in order to see the visual patterns of your code. Generate Call Tree diagrams and CRUD matrices to discover data flows
between subroutines and dataset objects due to DML statement execution and consistency of functional requirements and to
identify performance problems.
Key features
Analyze PL/SQL code
ClearSQL 6 performs declaration analysis, DML analysis, cursor analysis, control flow analysis, procedure analysis, exception analysis and module analysis and displays the results in a Structure View, facilitating quick navigation through your code. Script Parser Status displays the status (New, OK, Error, Skipped and Modified) of the script and for the OK status, its attributes such as: Autofix, Code Review, CRUD1 matrix, Flowchart and Call Tree diagrams.
Automated code review
Catch bugs early in the development cycle and avoid common mistakes. Produce code that is easy to read, understand and maintain. The nearly 60 code review rules detect the misuse of GOTO, parameter declaration problems, unreferenced parameters, missing or misplaced RETURN, unlabeled END, etc.
Auto fix known PL/SQL problems
ClearSQL 6 adds missing END and LOOP labels, defines IN parameters and re-parenthesizes complex operations.
Support for PL/SQL of Oracle Forms
ClearSQL 6 support for PL/SQL code of Oracle Forms versions 6 - 10. Import Oracle forms and PL/SQL libraries into a
ClearSQL project and analyze, format, fix and illustrate their PL/SQL code. Drill down the project tree to discover the content of forms & libraries such as Blocks, Program Units, Triggers as well as graphically shown canvases.
Project analysis summary
Select the project root node in the Project Tree and take a look at the Summary page to discover the most important analysis information shown graphically as pies, bars and grids at a project level. Drill down the project folders/scripts to see the “Summary” at a folder/script level. The Summary page displays: the number of folders and scripts and their statuses (“OK”, “Error”); the number of CRUD matrices, Flowcharts and Call Tree diagrams; the total number of lines of code and comments; the total value of Cyclomatic Complexity as well as grouping by method/class/script; a list of top complex objects; a list of Code Metrics per method and more. The Summary page layout is fully customizable and its contents can be easily exported to HTML or printed out.
Project analysis history
ClearSQL 6 tracks changes to the project content and analysis information at a project or script level. Each analysis creates a new “snapshot” storing a full “picture” about the project contents and its script analysis values in categories such as: the number of folders and scripts and their statuses (“OK”, “Error”, “Skipped”); the number of CRUD, Flowchart and Call Tree diagrams; the number of alerts such as errors, autofixes, etc.; the number of lines of code, comments and blank lines; etc. The “Analysis History” page displays analysis “snapshots” indicating the negative or positive direction of the value change. Select one or more categories to draw diagrams of changes to analysis values. Analysis history content can be easily exported to HTML or CSV formats.
Automated project and database analysis (command line support)
ClearSQL 6 automates analysis of
ClearSQL projects via its scheduled jobs or third party schedulers or Windows Command Line. Create a job for analysis of an existing project or a selection of online database objects and schedule it either in
ClearSQL 6 by creating one or more integrated schedules or save the job as a batch file and start it using a third party scheduler. Each job is fully customizable in terms of analysis, GUI and Code Analyzer options and allows, after analysis, the generation of a detailed
ClearSQL project report.
Format your code automatically
Set margins and indentation. Insert blank lines. Apply standard casing to keywords and identifiers. Tidy up procedure headers. Align SQL statements.
Flowchart diagrams
ClearSQL 6 takes a package or a stand-alone subroutine and makes a set of clickable flowchart diagrams that visualize the code execution path. Such diagrams show the conditional branches, loops and jumps, thereby helping to understand the opaque logic. The visual patterns help to find the points of possible code refactoring or module restructuring, and make the reasons for high values of Cyclomatic Complexity metrics obvious.
Call Tree diagrams
ClearSQL 6 draws subroutine calls and called-by path of PL/SQL code in call tree diagrams. As PL/SQL is heavily coupled with data, the call tree diagram is enriched with data flows between subroutines and database tables due to DML statement execution. Clickable data flows show how subroutines get data from data objects (table, view) with SELECT INTO statements; how they put data back with INSERT or UPDATE statements and how they delete data with DELETE statements.
CRUD matrices
A CRUD (Create, Read, Update, Delete) matrix is the perfect aid to analyze the consistency of functional requirements and to identify performance problems. CRUD incorporates two matrix types: "Script Level" CRUD1 type matrix and "Project Level" CRUD2 type matrix to illustrate the relationships between processes and the data they use. Both CRUD matrix types are fully clickable.
Export and Import projects, project scripts and project diagrams
Export and import a project with its contents as a flat zipped file with an ability to send it by email for simplified sharing of multi-file projects between users. Export and import a single or multiple project scripts with a variety options into the file system as files. Export a single or multiple project flowcharts and call tree diagrams into image (GIF, PNG and JPEG), MS Visio Drawing "vdx" and HTML formats with the ability to keep the diagram tree structure in the target Windows folder.
Metrics
Determine the complexity of your system. Identify potential problem areas based on complexity, size and modularity. Available metrics: lines of code (LOC), effective LOC, logical statements LOC, comment lines, blank lines, physical lines, McCabe cyclomatic complexity v(G), number of input parameters, number of return points, interface complexity, functional complexity, Halstead Program Length, Vocabulary, Volume, Difficulty and Effort, and Maintainability Index.
Enforce coding standards
Improve readability and standardize code written by others. Enforce naming standards with regular expressions.
Project reports
Generate a detailed, easy to navigate and flexibly configured HTML report for a
ClearSQL project including parser status, analysis information, flowchart and call tree diagrams, CRUD1 and CRUD2 type matrices.
Code editor with syntax highlighting
The syntax-highlighting and code folding editor supports SQL and PL/SQL code and allows to create different versions of the same code. It provides power features such as code folding, code explorer, bookmarks, comment out and uncomment a block of code, auto completion and code templates.
More significant features
- New Project Wizard creates ClearSQL 6 projects based on files and db objects easily with a few clicks.
- Project Tree Manager filters and sorts the project scripts by a variety of predefined filters and sorting rules; and also displays script properties and legend.
- Built-in Version Control System manages multiple versions of scripts for easy change tracking and retrieval.
- Pre-processor directives let you generate different versions of the same code and include/exclude debug code.
- Syntax Checker verifies your PL/SQL syntax offline without executing it in Oracle.
- Active workspace enables full blown customization of the position, size and visibility of GUI elements.
- Toolbar Customizer provides an easy to use GUI to customize the visibility and position of toolbar buttons.
- Find in Project lets you search any text occurrence in scripts and project tree nodes.
- Logs on to an Oracle database by using TNS, LDAP and Direct connections and remembers last connections.
- Online Support Desk communicates with Technical Support and keeps ClearSQL 6 up-to-date with its auto-update feature.
Conquest Software Solutions offers the powerful Command Line Kit to extend the reach of ClearSQL 6.
It automates analysis of ClearSQL projects and database objects via its scheduled jobs or third
party schedulers or the Windows Command Line.