Una asociación es una relación entre dos objetos que dice cómo se vinculan sus registros. Es lo que permite que Employee Central sepa que un departamento pertenece a una división, que una ubicación sirve a una entidad legal o que una entidad legal tiene datos propios de su país. Sin asociaciones, los objetos de fundamento serían listas sueltas, sin estructura.
Su uso más visible es el filtrado de desplegables. Cuando alguien contrata a un empleado en AR01, el desplegable de ubicaciones debería mostrar Buenos Aires y Córdoba, no todas las oficinas de Best Run en el mundo. Ese filtro evita que un empleado quede en un departamento o una ubicación que no corresponde a su empresa, y con él protege los reportes, los permisos y la nómina que dependen de esos datos.
La academia oficial distingue dos tipos principales: valid-when, que arma filtros y jerarquías, y compuesta, que une un padre con un hijo que no existe sin él. Las dos tienen una multiplicidad, uno a uno o uno a muchos. La definición ofrece un tercer tipo, Join By, que la academia no usa en EC Core.
Dónde se configura una asociación depende del tipo de objeto. Entre objetos MDF, se configura en Configurar definiciones de objetos, en la sección de asociaciones de la definición. En los objetos legacy, va en el modelo de datos corporativo, dentro del elemento del objeto. Y cuando un objeto MDF necesita apuntar a uno legacy, se usa un objeto wrapper como destino.
Una asociación tiene dos niveles. La definición dice que la relación existe; el registro dice con qué valores concretos. En el caso del curso, la definición de Departamento tiene una asociación con la división, y el registro AR_RRHH tiene cargada AR_DIV. Los valores de las asociaciones de la estructura de Best Run Argentina se cargan en la L1, y en la L3 se recorren las definiciones y se prueba el filtro en Añadir nuevo empleado.
Para que un filtro funcione en un formulario hace falta, además, una segunda capa: los criterios de campo, que le dicen al campo de qué otro campo toma el valor que filtra. En los campos del empleado se configuran en el modelo de datos de sucesión, que se ve en la U3.
La Tabla 3.2 de la lección resume las asociaciones del caso: división con unidad de negocio, departamento con división, ubicación con entidad legal, cust_Cochera con ubicación mediante el wrapper y entidad legal con su objeto de Argentina. La última consigna del ejercicio de la L3 pide completar esa misma tabla, con el tipo de cada relación y dónde se configura.
El consejo de la lección es dibujar el árbol de la estructura con el cliente antes de configurar: cada línea del dibujo es una asociación.
