Anveo Web Portal / Personalizar la interfaz de usuario / Relaciones flexibles entre Anveo Pages
This is an automatic translation. The original post is available in Inglés.

Relaciones flexibles entre Anveo Pages

Normalmente Anveo Client Suite identifica la relación entre dos Anveo Pages usando las relaciones de tabla que se establecen una vez globalmente para todas las Anveo Pages. Esta configuración se realiza en »Anveo. Por ejemplo, la relación entre la »Customer» y el »Sales por lo tanto no tienen que ser configurados manualmente para cada constelación de Anveo Page como en Microsoft Dynamics 365 Business Central.

Para escenarios más especiales en los que la relación entre dos tablas no debe crearse mediante la relación directa de campo a campo, se puede depositar un código C/AL en la codeunit »ACF función CustomAnveoPageRelation que establece la relación manualmente. Esto permite, por ejemplo, dar salida al contacto correspondiente para un cliente.

La relación descrita anteriormente se define en el código C/AL en el siguiente ejemplo de código:

// Show related company contact from customer
// Data Source: Customer
// Destination: Contact

// 1. Set table reference
RecRef.SETTABLE(Customer);
Mgt.OPENRecRef(DATABASE::Contact,DestRecRef);

// 2. Filter
ContBusRel.RESET;
ContBusRel.SETCURRENTKEY("Link to Table","No.");
ContBusRel.SETRANGE("Link to Table",ContBusRel."Link to Table"::Customer);
ContBusRel.SETRANGE("No.",Customer."No.");
IF ContBusRel.FINDFIRST THEN
Contact.GET(ContBusRel."Contact No.");
Contact.SETRECFILTER;
// 3. Copy Filters to DestRecRef
DestRecRef.SETVIEW(Contact.GETVIEW);
Código fuente de la relación de la tabla personalizada entre el cliente y su contacto correspondiente

Puede consultar el código fuente que se muestra arriba en la función CTR_CUSTOMER:CONTACTAR de ACF Events Sales & Marketing.

La creación de una relación de tabla personalizada se realiza según el mismo esquema:

  • Convertir la referencia del registro en un registro; crear una variable local y asignarla (línea 6).
  • Cree la tabla de destino como una variable local. La tabla de destino tiene el tipo de Anveo Page destino (en la tabla de ejemplo Contacto).
  • Transferir el filtro a la referencia de registro (línea 17)

Para utilizar la relación de tabla personalizada en el Anveo Web Portal se necesita una llamada a la función CustomAnveoPageRelation, utilizando el código de relación CTR_CUSTOMER:CONTACT:

CASE RelationCode OF
'CUSTOMER:CONTACT': "CTR_CUSTOMER:CONTACT"();
END;

El código de relación CUSTOMER:CONTACT debe hacerse público en la configuración de Anveo Client Suite y debe introducirse en la Anveo Page como relación de tabla individual, de modo que Anveo Client Suite utilice la relación de tabla definida manualmente en lugar de las relaciones de tabla automáticas definidas globalmente. El registro utilizado para el filtrado en Anveo Pages de tipo tarjeta se define por el registro mostrado en la tarjeta; en Anveo Pages de tipo lista el registro para el filtrado se define por el registro seleccionado.