Platform Features

Built for Developers Who Know What They're Doing

Enta is a high-level development platform for building enterprise applications. Not drag-and-drop for business users. A professional tool for developers and technical teams who understand SQL, data binding, and application architecture.

Every feature designed for technical teams building data-driven applications. Deep capabilities, instant development.

Positioning

High-Level Development Platform

Enta is not "no-code for non-technical people." It is a power tool for professionals who understand software development.

Model-First Architecture

You cannot start from a form. Enta is model-first: you design your data model, business objects, properties, relationships, and inheritance before you build anything visual. This is intentional. It mirrors how real software is designed: data architecture first, then UI, then automation.

Data modeling

Entities, relationships, primary and foreign keys, and inheritance hierarchies.

SQL fundamentals

JOINs, CTEs, window functions, derived tables, aggregations. You see the query and control the query.

Data binding concepts

UI controls bind to data sources through DataContext, parametric expressions, and event subscriptions.

Business process design

Workflows cover 30+ step types, approval chains, dehydration and rehydration, webhooks, and cron triggers.

Security architecture

Role × Object × Property × Permission, deny-wins RBAC, row-level filters, and field-level visibility. One place, enforced everywhere. Queries extract only user-visible data from the database.

Enterprise App Builder

Customizable app builder, built by developers with decades of experience.

No SQL ceiling

JOINs, CTEs (recursive and non-recursive), window functions, correlated subqueries, EXISTS, derived tables, SET operations — constructed visually, compiled to parameterised SQL. No escape hatch needed because SQL is the authoring surface.

Multi-database by design

Same expression model, multiple dialects. SQL Server, PostgreSQL, Oracle, MySQL, SQLite, and a broader supported list. No commitment to a proprietary runtime database.

Works on your existing schema

Connect to the database you already run. Reverse-engineer the schema. Generate Business Objects, expressions, and starter UI on top. No migration. No data movement. No proprietary schema conventions imposed.

Integrated BI

Charts, dashboards, pivot tables, drill-through, cross-filtering, KPI cards, gauges, conditional formatting, exports, scheduled delivery — in the same product, on the same data layer, governed by the same security rules.

Vast library of customizable UI controls

Grids, forms, trees, dropdowns, calendars, charts, KPIs, maps, pivots, gauges — all data-aware and deeply configurable. Bind to expressions, set conditional visibility, template cells and rows, theme to match your brand.

One security primitive everywhere

Row filters and field restrictions expressed once, applied to queries, validations, forms, grids, dashboards, exports, APIs, and workflows. No second security model for the BI tool. No drift between the app and the report.

Composition primitives that scale

Any control can target any other directly. Structured action types. Ordered chains. Multi-form atomic saves with rollback. Compositions that take hundreds of lines of glue code elsewhere are configuration here.

Workflow Engine

Long-running orchestration with pause and resume. Approvals tied to your data model. Scheduled jobs, webhooks, transfer queues. Custom step types can be delivered with a license purchase.

One product, one auth, one data layer

Not BI plus operational app plus workflow plus permission system — separately licensed, separately deployed, separately governed. One identity layer. One security definition. One runtime.

Expression Builder

Visual SQL Query Designer

Build almost any operational or analytical query through a dedicated builder, then use it as a governed source for dashboards, reports, grids, workflows, and APIs. SQL depth, visual composition, and security-aware execution live in one place.

JOINs

INNER, LEFT — visual relationship mapping

CTEs

Common Table Expressions with full builder support

Window Functions

ROW_NUMBER, RANK, LAG, LEAD, SUM OVER

Derived Tables

Nested subqueries as data sources

Aggregations

GROUP BY, HAVING, SUM, COUNT, AVG

EXISTS / IN

Correlated and non-correlated subqueries

SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY — the full SQL vocabulary, built visually and reused across the application.

Generated SQL
WITH ActiveOrders AS (
    SELECT
        o.CustomerID,
        o.OrderDate,
        ROW_NUMBER() OVER (
            PARTITION BY o.CustomerID
            ORDER BY o.OrderDate DESC
        ) AS RowNum
    FROM Orders o
    WHERE o.Status = 'Active'
)
SELECT
    c.Name,
    ao.OrderDate AS LatestOrder,
    COUNT(*) OVER () AS TotalCustomers
FROM Customers c
INNER JOIN ActiveOrders ao
    ON c.ID = ao.CustomerID
WHERE ao.RowNum = 1
ORDER BY c.Name ASC;

-- Built visually. Parameterized automatically. No string concatenation.

Reusable Data Sources

