🏗️
Arquitectura de Objetos, Campos y Lightning App Builder
Relaciones entre objetos, campos personalizados y diseño de interfaces con Lightning App Builder.
⏱️ Tiempo estimado de lectura: 30 minutos
Dominando los Objetos y Schema Builder
Los objetos son la columna vertebral de Salesforce.
- Standard Objects: No se pueden eliminar. El admin puede cambiar sus etiquetas (Rename Tabs and Labels) pero el nombre de la API permanece igual.
- Custom Objects: Tienen características que debes elegir al crear: 'Allow Reports', 'Allow Activities', 'Track Field History'.
Schema Builder: No es solo para visualizar; es una herramienta de administración que permite crear objetos y campos en tiempo real. Nota de examen: Los campos creados aquí NO se añaden automáticamente a los Page Layouts, debes hacerlo manualmente después.
- Standard Objects: No se pueden eliminar. El admin puede cambiar sus etiquetas (Rename Tabs and Labels) pero el nombre de la API permanece igual.
- Custom Objects: Tienen características que debes elegir al crear: 'Allow Reports', 'Allow Activities', 'Track Field History'.
Schema Builder: No es solo para visualizar; es una herramienta de administración que permite crear objetos y campos en tiempo real. Nota de examen: Los campos creados aquí NO se añaden automáticamente a los Page Layouts, debes hacerlo manualmente después.
Puntos Clave
- ✓ Diferencia entre ID de 15 caracteres (sensible a mayúsculas, usado en UI) y 18 caracteres (insensible, usado en API)
- ✓ Undelete: Los objetos eliminados permanecen en la papelera 15 días
- ✓ Objetos Externos: Acceden a datos fuera de Salesforce sin ocupar almacenamiento
- ✓ Los objetos personalizados siempre incluyen el sufijo '__c'
Relaciones: Master-Detail, Junction y Jerarquía
Las relaciones definen cómo fluyen los datos y la seguridad.
- Master-Detail: El padre controla la visibilidad. Si el padre se borra, los hijos se borran (Cascade Delete). Reparenting: Por defecto no se puede, a menos que marques la casilla 'Allow Reparenting' en el campo.
- Junction Objects: Crean relaciones N:N (Muchos a Muchos). Un objeto con dos relaciones Master-Detail (ej: Candidatos y Puestos de Trabajo vinculados por 'Aplicación').
- Hierarchical Relationship: Solo existe en el objeto User para crear jerarquías de mánagers.
- Master-Detail: El padre controla la visibilidad. Si el padre se borra, los hijos se borran (Cascade Delete). Reparenting: Por defecto no se puede, a menos que marques la casilla 'Allow Reparenting' en el campo.
- Junction Objects: Crean relaciones N:N (Muchos a Muchos). Un objeto con dos relaciones Master-Detail (ej: Candidatos y Puestos de Trabajo vinculados por 'Aplicación').
- Hierarchical Relationship: Solo existe en el objeto User para crear jerarquías de mánagers.
Puntos Clave
- ✓ Un objeto puede tener máximo 2 relaciones Master-Detail
- ✓ No puedes crear una relación Master-Detail si el objeto ya tiene registros (truco: crea Lookup, llena los datos y convierte a M-D)
- ✓ Lookup: El campo puede ser opcional o requerido; no afecta al Owner del registro
- ✓ Roll-up Summary: Solo disponibles en el objeto Maestro de una relación M-D
Tipos de Campo y Conversión de Datos
Salesforce tiene tipos de campo específicos con reglas de conversión críticas.
- External ID: Campo único usado para importar datos de sistemas externos (máximo 25 por objeto).
- Formula Fields: Cálculos automáticos. No se pueden editar. Pueden usar datos de objetos padres (Cross-object formulas).
- Conversión: Cambiar de 'Checkbox' a 'Text' es seguro. Cambiar de 'Text' a 'Pickist' puede causar pérdida de datos si los valores no coinciden.
- External ID: Campo único usado para importar datos de sistemas externos (máximo 25 por objeto).
- Formula Fields: Cálculos automáticos. No se pueden editar. Pueden usar datos de objetos padres (Cross-object formulas).
- Conversión: Cambiar de 'Checkbox' a 'Text' es seguro. Cambiar de 'Text' a 'Pickist' puede causar pérdida de datos si los valores no coinciden.
Puntos Clave
- ✓ Roll-up Summary: Tipos soportados: COUNT, SUM, MIN, MAX
- ✓ Geolocation: Almacena latitud y longitud como un solo campo
- ✓ Auto-number: Genera IDs secuenciales personalizados (ej: INV-001)
- ✓ Si conviertes un campo Master-Detail a Lookup, pierdes los campos Roll-up Summary
Record Types, Path y Formatos
Los Record Types son la herramienta principal para la segmentación de procesos.
Flujo lógico del examen:
1. Crea el Business Process (etapas de ventas/soporte).
2. Crea el Record Type y asígnale el proceso.
3. Asigna el Page Layout al Record Type y al Perfil del usuario.
Path: Herramienta visual en Lightning para guiar a los usuarios a través de las etapas de un proceso. Puedes añadir 'Key Fields' y 'Guidance for Success' en cada etapa.
Flujo lógico del examen:
1. Crea el Business Process (etapas de ventas/soporte).
2. Crea el Record Type y asígnale el proceso.
3. Asigna el Page Layout al Record Type y al Perfil del usuario.
Path: Herramienta visual en Lightning para guiar a los usuarios a través de las etapas de un proceso. Puedes añadir 'Key Fields' y 'Guidance for Success' en cada etapa.
Puntos Clave
- ✓ Un Record Type controla: Valores de Picklist, Page Layouts y Procesos de Negocio
- ✓ Para objetos estándar como Accounts o Contacts, NO necesitas crear un proceso previo
- ✓ Los administradores pueden asignar Record Types a través de Perfiles o Permission Sets
- ✓ Si un usuario solo tiene acceso a un Record Type, Salesforce no le pedirá elegir uno al crear un registro
Lightning App Builder y FlexiPages
El Lightning App Builder crea 'FlexiPages'.
Niveles de Asignación (Jerarquía):
1. Org Default: Lo que todos ven si no hay nada más específico.
2. App Default: Sobrescribe el Org Default para una aplicación específica (ej: App de Ventas).
3. App, Record Type, and Profile: El nivel más granular y potente.
Dynamic Forms: Permiten visibilidad condicional a nivel de CAMPO. Esto elimina la necesidad de crear decenas de Page Layouts solo para ocultar campos según el estado del registro.
Niveles de Asignación (Jerarquía):
1. Org Default: Lo que todos ven si no hay nada más específico.
2. App Default: Sobrescribe el Org Default para una aplicación específica (ej: App de Ventas).
3. App, Record Type, and Profile: El nivel más granular y potente.
Dynamic Forms: Permiten visibilidad condicional a nivel de CAMPO. Esto elimina la necesidad de crear decenas de Page Layouts solo para ocultar campos según el estado del registro.
Puntos Clave
- ✓ Dynamic Actions: Permiten mostrar botones (ej: 'Cerrar Caso') basados en criterios lógicos
- ✓ Componentes de Análisis: Puedes insertar reportes directamente en la página de un registro
- ✓ Mobile Compatibility: Puedes previsualizar cómo se verá la página en teléfonos y tablets
- ✓ Rich Text Component: Se usa para mostrar avisos o instrucciones visuales en la página