Bizuit Web Forms es un sistema de construcción dinámica de formularios basado en Angular 14+ que permite la creación programática de interfaces de usuario mediante especificaciones JSON. Este documento describe el formato JSON completo para la integración con Bizuit.
Un formulario en Bizuit Web Forms es una especificación JSON que define:
┌─────────────────────────────────────────────────┐
│ FORMULARIO JSON │
├─────────────────────────────────────────────────┤
│ • id, name, version │
│ • controls: "[...]" (JSON string) │
│ • dataSources: "[...]" (JSON string) │
│ • metadata (createdDate, published, etc.) │
└─────────────────────────────────────────────────┘
│
├──→ controls (deserialized)
│ ┌──────────────────────────┐
│ │ MainFormComponent │
│ │ • props: [...] │
│ │ • children: [...] │
│ └──────────────────────────┘
│ │
│ └──→ Controles hijos
│ • InputTextboxComponent
│ • ButtonComponent
│ • TableComponent
│ • ...
│
└──→ dataSources (deserialized)
┌──────────────────────────┐
│ Primary Data Sources │
│ • Parámetros y Variables│
│ • Actividades Anteriores│
├──────────────────────────┤
│ Secondary Data Sources │
│ • SQL Data Source │
│ • REST API Data Source │
│ • Bizuit Server DS │
└──────────────────────────┘
{ "id": 1936, "name": "form_UIA1", "controls": "[{...}]", "dataSources": "[{...}]", "version": 1, "createdDate": "2025-08-06T16:46:51.983", "createdUser": "admin", "published": false, "description": "Descripción del formulario", "category": "Categoría", "subcategory": "Subcategoría", "activityName": "UIA1", "processName": "MiProceso", "processVersion": "1.0", "updatedDate": "2025-08-06T16:47:01.411", "originalName": "form_UIA1", "formId": 1936}
| Propiedad | Tipo | Obligatorio | Descripción |
|---|---|---|---|
id / formId |
number |
✅ | Identificador único del formulario en base de datos |
name |
string |
✅ | Nombre técnico del formulario (identificador C#) |
controls |
string |
✅ | JSON string con la definición de controles (serializado) |
dataSources |
string |
✅ | JSON string con las fuentes de datos (serializado) |
version |
number |
✅ | Versión del formulario (incremental) |
createdDate |
string |
❌ | Fecha de creación (ISO 8601) |
createdUser |
string |
❌ | Usuario que creó el formulario |
published |
boolean |
✅ | Si el formulario está publicado |
description |
string |
❌ | Descripción del formulario |
category |
string |
❌ | Categoría para organización |
subcategory |
string |
❌ | Subcategoría |
activityName |
string |
❌ | Nombre de la actividad BPMN asociada |
processName |
string |
❌ | Nombre del proceso BPMN |
processVersion |
string |
❌ | Versión del proceso BPMN |
updatedDate |
string |
❌ | Fecha de última actualización |
originalName |
string |
❌ | Nombre original (para versionado) |
⚠️ IMPORTANTE: controls y dataSources son strings que contienen JSON, es decir, están doblemente serializados.
// Incorrecto"controls": [{...}] // ❌ Array directo// Correcto"controls": "[{...}]" // ✅ String que contiene JSON