FullCalendar en Salesforce vs MultiDatePick: ¿qué calendario LWC es más personalizable?
Uno es un motor de calendario en JavaScript sobre el que construyes. El otro es un calendario de Salesforce que configuras. Aquí tienes cada punto de la lista habitual de un "calendario personalizable", lado a lado, incluidos los casos en que FullCalendar es la mejor opción.
Pide "un calendario LWC súper personalizable para Salesforce" y siempre salen dos nombres: FullCalendar, el calendario JavaScript de código abierto que ahora incluye un wrapper oficial como Lightning Web Component, y MultiDatePick, una suite nativa de calendario y reservas. De los dos se dice que son personalizables. Pero cada uno lo entiende de una forma muy distinta.
FullCalendar se personaliza con código: le pasas un objeto de opciones, escribes callbacks y construyes tú la parte de Salesforce (el Apex que carga los registros, el guardado, los permisos). MultiDatePick se personaliza con ajustes: más de 130 repartidos en sus tres componentes, definidos en un asistente de configuración o en Lightning App Builder, sobre cualquier objeto estándar o personalizado. Sin necesidad de Apex.
La lista de comprobación, lado a lado
Estas son las funciones que se piden cuando alguien busca un calendario de Salesforce personalizable. "Integrado" significa que un administrador lo activa con unos clics. "Lo construyes tú" significa que un desarrollador escribe el código.
| Función | MultiDatePick | FullCalendar LWC |
|---|---|---|
| Vistas | Cinco integradas: calendario mensual, línea de tiempo de recursos, semana por horas, mapa de calor de ocupación y lista de agenda, elegidas en cada ubicación | Mes, semana, día y lista; las vistas de línea de tiempo y de recursos requieren una licencia Premium |
| Arrastrar y soltar | Arrastra una reserva en la línea de tiempo para moverla y tira de su borde para cambiar su duración; arrastra sobre varios días para elegir un rango | Arrastrar, soltar y redimensionar, con callbacks que escribes tú |
| Colores a partir de campos de Salesforce | Un color para cada valor de cualquier lista de selección, mostrado como relleno, barras o ambos, con botones de filtro | Asignas los colores a los valores de campo en JavaScript |
| Objetos personalizados como origen | Cualquier objeto con un campo Date o Date/Time, estándar o personalizado, incluidos Tarea y Evento | Escribes tú el Apex y la capa de datos |
| Filtros | Botones de filtro por estado, un filtro de registros como OwnerId=ME; Status__c=Confirmed, filtros de recursos y estados ocultos | Construyes tú los filtros |
| Detalles del evento y enlaces al registro | Tarjeta al pasar el cursor con cualquier campo (también búsquedas), nombres en los días del mes, columnas extra en la Agenda y un clic para abrir el registro | Control total del renderizado de eventos en código |
| Etiquetas y botones | Etiquetas del botón, del título, de guardar y del registro, qué vistas aparecen en el selector y tamaños desde diminuto hasta ancho completo | Barra de herramientas configurable en código |
| Guardar registros | Escribe tus registros al guardar: uno por fecha, por rango, por bloque horario o por recurso; o devuelve las fechas a un flujo de pantalla (Screen Flow) | Construyes tú el guardado |
| Reglas de reserva | Capacidad, comprobación de conflictos, antelación mínima, ventana de reserva móvil, márgenes, horario comercial y días bloqueados por recurso | Las construyes tú |
| Idiomas y zonas horarias | Nueve idiomas, con fechas y horas en la configuración regional y la zona horaria de Salesforce de cada usuario | Amplias opciones de configuración regional y zona horaria en código |
| Seguridad | Cada consulta y cada guardado se ejecutan como el usuario que ve la página, así que se aplican la colaboración y la seguridad a nivel de campo. Ha superado la revisión de seguridad (Security Review) de Salesforce | Depende del Apex que escribas |
| Mantenimiento | El proveedor publica las actualizaciones en el paquete | Tu código, que debes mantener al día |
Términos de FullCalendar y dónde están en MultiDatePick
Si conoces FullCalendar, casi todo su vocabulario tiene un equivalente directo. La diferencia es que cada uno es un ajuste, no una función que tengas que escribir:
| FullCalendar | Ajuste de MultiDatePick |
|---|---|
eventSources | Objeto relacionado y Campo de fecha, más un campo de acumulación que también carga registros a hasta cinco búsquedas de distancia |
| Eventos de fondo | Fechas bloqueadas: cierres, festivos y ausencias desde cualquier objeto, días completos o parte del día, con el motivo visible |
businessHours | Horario comercial por recurso, leído de dos campos del registro del recurso |
eventOverlap, selectOverlap | Comportamiento ante conflictos (bloquear, omitir o permitir) y una capacidad por recurso |
validRange, selectConstraint | Fecha mínima y máxima, días de antelación, antelación mínima y un margen entre reservas |
select, dateClick | Elegir varias fechas, arrastrar un rango, añadir un patrón recurrente, elegir franjas horarias |
eventDrop, eventResize | Arrastrar en la línea de tiempo para mover o cambiar la duración, con guardado al soltar y comprobación previa de días cerrados y conflictos |
eventClick | Abre el registro, o el Modo edición para cambiar el estado, la fecha, la hora o el recurso de varios registros a la vez |
eventContent, ventanas emergentes | Campos al pasar el cursor, nombres en los días del mes y columnas de la Agenda |
resources | Objeto de recurso: salas, equipos, vehículos o personas (cualquier objeto, incluido Usuario) |
slotDuration, slotMinTime | Intervalo de tiempo y la hora mínima y máxima |
locale, timeZone | Automático: el idioma, la configuración regional y la zona horaria de Salesforce de cada usuario |
Cuándo FullCalendar es la mejor opción
FullCalendar se ha ganado su fama, y para algunos proyectos es la herramienta adecuada:
- Necesitas un tipo de vista que nadie ofrece, como un tablero de planificación trimestral o un diseño de despacho a medida.
- Quieres dibujar cada evento píxel a píxel, con tu propio HTML e iconos dentro de la barra.
- Tus eventos vienen de fuera de Salesforce, de varias API a la vez.
- Tienes desarrolladores para construir el Apex, el guardado, las pruebas y los permisos, y para mantenerlos.
- Solo necesitas mostrar eventos y quieres la biblioteca principal gratuita.
Si ese es tu proyecto, FullCalendar es una buena base. Si lo que necesitas es un calendario que funcione con tus registros de Salesforce esta misma semana, aún te queda mucho camino.
Dónde MultiDatePick te ahorra el desarrollo
El trabajo que FullCalendar te deja a ti es justo el que MultiDatePick ya trae hecho:
Elegir varias fechas
Días sueltos, rangos y patrones recurrentes, guardados como registros secundarios o enviados a un flujo de pantalla.
Reservas con capacidad
Indicadores de capacidad en tiempo real, comprobación de conflictos al guardar y varios recursos en una sola reserva.
Reglas que se cumplen
Antelación, ventana de reserva, márgenes, horario comercial y cierres, aplicados al elegir y al arrastrar.
Un asistente de configuración
Tres preguntas sobre tus registros y, después, todos los ajustes con una vista previa en vivo del calendario real.
Flujos de pantalla
Las fechas, rangos y horas seleccionados salen como variables de Flow para tus siguientes pasos.
Páginas de reserva públicas
Sitios de Experience Cloud con usuarios invitados, el mismo calendario y las mismas reglas.
No solo para reservas
MultiDatePick es conocido por las reservas, pero también es un calendario para los registros que ya tienes. Colócalo en una página de cuenta y muestra las tareas de la cuenta, incluidas las de sus contactos y oportunidades. Muestra fechas de cierre de oportunidades, días de eventos de campaña o hitos de proyecto en cualquier objeto. Activa Show All Records con un filtro de registros como OwnerId=ME para tener un calendario personal, o usa las vistas de solo lectura Agenda y Ocupación para seguir la planificación sin editarla.
Preguntas frecuentes
¿Cuál es el calendario LWC más personalizable para Salesforce?
Depende de quién lo personalice. El wrapper LWC de FullCalendar da la máxima libertad a los desarrolladores, porque todo es código. MultiDatePick da a los administradores el mayor número de opciones integradas: más de 130 ajustes en tres componentes, cinco vistas y seis formas de guardar registros, todo sin Apex.
¿FullCalendar es gratis en Salesforce?
La biblioteca principal es de código abierto. Las vistas de línea de tiempo y de recursos son funciones Premium que requieren una licencia comercial, y la parte de Salesforce (cargar registros, guardar, la seguridad y las pruebas) es código que escribes y mantienes tú.
¿MultiDatePick necesita Apex o un desarrollador?
No. Lo configuras en el asistente de configuración o en Lightning App Builder, sobre cualquier objeto estándar o personalizado. Los registros se cargan y se guardan como el usuario que ve la página, con la colaboración y la seguridad a nivel de campo aplicadas.
¿MultiDatePick puede mostrar tareas, eventos y oportunidades?
Sí. Funciona con cualquier objeto que tenga un campo Date o Date/Time, estándar o personalizado. Un campo de acumulación añade registros que apuntan al registro de la página desde más lejos, como las tareas de los contactos de una cuenta.
¿MultiDatePick incluye una línea de tiempo de recursos?
Sí. Las vistas de línea de tiempo, semana, mapa de calor de ocupación y agenda vienen incluidas con el calendario, sin licencia adicional. Un único plan con todas las funciones.
Un calendario personalizable, sin tener que desarrollarlo.
Explora la demo en vivo o empieza con una configuración lista para usar de la Config Library.
- US$20/usuario/mes, todas las funciones
- Prueba gratis de 30 días, sin tarjeta
- 100 % nativo de Salesforce
- Sin Apex
- Próximamente en Salesforce AppExchange