Nachdem wir oben ein Beispiel für einen Before-Handler besprochen haben, betrachten wir als Nächstes die Implementierung eines After-Handlers.
After-Handler werden nach den On-Handlern ausgeführt und häufig zum Anreichern ausgehender Daten verwendet.
Als Beispiel legen wir einen After-Handler für unseren CatalogService an: Wir möchten einen Rabatt von 11 % für Bücher mit einem Bestand von mehr als 200 gewähren. Dazu wird die Zeichenkette " -- 11% Rabatt!" ist an den Titel aller Bücher anzuhängen, deren Bestand 200 über einen After-Handler überschreitet.
Wir gehen analog zur Implementierung des Before-Handlers vor. Mit anderen Worten, wir legen eine Datei namens cat-service.js im Ordner srv unseres Projekts an, da dieser Ordner auch die Datei cat-service.cds enthält, die zur Definition des CatalogService verwendet wird (siehe folgende Abbildung).

Analog zu dem, was wir mit dem Before-Handler besprochen haben, legen wir eine Unterklasse von cds.ApplicationService in der Datei cat-service.js an, die wir CatalogService nennen.
Um den Buchtitel zu bearbeiten, benötigen wir nun einen After-Handler, der für READ-Operationen in der Dokumentenmappenentität registriert sein sollte. Dazu überschreiben wir die geerbte init() Methode in der angelegten Implementierungsklasse (siehe folgende Abbildung).

Um einen After-Handler in der Methode init() zu registrieren, rufen Sie die geerbte Methode after() über this.after()auf. Die Methode after() hat die folgende Schnittstelle. Eine detaillierte Beschreibung der einzelnen Parameter finden Sie in der CAP-Dokumentation.
12345function after (
event : string | string[] | '*',
entity? : CSN definition | CSN definition[] | string | string[] | '*',
handler : function
)Im gezeigten Beispiel registrieren wir die benannte Funktion this.grantDiscount für READ-Vorgänge in der Dokumentenmappenentität. Dazu gehen wir analog zur Registrierung des oben besprochenen Before-Handlers vor.

