[CC] Form nach Error nicht schliessen

11. Mai 2011 16:37

Hallo Foristen :)

Ich hab da mal eine Frage. Ich habe in ein einer Codeunit eine Funktion, welche nach bestimmten Kriterien prüft ob eine Einkaufszeile noch (manuell) geändert werden darf. Diese Codeunit verwendet auch noch eine Funktion, welche in der Tabelle 39 (Purchase Line) liegt - soviel zum "Aufbau".
Im OnModifyRecord der (Sub)Form 54 wird diese Funktion zu Beginn aufgerufen. Wenn in der Funktion nun jedoch ein Fehler auftritt (weil die Zeile nicht mehr änderbar ist) schließt sich die Form. Auch wenn ich den Code in den OnModify der Tabelle verlagere passiert das.

Habt ihr eine Idee wie man das am unaufwendigsten umgehen kann?

Vielen Dank vorab und viele Grüße
Simon

Re: [CC] Form nach Error nicht schliessen

11. Mai 2011 17:49

Hi Simon,


kannst du nicht anstelle eines Erros eine Message ausgeben und direkt danach die Funktion mit "Exit" verlassen.

Nur mal eine schnelle Idee:-)

Ich hoffe, es hilft!

Gruß
Aydin

Re: [CC] Form nach Error nicht schliessen

12. Mai 2011 14:03

Hi Aydin,

Danke für deine Antwort.

Jein. Da hab ich auch schon dran gedacht. Aber dann müsste ich den OnModify der Form mit EXIT(FALSE) verlassen. Dann sieht es aber erst so aus als wäre etwas geändert worden und wenn man die Zeile einmal verlässt und wieder neu selektiert steht trotzdem der alte Wert drin. Das ist für die User (und meinen Chef :wink: ) etwas zu unschön glaube ich.
Ich verstehe halt nicht, wieso deshalb die Form zu geht. Wenn ich einen unzulässigen Wert in ein Feld eingebe, kommt schließlich auch eine Fehlermeldung, bei der die Form offen bleibt.

Gibt's vielleicht noch andere Ideen?

Gruß
Simon

Re: [CC] Form nach Error nicht schliessen

12. Mai 2011 15:38

Hallo Kleba,

es gibt auch Trigger in denen sich das Form bei einem Fehler nicht schliesst... müsste in der C/AL Onlinehilfe stehen.

LGJens

Re: [CC] Form nach Error nicht schliessen

12. Mai 2011 16:32

Kleba hat geschrieben:Im OnModifyRecord der (Sub)Form 54 wird diese Funktion zu Beginn aufgerufen. Wenn in der Funktion nun jedoch ein Fehler auftritt (weil die Zeile nicht mehr änderbar ist) schließt sich die Form. Auch wenn ich den Code in den OnModify der Tabelle verlagere passiert das.

Das sollte eigentlich nicht sein. Bei OnModifyRecord sollte die Form eigentlich nicht geschlossen werden und bei OnModify der Tabelle sowieso nicht. Vielleicht liegt es an dem, was du da machen möchtest. Oder vielleicht auch an der Version (Build No.).

Re: [CC] Form nach Error nicht schliessen

12. Mai 2011 16:35

Aus der Online-Hilfe zu OnModifyRecord:
NAV Online Help hat geschrieben:Remarks

If an error occurs in the trigger code, the action is canceled, but the form is not closed.

You can write to the database using this trigger.