Kruisverwijzingen of cross references is de term die we gebruiken voor de verzameling aan informatie over welke klasse waar wordt gebruikt. Om kruisverwijzingen te kunnen gebruiken, moet je die op geregelde tijdstippen bijwerken. Anders loop je het risico dat nieuwe code niet mee wordt opgenomen en dat je dus verouderde informatie te zien krijgt.
opbouwen van kruisverwijzingen
Het opbouwen van kruisverwijzingen kan best op een vast tijdstip gebeuren. Zo hebben we op kantoor afgesproken dat dit altijd gebeurt op de dag dat nieuwe code voor testen naar de acceptatieomgeving gezet wordt. Zodra de nieuwe code beschikbaar is, en de hercompilatie en synchronisatie is in orde, wordt het opbouwen van de kruisverwijzingen opgestart.
Dit opstarten doe je via de menuoptie Extra - ontwikkelingshulpmiddelen - kruisverwijzingen - periodiek - bijwerken.
Let wel : je mag rekenen op 2 uur tot nog langer afhankelijk van hoe lang het geleden is dat je de kruisverwijzingen nog eens hebt bijgewerkt.
gebruiken van kruisverwijzingen
Wil je na het bijwerken effectief gebruik maken van de kruisverwijzing, dan ga je naar de AOT. Hieronder zie je het pictogram van de AOT in rood omcirkeld. Daaronder zie je de structuur van de AOT. Je kan nu door de boomstructuur bladeren tot je bij het gewenste stuk code bent. Dit kan een tabelklasse zijn, een klasse of een job.

Heb je je keuze van object gemaakt, dan selecteer je dit object en je klikt met de rechtermuisknop. Je krijgt nu een snelmenu te zien. Hierin kies je voor Add-ins - kruisverwijzing - gebruikt.

Hieronder zie je het scherm dat getoond wordt als je van de kruisverwijzingen gebruik maakt.

Je kan dit scherm afdrukken, maar het kan ook nog eenvoudiger én handiger. Plaats de cursor in de linkerbovenhoek. Als je hierin klikt, dan selecteer je alle rijen. Daarna kan je via editeer - kopieer alle gegevens in een Excel werkboek plaatsen. Hierin kan je dan zelf je bladspiegel bewerken en ook nog filters opzetten naar believen.
Visual MorphXplorer
Je kan ook gebruik maken van Visual MorphXplorer om een object en gerelateerde objecten te bekijken. Hiervoor selecteer je het object en je klikt met de rechtermuisknop. In het snelmenu dat dan verschijnt, kies je voor Add-ins - Visual MorphXplorer.

Je ziet nu een diagram waarin het object (in dit geval de klasse IBA_UpdateServiceCall) al is getekend. Je kan de klasse selecteren en met de rechtermuisknop kiezen wat je wenst te zien. Hieronder zie je dat deze klasse nog gebruik maakt van 2 andere klassen.

In het onderstaande diagram hebben we de 2 klassen waarvan IBA_UpdateServiceCall van gebruik maakt, ook getekend. Je kan nu ook deze klassen selecteren en verder in het diagram tekenen welke klassen of tabellen zij gebruiken.

Als je op het pictogram van de diskette klikt, kan je dit diagram bewaren om later verder te bewerken.

Je kan ook een nieuwe klasse toevoegen aan het diagram. Dit is vooral nuttig als je alle relaties van de reeds getekende klassen hebt uitgeput en je het diagram wil uitbreiden. Als je "nieuwe klasse" aanklikt, toont Axapta je een overzicht van de reeds gekende klassen. Als je een klasse selecteert, wordt deze gekozen klassen in het diagram vermeld en kan je dit verder uitbreiden door in het snelmenu te kiezen voor "onderliggende klasse", "bovenliggende klasse", "gebruikt" of "gebruikt door'.

gebruik van klassen
Kruisverwijzingen antwoorden op twee vragen : waarvan maakt een bepaalde klasse gebruik en door welke andere klassen wordt die klasse gebruikt.
maakt gebruik van
In de AOT selecteer je een klasse. Hieronder nemen we als voorbeeld IBA_AquawardsInterfaceBase.

Klik met de rechtermuisknop. Je krijgt nu een snelmenu te zien. Ga naar Add-Ins, kruisverwijzing en kies "Gebruikt".

Je krijgt nu een overzicht van de verschillende methodes van IBA_AwuawardsInterfaceBase te zien en de klassen waar deze methodes gebruik van maken.
Bovenstaande scherm is een samenvatting van wat je in de code ook kan zien.

wordt gebruikt door
Het wordt al een pak interessanter als je een overzicht kan krijgen van alle plekken in Axapta waar een bepaalde klasse wordt gebruikt. Hiervoor kies je "Add-ins"-kruisverwijzing - "gebruikt door".

Hieronder krijg je een overzicht van alle plaatsen in de code waar IBA_AquawardsInterfaceBase wordt gebruikt. Onder meer de klasse IBA_UpdateServiceCall wordt vermeld.

En in de code van IBA_UpdateServiceCall vinden we inderdaad IBA_AquawardsInterfaceBase terug.






