
"Si los developers son productivos y felices, crean mejores soluciones más rápido"
npm install @tyconsa/bizuit-form-sdkimport { useBizuitSDK } from '@tyconsa/bizuit-form-sdk'
const { auth, process } = useBizuitSDK()
// Autenticar
await auth.login({ username, password })
// Iniciar proceso
const result = await process.initialize({
processName: 'MiProceso',
userName: 'usuario'
})
npm install @tyconsa/bizuit-ui-componentsimport { BizuitDataGrid } from '@tyconsa/bizuit-ui-components'
git clone https://github.com/TYCON-SA/bizuit-custom-form-sample.git
cd bizuit-custom-form-sample/form-template
npm install # Instala SDK + UI components
cp dev-credentials.example.js dev-credentials.js
# Editar con tu usuario/password de Dashboard
npm run build # Compila en < 1 segundo
python3 -m http.server 8080 -d dist
# Abrir: http://localhost:8080/dev.html
import {
BizuitDataGrid, // TanStack Table v8
BizuitCombo, // Multi-select con search
BizuitDateTimePicker,
BizuitFileUpload, // Drag & drop
BizuitCard,
Button // UI base
} from '@tyconsa/bizuit-ui-components'
nodemon --watch src
--ext tsx
--exec "npm run build"
python3 -m http.server 8080 -d dist
"Crear un formulario de solicitud de vacaciones con:
Selector de fechas (inicio/fin)
Campo de motivo (textarea)
Selector de tipo de ausencia
Validación de días disponibles"
ALLOWED_IFRAME_ORIGINS=https://app.example.com,https://*.example.com
ALLOW_LOCALHOST_IFRAME=false
const result = await sdk.process.initialize({
processName: 'MiProceso',
userName: 'usuario',
token: dashboardToken
})
// Retorna: metadata de parámetros + form definition
{processData.parameters.map(param => (
handleChange(param.name, value)}
/>
))}
const result = await sdk.process.raiseEvent({
processName: 'MiProceso',
eventName: 'Submit',
instanceId: processData.instanceId,
activityName: 'Form1',
parameters: formData
}, files, sessionToken)
await sdk.instanceLock.withLock(
{
instanceId: 'INST-123',
activityName: 'ApprovalForm',
operation: 1, // 1=edit, 2=view
processName: 'MyProcess'
},
token,
async (sessionToken) => {
// Usuario tiene lock exclusivo aquí
const result = await sdk.process.raiseEvent({...}, [], sessionToken)
return result
// Lock se libera automáticamente al finalizar
}
)
import { XmlParameter } from '@tyconsa/bizuit-form-sdk'
// Parse XML a objeto
const xmlParam = XmlParameter.parse(
'value'
)
// Modificar como objeto JavaScript
xmlParam.root.item = 'nuevo valor'
// Serializar de vuelta a XML
const xmlString = xmlParam.toString()
cd bizuit-custom-form-sample
cp -r form-template mi-nuevo-form
cd mi-nuevo-form
npm install
# Actualizar package.json
{
"name": "@tyconsa/bizuit-form-mi-nuevo-form",
"version": "1.0.0",
"description": "Descripción de tu form"
}
# Configurar credenciales (una sola vez)
cp dev-credentials.example.js dev-credentials.js
npm run build # Compila < 1 segundo
cd dist
python3 -m http.server 8080
# Abrir: http://localhost:8080/dev.html
# Hot reload opcional:
nodemon --watch src --ext tsx --exec "npm run build"
git add .
git commit -m "feat: agregar form de solicitud de vacaciones"
git push origin main
FormName
v1.0.0 (active) ←
v1.1.0
v1.2.0
GET /api/custom-forms
GET /api/custom-forms/{name}/code
GET /api/custom-forms/{name}/versions
POST /api/custom-forms/{name}/set-version
DELETE /api/custom-forms/{name}
POST /api/deployment/upload
Conclusión ClaraBIZUIT Custom Forms supera a los formularios tradicionales en todos los aspectos técnicos importantes: flexibilidad, performance, experiencia de desarrollo, seguridad, y soporte. La inversión en esta plataforma moderna se traduce en ahorro de tiempo, reducción de costos, y mejores resultados de negocio.
git clone https://github.com/TYCON-SA/bizuit-custom-form-sample.git
cd bizuit-custom-form-sample/form-template
npm install # Ya hecho previamente
cp dev-credentials.example.js dev-credentials.js
# Editar: usuario = "admin", password = "***"
npm run build # < 1 segundo
python3 -m http.server 8080 -d dist &
open http://localhost:8080/dev.html
import * as XLSX from 'xlsx';
const handleExport = () => {
const ws = XLSX.utils.json_to_sheet(filteredData);
const wb = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, "Data");
XLSX.writeFile(wb, "export.xlsx");
};
npm run build # Rebuild
# Refresh browser → Export funcionando
git add . && git commit -m "feat: add Excel export"
git push origin main
# GitHub Actions → Build → Create ZIP
"Esta plataforma no solo proporciona herramientas estandarizadas con seguridad unificada y patrones aprobados, sino que transforma radicalmente la capacidad de los desarrolladores para crear soluciones 100% personalizadas, elevando la productividad a niveles inalcanzables con los formularios preexistentes."