Enhance your 4D applications by using our 4D-certified analysis environment!

Dedicated Tool - Inventive Analysis for 4D


Learn all about your 4D code

Sample 4D customer project:

4D is a very specific, old-fashioned, but still very valuable development environment. Up until now, no tool existed that would enable software developers and IT managers to examine their 4D environment. Insight into the overall code quality, the robustness of the system or any metrics were simply not available.

In partnering with 4D, Synectique created a set of tools dedicated to the 4D code environment. Our goal was to allow developers to directly tackle their problem, provide them with the right information at the right moment, and offer tools for a comprehensive and consistent view on how their application looks and how it was built.

Components for 4D
(on top of Inventive Analysis’ standard features)

  • Provides metrics and analysis for tables, project methods, forms and form methods
  • Allows dynamic execution of forms
  • Offers embedded SQL queries and cross-references for tables and other entities
Code Analyser
  • Contains code metrics for project methods, forms, tables and form objects
  • Gathers metrics for incoming and outgoing links for 4D entities
Call Graphs
  • Highlights important concepts in the code such as dynamic calls
  • Provides an annotated list of 4D entities and allows you to filter the information (e.g. all entities with duplicated code)
Tree Browser
  • Facilitates the understanding of the dependencies amongst 4D entities
  • Identifies cyclic dependencies amongst 4D entities
Rule Checker
  • Contains dedicated rules for a 4D code base such as the detection of "if (false)" usage
  • Detects any forbidden 4D instructions (all instructions detected)
  • Detects introductory comments in project methods and forms
Precious insight into your 4D code
  • Helps understanding the characteristics of 4D entities at the architectural level. Offers multiple views to show complexity of code, linkages to entities, dead code and other custom defined characteristics