Flexibele relaties tussen Anveo Pages
Normaal gesproken identificeert Anveo Client Suite de relatie tussen twee Anveo Pages aan de hand van de tabelrelaties die eenmaal globaal voor alle Anveo Pages zijn opgezet. Deze opstelling wordt gedaan in ”Anveo. Bijvoorbeeld, de relatie tussen de ”Customer” en de ”Sales hoeven dus niet voor elke Anveo Page handmatig ingesteld te worden zoals in Dynamics.
Voor meer speciale scenario’s waarbij de relatie tussen twee tabellen niet via de directe relatie van veld naar veld wordt gecreëerd, kan een C/AL-code in de codeunit worden gedeponeerd. ”ACF functie CustomAnveoPageRelation die de relatie handmatig instelt. Dit maakt het bijvoorbeeld mogelijk om het bijbehorende contact voor een klant uit te voeren.
De hierboven beschreven relatie is gedefinieerd in C/AL-code in het volgende codevoorbeeld:
U kunt de bovenstaande broncode opzoeken in de ACF Events Sales & Marketing, functie CTR_CUSTOMER:CONTACT.
Het maken van een aangepaste tabelrelatie gebeurt volgens hetzelfde schema:
- Zet de recordreferentie om in een record; maak een lokale variabele aan en wijs deze toe (regel 6).
- Maak de bestemmingstabel aan als een lokale variabele. De bestemmingstabel heeft het type van de Anveo Page (in de voorbeeld tabel Contact).
- Breng het filter over naar de recordreferentie (regel 17)
Om de aangepaste tabelrelatie in het Anveo Web Portal te gebruiken is een aanroep nodig om de CustomAnveoPageRelation functie te gebruiken, met behulp van de relatiecode CTR_CUSTOMER:CONTACT:
De relatiecode CUSTOMER:CONTACT moet in de Anveo Client Suite openbaar worden gemaakt en als individuele tabelrelatie op de Anveo Page worden ingevoerd, zodat de Anveo Client Suite de handmatig gedefinieerde tabelrelatie gebruikt in plaats van globaal gedefinieerde automatische tabelrelaties. De record die wordt gebruikt voor het filteren op Anveo Pages van de typekaart wordt gedefinieerd door de record die op de kaart wordt weergegeven; in Anveo Pages van de typelijst wordt de record voor filteren gedefinieerd door de geselecteerde record.