AL - Validate Trigger erweitern

Bild Microsoft Dynamics 365 Business Central (ehem. Business-Edition)

AL - Validate Trigger erweitern

Beitragvon DWE » 4. März 2020 15:38

Hallo zusammen,

ich versuche aktuell den Tabellentrigger (OnValidate) zu erweitern. Dies ist leider nicht mehr ganz so einfach wie frĂĽher - mit allen Vor- und Nachteilen. Ich arbeite mit der BC Version 15.2 (Cloud/SAAS).

In einer Codeunit, habe ich mich per EventSubscriber an das OnAfterValidate des Feldes gehangen. Soweit sogut...

Mein Problem ist, dass der Trigger „OnAfterValidate“ auch durchlaufen wird, wenn in dem BC Standard Code im OnValidate Trigger ein Exit ist. Sprich ich will gar nicht, dass mein Code durchlaufen wird. Aber scheinbar weiß der OnAfterValidate gar nichts davon.
Gibt es eine Möglichkeit dies dem OnAfterValidateTrigger beizubringen, oder muss ich die komplette Bedingungen, die im OnValidate steht, die zum Exit führt kopieren und in meinen Trigger ebenfalls einbauen ?

Würde ja bedeuten, dass ich mit jeder neuen BC Version prüfen muss, ob sich die Bedingung im Standard geändert hat.

Ich hoffe es gibt da eine schönere Lösung/Ideen.
Bin fĂĽr jede Idee offen und dankbar :)

GruĂź Daniel
DWE
 
Beiträge: 9
Registriert: 27. Februar 2015 10:10
Realer Name: Thomas
Arbeitsort: Köln
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2009 - 2016

Re: AL - Validate Trigger erweitern

Beitragvon m_schneider » 4. März 2020 15:55

DWE hat geschrieben:...
Mein Problem ist, dass der Trigger „OnAfterValidate“ auch durchlaufen wird, wenn in dem BC Standard Code im OnValidate Trigger ein Exit ist. Sprich ich will gar nicht, dass mein Code durchlaufen wird. Aber scheinbar weiß der OnAfterValidate gar nichts davon.
Gibt es eine Möglichkeit dies dem OnAfterValidateTrigger beizubringen, oder muss ich die komplette Bedingungen, die im OnValidate steht, die zum Exit führt kopieren und in meinen Trigger ebenfalls einbauen ?
...

Das ist mal so. Nur weil im OnValidate ein EXIT steht, heiĂźt das nicht, das OnAfterValidate oder dein Subscriber nicht ausgefĂĽhrt wird.
Exit bedeutet ja nur "raus". Bei einem Error ist das was anderes.
MfG Michael
Benutzeravatar
m_schneider
 
Beiträge: 2141
Registriert: 20. Januar 2009 14:36
Realer Name: Michael Schneider
Arbeitsort: Treuen
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2017

Re: AL - Validate Trigger erweitern

Beitragvon DWE » 4. März 2020 19:27

Ja ok. Das habe ich auch festgestellt.

Löst nur noch nicht das Problem, das der OnAfterValidate dann gar nicht ausgeführt werden soll. Dafür suche ich eine elegante Lösung.
DWE
 
Beiträge: 9
Registriert: 27. Februar 2015 10:10
Realer Name: Thomas
Arbeitsort: Köln
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2009 - 2016

Re: AL - Validate Trigger erweitern

Beitragvon MarkusWeiland » 5. März 2020 09:59

Solange kein Error geworfen wird, ist dem Event relativ egal was der Trigger macht. Du müsstest in dem Fall tatsächlich die Prüfung im Event nachbauen.
MarkusWeiland
 
Beiträge: 205
Registriert: 18. Januar 2017 10:01
Realer Name: Markus Weiland
Arbeitsort: SaarbrĂĽcken
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV


ZurĂĽck zu 365 Business Central

Wer ist online?

Mitglieder in diesem Forum: Unbekannter Spider und 1 Gast