Alcance y permisos
El eMAR admite una administración ya realizada de medicamento, suplemento o fitoterapia sin línea en el plan. No crea prescripción, tomas pendientes ni una incidencia clínica automática. Se presenta en la misma hoja mensual y PDF, en una fila propia por acto. El alta, la corrección y la anulación exigen las preferencias de plan de cuidados y centros de mayores, acceso a la historia y al plan, historia abierta en edición y el privilegio explícitoCAREPLAN_ADMIN_RECORD. El tipo recibido no determina el permiso. No se requiere gestionar
el plan y una autorización de ronda no sustituye la edición de historia.
Entrada e identidad
La acción interna POSTcareplanrecordsave recibe unplannedtoken como UUIDv4 y
unplanneddata como objeto o JSON. El servidor construye unplanned: seguido del UUID en
minúsculas. La cantidad debe ser positiva, la hora realizada no puede ser futura y el estado
de alta es administered. No se pueden mezclar referencias de pautas u otras ocurrencias.
El objeto contiene exactamente estos siete campos de texto obligatorios:
El servidor rechaza campos desconocidos y valores que no sean cadenas; recorta espacios
exteriores. Solo motivo y referencia admiten saltos de línea, normalizados a LF. Genera un
snapshot JSON canónico de versión 1 con las etiquetas históricas de tipo y origen. Las lecturas
conservan esas etiquetas y cada fila física mantiene sus propios datos.
El mismo UUID con la misma carga normalizada recupera el resultado; una carga distinta no
puede reclamarlo. Corregir y anular añaden filas, con autor y motivo, sin cambiar el original.
Un rechazo de validación permite editar conservando el UUID; una respuesta incierta mantiene
congelada la carga para reintentar. La interfaz conserva ese intento en la página abierta,
incluido cerrar y reabrir el diálogo, sin garantizar persistencia tras recargar la página.
Migración y conservación histórica
La migración20260908_add_unplanned_careplanrecord.sql añade unplanned_snapshot nullable y
permite NULL en la pareja hpc_careplanline_careplankey / hpc_careplanline_version.
Conserva valores, índices y claves ajenas históricos; usa guardas compatibles con MariaDB 10.5
y MySQL 8 para poder repetirse. Debe aplicarse antes de utilizar esta entrada.
Las filas nuevas fuera de pauta usan hash_version=3, que incorpora el snapshot a la preimagen
v2. Las filas ordinarias siguen usando v2. Las preimágenes v1/v2 no cambian y el verificador
admite cadenas mixtas, rechazando versiones desconocidas.
Hoja mensual y cierres
Las referencias NULL no agrupan actos independientes ni generan falsas pautas enplan_snapshot.
La anulación conserva el detalle pero no suma una administración. Una corrección posterior al
cierre queda pendiente de un suplemento y respeta el alcance del cierre anterior.
Los nuevos cierres usan digest_version=2, separado de version, que numera cierre y
suplementos. El formato separa explícitamente las preimágenes de resumen y firma. Antes de
validar el resumen se recalcula el hash de todas las filas incluidas del mes, según la versión
de cada una; también se hace en la comprobación parcial del PDF. Así la firma cubre de forma
transitiva el snapshot de la administración. La verificación completa sigue comprobando además
la cadena. El formato de cierre 1 conserva exactamente sus bytes y su comportamiento histórico;
un formato desconocido no se considera válido.
Consulta el procedimiento de usuario.
