Admin — CDMS
ADMIN-CDMS-001 a ADMIN-CDMS-007

Admin CDMS

La sección Admin CDMS tiene 7 pestañas para la gestión operacional, mantenimiento de integridad y configuración del repositorio documental.

Admin exclusivo

Tab Documentos

Vista de gestión de todas las versiones de documentos del sistema con búsqueda full-text. La tabla muestra: código, título, versión (label), estado, área y si tiene PDF sellado en R2 (has_sealed_pdf). Los documentos sin PDF sellado se destacan con un indicador de advertencia.

Podés buscar por código o título (mínimo 2 caracteres). El buscador usa debounce y filtra en tiempo real.

Reparse de anchors (por documento)

Cuando un campo del formulario IDT no tiene _docx_anchor definido, el campo se descarta silenciosamente durante la generación del PDF (defecto técnico TD-CTR-FIELD-002). El reparse detecta y reconstruye los anchors analizando el DOCX vinculado a la versión.

Buscá el documento con el problema

Escribí el código o parte del título (mínimo 2 caracteres). El dropdown sugiere documentos coincidentes con código, versión y título.

Seleccioná la versión correcta

Hacé clic en el documento del dropdown. El campo muestra ION-CLD-042 v3.0 — Título del procedimiento.

Ejecutá Dry Run primero (siempre)

El switch Dry Run está activado por defecto. Hacé clic en Previsualizar (dry run). El resultado muestra: cuántos anchors serían detectados, cuáles fields se actualizarían y cuáles quedarían sin cambios. No modifica nada.

Revisá el resultado del dry run

Verificá que los anchors detectados corresponden a los campos correctos del formulario. Si el resultado es incorrecto, contactá al administrador técnico antes de aplicar.

Desactivá Dry Run y aplicá

Cuando el dry run es correcto, desactivá el toggle Dry Run y hacé clic en Aplicar reparse. El schema de la versión se actualiza. El resultado muestra los anchors aplicados.

⚠️

Después de aplicar el reparse, los PDFs generados previamente con ese schema pueden diferir de los futuros. Si hay bundles CTR ya cerrados con ese IDT, los PDFs históricos no se ven afectados — son inmutables en R2 WORM. Solo los nuevos bundles usarán el schema corregido.

Batch Export ZIP

Exporta los archivos sellados (PDF o DOCX) de múltiples documentos en un único ZIP. Útil para entregas de documentación a auditores externos, respaldos o distribución interna.

  1. Buscá documentos en el campo de búsqueda (mínimo 2 caracteres)
  2. Hacé clic en un resultado para agregarlo a la selección. Podés agregar múltiples documentos de diferentes búsquedas.
  3. Para quitar un documento de la selección, hacé clic en el ✕ junto a su nombre
  4. Elegí el tipo: PDF (informe sellado) o DOCX (plantilla Word)
  5. Hacé clic en Generar ZIP → el servidor genera el archivo y retorna la URL de descarga con el nombre del ZIP y la cantidad de documentos incluidos

Tab Áreas y Códigos

Define los códigos de área del sistema. Los códigos de área se usan en los documentos CDMS, trainings TMS, hallazgos AUM y eventos QEM para clasificar el contenido organizacionalmente.

