Bitrix24 y Site Management
Módulo local de Bitrix24: límites, actualizaciones y mantenimiento
Cómo delimitar la responsabilidad de un módulo local, separar la lógica de negocio de la interfaz y preparar un cambio para su mantenimiento.

Un módulo local reúne la lógica de aplicación relacionada. Pero la ruta /local/modules/ no hace que una solución sea independiente de la versión de la plataforma. Hay que definir responsabilidades, dependencias y procesos que comprobar después de actualizar.
Este artículo trata la estructura de la solución. No es un instalador listo para usar ni promete compatibilidad con todas las ediciones de Site Management y Bitrix24.
Cuándo tiene sentido un módulo
Es útil cuando una función tiene ajustes, datos, permisos, operaciones de integración o varios puntos de entrada propios. Por ejemplo, la misma comprobación puede hacer falta en una interfaz, un agente y una operación administrativa.
Si basta una pequeña configuración de una herramienta estándar, añadir un módulo puede ser innecesario. La decisión depende del ciclo de vida de la función, no del tamaño del primer fragmento de código.
Una operación: una responsabilidad de aplicación
Supongamos que hay que aceptar una solicitud y enviarla a un sistema externo. Conviene distinguir tres partes:
| Parte | Responsabilidad |
|---|---|
| Punto de entrada | Recibir la solicitud, comprobar sesión y permisos, preparar la respuesta |
| Operación de aplicación | Validar reglas de la solicitud y modificar su estado de forma coherente |
| Adaptador externo | Construir la solicitud externa, interpretar el resultado y clasificar el error |
Esto no requiere tres grandes frameworks ni una jerarquía compleja. Permite cambiar la interfaz sin reescribir el intercambio y evita que un error de integración se pierda dentro de una respuesta HTML.
Compruebe los permisos en el servidor. Ocultar un botón no impide enviar una solicitud directa. En una operación en segundo plano, indique quién la inició y en nombre de quién puede modificar datos.
Utilizar conscientemente los puntos de extensión
Los eventos permiten conectar lógica propia a un momento de una operación. Antes de registrar un manejador, compruebe su firma, condiciones y consecuencias de error en la versión concreta del módulo.
Una operación de red larga merece una evaluación aparte: dentro de una solicitud del usuario, la indisponibilidad externa puede retrasar todo el proceso. Según la tarea, puede convenir una cola.
La documentación de D7 y EventManager ayuda a encontrar mecanismos disponibles. Usar métodos internos no documentados exige más comprobaciones al actualizar: que un método exista en una versión no garantiza un contrato estable.
Datos e instalación
Instalar, actualizar y desinstalar son operaciones distintas. Actualizar no debería exigir eliminar el módulo y perder datos acumulados. La decisión sobre conservar datos al desinstalar debe quedar clara para el administrador.
Describa los cambios de estructura de datos como pasos que se puedan repetir. Compruebe una instalación nueva y la actualización desde la versión anterior compatible. El alcance de esta comprobación depende de los cambios reales.
Al usar ORM hay que comprobar por separado las reglas de negocio de la entidad. Guardar genéricamente un registro no siempre equivale a la operación estándar del producto con todos sus eventos, permisos y efectos secundarios.
Qué entregar al desarrollador de mantenimiento
- Propósito del módulo y límites de responsabilidad.
- Entorno compatible y dependencias importantes.
- Puntos de entrada, eventos, trabajos en segundo plano y ajustes.
- Procedimiento de instalación, actualización y recuperación del estado anterior.
- Ejemplos de métodos públicos y errores esperados.
- Procesos breves de comprobación tras cambios o actualizaciones.
Resulta especialmente útil un ejemplo de operación fallida: cómo detectar el problema, dónde buscar el diagnóstico y cuándo se puede repetir. Así el proyecto depende menos de la memoria del autor.
Cómo comprobar que está listo
Pida a otro desarrollador que complete un proceso principal siguiendo la documentación y explique qué sucedería ante un error. Si necesita buscar al autor y preguntarle por ajustes implícitos, la transferencia todavía no está terminada.