Publish one query definition into dashboards, reports, grids, exports, workflows, and APIs.

Security-Aware Results

Row filters, field visibility, and deny-wins permissions stay attached to query execution.

Governed SQL

Parameters, validation, and generated SQL output keep power users out of string concatenation.

Multi-Database Support

Works with supported providers including SQL Server, Azure SQL, PostgreSQL, Oracle, MySQL, SQLite, DB2, ClickHouse, SAP HANA, Sybase ASE, Firebird, Informix, Access, SQL CE, and DB2 iSeries.

UI Designer

Declarative Application Builder

Not a pixel-pusher. A data-bound application builder.

Data Binding

Declarative two-way binding to business object properties, expressions, and computed values. Controls update automatically as the underlying data changes.

Near-Native Event Management

Familiar HTML-like events — click, change, focus, blur, key, hover — wired declaratively to structured actions. No glue code. Any control can drive any other.

Conditional Logic & Styling

Show, hide, enable, disable, recolour, restyle — per expression predicate. Rules attach to any control or layout. Behaviour and presentation react to data, not to imperative code.

Expression-Based Validation

Define validation rules as expressions over the data model. Enforced in forms, grids, APIs, and workflows. Write the rule once, it runs everywhere — no duplicated client/server checks.

Responsive Layouts

CSS-grid based layouts adapt to desktop, tablet, and phone with a single definition. Breakpoint-specific overrides when you need them. No separate mobile pages.

Predefined Page Templates

List + Detail, Master + Tabs, Dashboard, Form Wizard, Search + Results — pre-wired against a business object. Pick a template, point at an object, get a working page. Refine from there.

Featured Control

DataGrid

The workhorse of any business application. Built for serious data — templated, aggregable, groupable, drillable, exportable. Configured visually, bound to expressions, governed by the same security as the rest of the app.

Templated columns

Cell, header, and edit templates. Render anything from icons to nested controls per row.

Client & server-side aggregations

SUM, COUNT, AVG, MIN, MAX with subtotals and grand totals. Pushed to the database for large data sets.

Grouping & multi-level sort

Drag a column header to group. Nested groups with collapsible sections and per-group aggregates.

Child grids

Expandable detail rows with their own grid bound to a related expression. Multi-level nesting supported.

Conditional formatting

Cell, row, and column rules based on expression predicates. Colours, icons, badges, gradient heat maps.

Excel, PDF, CSV export

Full grid or filtered selection. Preserves grouping, aggregates, and formatting in the output.

Sorting, filtering, paging

Per-column filters with operator pickers. Server-side paging for large data sets. Virtual scrolling.

Inline edit & bulk actions

Edit in row, in cell, or in a side panel. Selection-driven bulk operations wired through events.

BI & Analytics

Integrated BI

Charts, dashboards, pivots, KPI cards, and gauges built on the same SQL foundation as the operational pages. Same data layer, same security rules, same identity. No second tool to license, deploy, and reconcile.

17+ chart types

Bar, line, area, pie, scatter, bubble, waterfall, heatmap, histogram, polar, radar, funnel, treemap, stacked, bullet, composed, sparkline. From simple to specialised.

KPI cards & gauges

Big-number metrics with target/threshold styling. Circular and linear gauges for progress against goals. Conditional colouring tied to value bands.

Drag-drop pivot tables

Pivot rows and columns by drag. Subtotals, grand totals, expand/collapse, drill-through to underlying records. Backed by the same expression engine.

Cross-filtering & drill-down

Click a region on a map, every chart on the page filters to that region. Click a bar, open the detail page with the dimension passed through as a parameter.

Conditional formatting

Highlight cells, rows, columns, and chart segments based on rules or expression predicates. Red if overdue, green if profitable, gradient heat maps, icon overlays.

Exports & scheduled delivery

Excel, PDF, CSV exports of grids, charts, and full pages. Scheduled email delivery on cron, conditional gating (“only send if there are overdue invoices”), recipient lists by role.

Write-back on the same page

Edit a record in a form, save, the chart refreshes. The dashboard is interactive, not an observer. BI tools cannot do this because they live outside the application.

Security applies to BI too

Row filters apply before aggregation, so totals and averages cannot leak hidden rows through inference. Restricted columns never reach the chart. One security definition, applied to dashboards just like everything else.

Page filters & parameters

Date ranges, regions, categories at the page level. Every chart, grid, and KPI on the page subscribes automatically. Bookmarkable URLs preserve the filter state.

Dynamic Data Warehouse

From question to warehouse in minutes