CampoEditableDescripción
CódigoNo (inmutable)3-4 letras mayúsculas. Ej: CLD, CLB, SPT. Se crea al registrar el área y no puede modificarse.
Nombre completoNombre legible. Ej: "Calidad", "Calibraciones". Editable con ✏.
Color de acento UIColor hexadecimal (#RRGGBB). Aparece como borde de color en las cards de documentos del área.
ActivaToggleDesactivar oculta el área de los selectores nuevos pero no afecta documentos existentes.

Crear área nueva: completá el formulario de "Nueva área" con código (único, mayúsculas), nombre y color → Guardar. El sistema llama a POST /admin/cdms/areas. El código debe ser único en el sistema — si ya existe, el servidor retorna error.

Tab Integridad

Herramientas de verificación y mantenimiento de la integridad del almacenamiento R2. Para uso en procesos de auditoría técnica o ante sospechas de corrupción de datos.

  • Verificar hash de un PDF: Ingresá el ID de la versión y ejecutá la verificación. El sistema calcula el SHA-256 del objeto en R2 y lo compara con el hash almacenado en la base de datos al momento del sellado. Si coinciden: ✅ PDF íntegro. Si difieren: ⛔ probable corrupción, reportar inmediatamente.
  • Detectar PDFs inválidos: Escanea el bucket buscando objetos menores a 500 bytes (indicador de PDF vacío o parcialmente generado). Retorna la lista de objetos con problema para revisar manualmente.
  • Regenerar PDF: Disponible como último recurso para versiones con PDF faltante o corrupto. La regeneración almacena el nuevo PDF en el bucket ion-eqms-uploads-prod con prefijo regenerated/ (sin WORM). El PDF en el bucket WORM (ion-eqms-artifacts-prod) no se modifica ni elimina.
⚖️

Restricción regulatoria. El bucket ion-eqms-artifacts-prod tiene Bucket Lock Rules de Cloudflare R2 con retención de 3650 días. La sobreescritura directa es imposible por diseño. Antes de regenerar cualquier PDF regulatorio, obtener aprobación formal de la Gerencia de Compliance (Antonella Amaya).

Tab Esquemas IDT

Gestión de los schemas de formulario (Form Builder) para documentos IDT. Un schema define los campos que el técnico debe completar cuando ejecuta ese protocolo en un bundle CTR.

La tabla lista todos los IDTs con:

  • Código y título del documento
  • Versión vigente
  • Estado del schema: sin schema / con schema + contador de campos
  • Estado de anchors: todos OK / N campos sin anchor

Hacé clic en un IDT para expandir y ver el listado de campos del schema, con el estado de cada anchor.

Acciones por documento IDT

AcciónÍconoDescripción¿Cuándo usar?
Dry Run Reparse🔍Previsualiza qué anchors detectaría el parser en el DOCX. No modifica nada.Antes de aplicar cualquier reparse. Siempre primero.
Aplicar ReparseAnaliza el DOCX del IDT y actualiza los anchors de todos los campos del schema en la BD.Cuando el dry run confirma que los anchors detectados son correctos.
Inject💉Inyecta manualmente un anchor específico en un campo del schema. Requiere ingresar el field_id y el anchor exacto.Cuando el reparse automático no detecta el anchor de un campo específico y conocés el anchor correcto.

Tab Storage R2

Interfaz de operaciones de mantenimiento directas sobre el storage Cloudflare R2. Complementa el Tab Documentos con acceso más directo a la capa de storage.

Las operaciones disponibles son las mismas que en el Tab Documentos (reparse por versión ID y batch export) pero sin la capa de búsqueda por nombre — ingresás el ID directamente. Útil cuando ya conocés el ID o cuando la búsqueda del Tab Documentos no está retornando el documento correcto por algún problema de indexación.

Tab Motivos de firma (✍)

Configura los textos predeterminados que aparecen como sugerencias en el modal de firma electrónica. Cada preset está asociado a un módulo-clave que identifica el contexto donde se usa:

Módulo-clave (key)Dónde aparece
cdms_approveModal de firma al efectivizar un documento en CDMS
cdms_rejectModal de rechazo de documento en CDMS
ccm_approveModal de aprobación de Change Control
ccm_rejectModal de rechazo de Change Control
qem_advanceModal de avance de estado de evento QEM
ctr_sign_techModal de firma como técnico en bundle CTR
ctr_sign_verModal de firma como verificador en bundle CTR

Editar presets de un módulo

  1. Hacé clic en ✏ Editar junto al módulo que querés modificar
  2. El textarea muestra los presets actuales, uno por línea
  3. Modificá, agregá o eliminá líneas según necesites. Cada línea es un preset independiente.
  4. Hacé clic en Guardar — el sistema llama a PUT /admin/cdms/signature-presets/{key}

Para agregar un módulo custom (para integraciones o contextos no estándar), usá el panel "Nuevo módulo custom": ingresá el key único y los presets separados por línea.

ℹ️

El módulo debe tener al menos 1 preset. Al guardar con lista vacía, el servidor retorna error. Los presets son sugerencias — el usuario siempre puede escribir su propia justificación en el modal de firma.

Tab Relaciones (🔗)

Panel de administración y auditoría de las relaciones entre documentos (WF-CDMS-REL-001). Permite supervisar, filtrar, eliminar y exportar el grafo de relaciones documentales del sistema.

Ver relaciones de un documento

  1. Buscá por código o título (mínimo 2 caracteres, debounce automático)
  2. Seleccioná el documento focal en el dropdown
  3. El panel carga y muestra todas las relaciones de ese documento: documento relacionado (código + título), nota/motivo de la relación y fecha de creación

Eliminar una relación

Hacé clic en el ícono 🗑 junto a la relación. El sistema pide confirmación. Al confirmar, llama a la API de eliminación y registra el evento relationship_removed en el audit trail con el admin ejecutor. La eliminación es inmediata e irreversible.

Exportar relaciones

  • Exportar selección (CSV): genera el CSV en el cliente (sin llamada al servidor) con las relaciones del documento focal actualmente seleccionado. El archivo incluye BOM UTF-8 para compatibilidad con Excel.
  • Exportar todo (ZIP/CSV): llama al servidor para generar el export completo de todas las relaciones del sistema. Útil para auditorías o reportes de trazabilidad documental.

Columnas del CSV: Documento Focal — Código / Título, Relacionado — Código / Título, Nota/Motivo, Fecha de creación.