BlackDiamond Studio | Mobilize.Net
  • BlackDiamond Studio Documentation
    • Introduction
    • BDS Portal
      • Sign Up
      • Sign In
      • Reset Password and Multifactor Authentication
      • User Interface
      • Projects List
        • Navigating the Projects List
      • Creating my first project
        • 1. What do you want to do?
        • 2. Name Project
        • 3. Set up Repository
        • 4. Connect to Snowflake
        • 5. Code
          • 1. Select a Template
          • 2. Extract DDL from Snowflake Account
          • 3. Upload my source code
            • Folder Names Not Allowed
      • Project Summary Page
      • Sharing a Project
      • Getting a Project Invite
      • Editing a Project Member's Role
      • Deleting a Project
    • Code Conversions
      • Converting SQL code to Snowflake
        • Conversion settings
      • Converting Scala code using Snowpark
      • Convert Python code using Snowpark (Coming soon)
      • Converting from the IDE
      • Conversion Errors
    • Online Code Editor
      • Running a Streamlit App
      • Writing Scala Code
      • Writing Python Code
      • Source Control (VS Code)
      • Run and Debug
      • Testing
      • Reports Explorer
      • SQL Tools
      • Snow Explorer
      • Metals (Scala)
      • Scala Notebooks
      • Contextual Menu
    • Code Insights
      • What to expect: Insight Reports
      • Language structures support
      • Scripting languages support
      • Reports Explorer
      • Storage of reports in client stage
    • Templates
      • Templates Dependencies
    • Use Cases
      • Assessment with SnowConvert
    • Submitting Bugs and Suggestions
    • Troubleshooting
      • Folder Naming
      • Cloning with GitLab
      • Third-party Cookies used in BlackDiamond Studio
    • System Requirements and Supported Browsers
    • Release Notes
  • Snowconvert Software License Agreement
Powered by GitBook
On this page
  • Element reports
  • Objects report
  • Columns report
  • Relationship reports
  • Object references report
  • Procedure references count report
  • Missing object references report
  • Scripting reports: Scala
  • Scala: references report
  1. BlackDiamond Studio Documentation
  2. Code Insights

What to expect: Insight Reports

Breif description of the reports generated by Insights.

PreviousCode InsightsNextLanguage structures support

Last updated 2 years ago

Each report is built based on the source code provided at the beginning of the analysis and is independent of previous runs.

Reports can be separated into two main categories: element and relationship summaries.

General information on the reports:

  • Each reported row in the reports contains Datetime, Project ID, Repository URL, and Run ID. This can come in handy when doing queries over the data.

  • Views that simplify this data can be created when using the Snowflake stage storage feature.

  • "NULL" value is our default for missing information/blank values.

Specific details on each report can be found below.

Element reports

These reports have condensed information about the source code objects.

Objects report

This report has information on the objects created inside the source code.

Content:

  • SourceDescription

    The filename where the object is created.

  • FileType

    The file extension.

  • FileLanguaje

    The language of the source code.

  • FullyQualifiedName + (Database, Schema, Name)

    The complete name of the object, there is also a column for each part of the name if exists.

  • ObjectType

    The category we have identified this object falls on. E.g. Tables will be reported as SQLTable.

  • BuiltIn

    When true the object is created by the system, really important when working with functions.

  • LinesOfCode

    The physical lines of code the object has in its creation code.

  • Line and Column

    Location of the object creation inside the file.

Currently, we are targeting data for top-level objects, but the scope for data collection is bigger, aiming to obtain all the Account and Database objects and more detailed information.

Columns report

Simple report for the columns of tables and views.

Content:

  • Parent

    Name of the object that contains this column.

  • Name

    Column name.

  • Type

Relationship reports

These reports have condensed information about the source code objects.

Details on each report can be found below.

Object references report

The found references to objects created in the source code will be in this report.

The report has information for the calling object, the one doing the reference. And similar information can be found for the referenced object.

Content:

  • Source description

    The filename where the reference is found.

  • Object (calling and referenced)

    • Type

      The category we have identified this object falls on. E.g. Tables will be SQLTable.

    • FullyQualifiedName + (Database, Schema, Name)

      The complete name of the object, there is also a column for each part of the name if exists.

  • Line

    Location of the reference found inside the file.

Procedure references count report

A really simple report with the number of references found for each procedure.

Contents:

  • FullyQualifiedName + (Database, Schema, Name)

    The complete name of the procedure, there is also a column for each part of the name if exists.

  • ReferenceCount

    The number of references found.

Missing object references report

Content:

  • Source description

    The filename where the reference is found.

  • Object (calling and referenced)

    • Type

      The category we have identified this object falls on. E.g. Tables will be SQLTable.

    • FullyQualifiedName + (Database, Schema, Name)

      The complete name of the object, there is also a column for each part of the name if exists.

  • Line and Column

    Location of the reference found inside the file.

Scripting reports: Scala

Scala: references report

Currently, this is the only report being generated for Scala it will enumerate all the references found based on different heuristics or metrics. As of today we only support fully written SQL sentences, see Unsupported syntax to know more about the current limitations.

Content:

  • Source platform

    The type of platform used.

  • Source description, FileType, and File language

    The filename, extension, and detected language of the file where the reference is found.

  • Object (Reference found)

    • FullyQualifiedName + (Database, Schema, Name)

      The complete name of the object, there is also a column for each part of the name if exists.

    • Type

      The category we have identified this object falls on. E.g. Tables will be SQLTable.

  • Built-in

    Whether or not the element was identified as a system-generated Object. E.g. Nonuser defined functions.

  • Line

    Location of the reference found inside the file.

The data type for the column. For details about the data types, see .

In a similar fashion to the , this will enumerate all the references found but in this case those that reference a missing object.

Scala is being consumed like a scripting language, therefore the reports generated from a Scala source will not be the same as the ones detailed in the or sections.

Data Types
Object references report
Element reports
Relationship reports
Element reports - visual summary (color-coded)
Relationship reports - Visual summary (color-coded)
The image is edited for a better visualization of the data.