Build an expression, mark it as materialised, pick a refresh schedule. The system creates the reporting table, runs the refresh job, and the warehouse schema follows the expression.

No separate ETL tool. No data engineer drawing star schemas on a whiteboard. No second BI product pointed at the warehouse. The materialised expression is the ETL, and any chart binds to it the same way it binds to any other expression.

Materialised expressions

Mark a query as materialised. A scheduled job writes results to a reporting table. The table schema is generated from the expression.

Just another data source

The reporting table behaves like any other source. Other expressions query it. Charts bind to it. No new engine, no new query language.

Incremental refresh

Track the last refresh and pull only what changed. Heavy reports stay fast without reloading the full dataset every cycle.

AI suggests materialisations

“This dashboard joins six tables with window functions. Want me to materialise it on a nightly schedule?” One click to accept.

Schema evolves with metadata

Change the expression, the warehouse table re-materialises. No migration project. No drift between the model and the warehouse.

Conversational dashboards

“Sales performance dashboard with MTD revenue by region and top 10 products by margin” — expressions generated, heavy ones materialised, page built.

The dashboard reads from the same expression engine that powers the forms, enforces the same security as the API, and respects the same identity as the workflow. One foundation, one runtime.

Workflow Engine

Business Process Automation

Real workflow orchestration. Not a flowchart that sends emails.

30+ Step Types

CRUD, HTTP, email, approval, delay, branching, loops, subworkflows, scripts, and more. Hangfire-powered with distributed locking.

Visual Designer

Drag-and-drop canvas for composing workflows. Every step configurable through a property panel — not YAML files.

Approval Chains

Multi-level approvals with dehydration and rehydration. Workflows pause, wait for human input, and resume without polling.

Triggers

Manual, record events (Created/Updated/Deleted), cron schedules, webhooks, and import completion. Fire from anywhere.

Workflow Designer
RecordCreated Invoice
ValidateFields Amount > 0
Branch Amount > 10,000?
RequestApproval Manager
SendEmail Confirmation
Security

Enterprise Access Control

One security definition. Enforced everywhere. Restricted data never leaves the database — not stripped at the screen, not filtered after the fact.

Where other platforms make security the developer's responsibility — one forgotten check in a thousand places, and a tenant sees another tenant's data — Enta enforces every rule centrally, on every access path, automatically.

Permission Matrix

Role × Object × Property × Permission. Four-dimensional access control configured in one place, enforced across every form, grid, query, API, workflow, and report.

Deny-Wins RBAC

Explicit deny always takes precedence. Multiple restrictions compose automatically — the most restrictive policy wins, every time. No precedence puzzles. No surprise grants.

Row-Level Filters

Restrict which records each role can see through declarative predicates. Filters are applied at the data layer — restricted rows never leave the database, not even into memory.

Field-Level Stripping

Restricted columns are removed from queries before execution. Sensitive fields never travel across the network — they are never read, never serialised, never available to be leaked.

Aggregation-Safe

Row filters apply before grouping and aggregation. Sums, averages, and counts operate only on permitted rows — users cannot infer hidden values through totals.

One Definition, Every Path

The same security rules govern forms, grids, dashboards, reports, exports, APIs, workflows, and scheduled jobs. Define once. Apply to every access path automatically.

Six Layers of Enforcement

Module

Hide entire modules from a role.

Object

Restrict read, create, update, or delete per business object.

Page

Hide specific application pages from navigation and access.

Component

Remove individual panels, tabs, or controls within a page.

Property

Strip restricted fields from queries before they execute.

Row

Filter records through declarative predicates per role.

Impossible to bypass — the application cannot read what the platform refuses to extract.

Maintenance

Refactor Without Fear

Every binding is a structured reference — not a string of code buried in a property box. Rename a field, change a type, restructure an object: Enta tells you exactly what depends on it, before you commit the change.

The first internal tool always works. The fiftieth is where code-driven platforms collapse into silent breakage and support tickets. Enta keeps its shape.

Impact Analysis

See every page, grid, form, expression, workflow, and security rule that depends on a property or object — before you change anything.

Type-Checked Bindings

Change a property type and every consumer is validated. Mismatches surface at design time, not at 3 AM when a report fails for the CFO.

Safe Renames

Rename a property or object once. Every reference updates atomically — queries, controls, workflows, security rules, page layouts.

Guarded Deletes

Deleting a referenced object is blocked or warned, with every dependency listed. No accidental destruction of logic that took weeks to build.

Reverse Lookup

For any property or object, see every consumer at a glance: which queries read it, which forms display it, which workflows write it, which rules govern it.

