LOCAL-FIRST WORKBENCH

X++ developer tools

Format, analyze, convert, and generate reviewable X++ without sending source code to XppForge.

Formatting

X++ Formatter

Syntax-aware X++ formatting that preserves comments, strings, directives, and executable meaning.

Analysis

X++ Syntax Checker

Validate balanced X++ tokens and surface actionable structural errors.

Analysis

X++ Best-Practice Analyzer

Deterministic best-practice findings with severity and correction guidance.

Analysis

X++ Complexity Analyzer

Measure methods, branches, lines, and a cyclomatic-complexity estimate.

Analysis

X++ Naming Convention Validator

Review identifiers against practical X++ naming conventions.

Analysis

X++ Code Comparison

Compare two X++ versions with a structured line-level summary.

Analysis

X++ Code Explainer

Explain recognized transactions, queries, extensions, and database patterns locally.

Analysis

X++ Performance Pattern Analyzer

Flag unbounded selects, wide reads, and common N+1 access patterns.

Analysis

X++ Security Pattern Analyzer

Flag direct SQL, asserted permissions, and constructed-query risks.

Analysis

X++ Transaction Scope Checker

Review ttsBegin, ttsCommit, ttsAbort, and transaction-sensitive writes.

Conversion

SQL to X++

Convert a documented SQL SELECT subset into classic X++ and QueryBuildDataSource code.

Conversion

X++ Select to SQL

Translate a documented basic X++ select subset into reviewable SQL.

Conversion

X++ Query Builder

Build ranges, joins, fields, sorting, and QueryBuildDataSource scaffolding.

Conversion

CSV to X++ Test Data

Convert explicit CSV rows into X++ test-buffer assignment scaffolding.

Conversion

JSON to X++ Class

Generate a DataContract class from a JSON object.

Conversion

XML to X++ Class

Generate a DataContract class from simple XML elements.

Integration

D365 OData URL Builder

Build encoded Finance and Operations OData URLs from reviewed inputs.

Conversion

X++ Map to JSON

Generate deterministic Map-to-JSON serialization scaffolding.

Generation

X++ Parm Method Generator

Generate a typed backing field and conventional parm method.

Generation

Chain of Command Generator

Generate extension scaffolding with an explicit next call.

Generation

SysOperation Generator

Generate contract, UIBuilder, service, controller, menu, privilege, and deployment scaffolding.

Generation

X++ Unit Test Generator

Create SysTestCase scaffolding with Arrange, Act, and Assert sections.

Generation

D365 Object Generator

Create metadata bundles for classes, tables, forms, reports, and security artifacts.

Generation

Table Extension Generator

Create upgrade-safe table extension scaffolding.

Generation

Form Extension Generator

Create form extension scaffolding and metadata guidance.

Generation

Class Extension Generator

Create class extension scaffolding without overlayering.

Generation

Data Entity Extension Generator

Create staging extension scaffolding and mapping guidance.

Generation

Batch Framework Generator

Create retry-aware RunBaseBatch scaffolding.

Generation

Workflow Class Generator

Create workflow document, submission, recall, event, and lifecycle scaffolding.

Generation

Feature Management Generator

Create FeatureMetadata registration scaffolding.

Generation

Number Sequence Generator

Create number-sequence access and registration scaffolding.

Generation

Event Handler Generator

Create form-control event-handler scaffolding.

Generation

Lookup Method Generator

Create a SysTableLookup method scaffold.

Generation

Multi-select Lookup Generator

Create a query-backed SysLookupMultiSelectCtrl scaffold.

Generation

Data Contract Generator

Create a DataContract and DataMember parameter method.

Generation

Service Class Generator

Create request/response service scaffolding with review points.