Working with the ClearSQL Project Tree

Following the learning curve, we keep introducing you to the virtues ClearSQL brings to PL/SQL developers. As we outlined in the Code Synchronization blog post, ClearSQL works with the three types of files: PL/SQL scripts, Oracle Forms & PL/SQL libraries, and Oracle database objects. These should be preliminarily imported to a ClearSQL Project and, if needed, synched with their sources.

Once the scripts get into the project, they are gathered into a hierarchically structured Project Tree.
Important: To start working with the scripts, run the Project Analysis first (that big green arrow, yeah). Only then will ClearSQL be able to build any information about the imported code. This is not done on the fly along with the Project creation.
After analysis, each script acquires its Parser status, shown next to scripts in the tree. Parser in this case means an engine that analyzes syntax of PL/SQL scripts.

Possible script statuses:
Error -- syntactic bugs detected.
New -- script was added to the project but has not been analyzed yet.
Modified -- script was modified after the analysis.
Skipped -- syntax of the script is unknown to the Parser.
OK >> Alert -- no serious issues detected, but there're some recommendations and minor remarks.
OK >> no Alert -- script is perfectly fine and might have diagrams or pseudocode comments.
As you drill-down the tree by clicking on its scripts, you will see the content on the right dynamically changing in accordance with the selected items. The "Script: Editor and Analyzer Info" tab displays the source code and holds the analysis results for each script.

For example, for a script with the "Error" status, it shows the lines of code where the error was detected and suggests the expected fix. If code review violations were raised, you will find the list of violated rules on the corresponding subtab, with the justification.
In other words, you can overwrite already imported scripts from their sources and, vice versa, write back changes from the Project to the source (the latter cannot be undone!). Synchronization is flexible meaning you can unlink or relink established connections and check if you are using the latest edition of the code by validating it.
Project Tree
Fig.1 - Project Tree
To get a brief overview of a project tree item, hover it to see a tooltip. Icons, marks, and colors will let you know if the script is linked to its source, how it is linked, what type of synchronization is applied, if warnings were found or not.

The whole legend of the used signs is described in the Project Manager. It's kind of a cheat sheet, handy for beginners and always at hand (see it on the tab next to the Project Tree). The Project Manager also includes settings for filtering and sorting as well as statistics of the latest analysis.
One of the recent tunings we made is addition of the Recycle Bin. Though scripts in the Project are only copies of the initial files, libs, and objects, losing them because of an awkward click might be frustrating. With the pop-up menu or by drag&drop, remove the unnecessary items to the Recycle Bin node, restore them later, or purge permanently.