Impact Report

Proposed change

Rename Customer.Email

Customer.EmailAddress

References found

  • Expressions 17
  • Form controls 8
  • Grid columns 3
  • Workflows 2
  • Security rules 1
  • Reports 4
All references will be updated atomically.
Deployment Pipeline

DEV → UAT → PROD on your terms

Because the entire application is metadata — objects, expressions, pages, workflows, security — moving an app between environments is a structured operation on a defined artifact.

Environments are configurable to match whatever your team uses: two-stage, three-stage, feature branches, regional production splits. Database connections, AI provider keys, and other environment-specific settings stay isolated per environment.

Stage 1

DEV

Authoring environment. Build objects, expressions, pages, workflows. Iterate freely. Connect to a dev database with synthetic or sampled data.

Stage 2

UAT

Validation environment. Business reviewers test the deployed metadata against a UAT database. Sign-off gates promotion to production.

Stage 3

PROD

Production. The reviewed metadata runs against the production database with production AI keys and audit logging. No surprise drift from UAT.

Configurable to any number of stages — not fixed at three.

Configurable environments

Define as many stages as your SDLC needs. Name them to match what your team already uses. Two-stage, three-stage, feature branches, regional splits.

The app definition is the artifact

Objects, expressions, pages, workflows, and security rules are all structured metadata. Promoting an app between stages moves a defined artifact, not a tarball of opaque files.

Per-environment connections

Database connection strings, AI provider keys, webhook secrets, integration endpoints stay isolated per environment. Promote the app definition; the connections stay put.

Same security in every stage

Roles, row filters, and field restrictions travel with the metadata. What UAT enforces is exactly what PROD enforces. No surprise gaps because someone forgot to copy a policy.

Fits your existing SDLC

Whether your team uses Git-style branching, ticket-driven releases, or a change advisory board, the environment model adapts. Approval gates and audit logs work alongside whatever governance your organisation already runs.

One-click promotion

Scheduled

Side-by-side diff of what changes between stages, approver sign-off, atomic apply with rollback. The metadata foundation is in place today; the streamlined promotion UI is on the roadmap.

Configurable environments. Isolated connections. The app definition is the artifact — moving between stages in a structured way.

Import Engine

Data Ingestion Pipeline

Get data in. Keep it clean. Run it again tomorrow.

Multiple Sources

  • CSV / Excel files
  • REST API endpoints
  • External databases

Processing

  • Field mapping and transformation
  • Validation rules
  • Duplicate detection

Automation

  • Scheduled execution
  • Repeatable imports
  • Full audit trail
BO Inheritance

Real Domain Modeling

Define once at the base level. Every subtype inherits expressions, workflows, security, and UI.

Person
Employee Customer Vendor
Document
Invoice PurchaseOrder CreditNote

Expressions defined on Person automatically work on Employee, Customer, and Vendor.

Workflows triggered on Document fire for Invoice, PurchaseOrder, and CreditNote.

Security rules on a base type cascade to all subtypes. No duplication. No drift.

UI configurations inherit downward. Override only what differs per subtype.

AI Providers & Controls

Bring your own AI provider. Keep control.

Enta is tested against multiple AI providers — Anthropic Claude, OpenAI ChatGPT, and other OpenAI-compatible providers. Dedicated connectors for internal or other providers are delivered on request as part of a license purchase.

AI access is governed by the same permission system as the rest of the platform. Per-user token limits, which schemas the AI can read, and which tools it can call are all configurable per role.

Multiple providers, tested

Anthropic Claude, OpenAI ChatGPT, and other OpenAI-compatible providers work out of the box. Switch providers per workspace without changing how the rest of the platform behaves.

Custom connectors on request

Need to point at an internal model, a private cloud deployment, or a provider not on the list? Dedicated connectors are delivered on request as part of a license purchase.

Per-user token limits

Cap how much each user or role can spend on AI per day, per week, or per request. Predictable costs. No surprise bills from a misconfigured prompt loop.

Configurable schema access

Choose which objects, properties, and relations the AI can see for a given role. The same security rules that govern the application govern what the AI knows.

Tool-level permissions

Pick which tools the AI can call per role. Read-only for analysts, schema edits for administrators, workflow creation gated behind approval. Granular and auditable.

Audited & reviewable

Every AI action goes through the same tool contract, audit log, and security checks as a human edit. What the AI did, when, and on whose behalf is always reviewable.

See It in Action

Deep tools for teams that build serious applications. Start with a demo preview, then decide whether Enta fits your database and workflows.