Wie man sowas konkret löst? Naja, es ist eigentlich blödsinn sich hier auf solch eine Diskussion einzulassen. Weil ihr euch einfach ein paar Zeilen Code zusammen stellt, der völlig aus der Luft gegriffen und speziell mit Schwierigkeiten bepackt ist. Normalerweise löst man ein Problem und da muss man sich vielleicht mal fragen, ob man nicht vielleicht schon einen grundsätzlichen Desginfehler gemacht hat. Und man schon an ganz anderer Stelle etwas ändern muss, damit sich der Knoten der Problemstelle löst.
Aber nun gut, versuchen wir es mal mit der eingeschrängten Sichtweise...
Zitat von
Luckie:
Code:
if Belegnummer = 0 then
exit
if Belegdatum = 0 then
exit
if x = 0 then
exit
if y = 0 then
exit
wenn man da einen Rückgabewert realisieren muss, sieht das sowieso schonmal ganz anders aus...
Code:
if Belegnummer = 0 then begin
Result:='Fehler: Belegnummer';
exit;
end;
if Belegdatum = 0 then begin
Result:='Fehler: Belegdatum';
exit;
end;
if x = 0 then begin
Result:='Fehler: x';
exit;
end;
if y = 0 then begin
Result:='Fehler y';
exit;
end;
und nunmal ohne exit...
Code:
fehler:='';
if Belegnummer = 0 then
fehler:='Fehler: Belegnummer'
else if Belegdatum = 0 then
fehler:='Fehler: Belegdatum'
else if x = 0 then
fehler:='Fehler: x'
else if y = 0 then
fehler:='Fehler: y';
if fehler = '' then
// mache was, es ist alles ok
Result:=fehler;
Zitat von
Luckie:
Und eine
Exception ist im Endeffekt kein Sprungbefehl?
Ich habe nie behauptet, das Exceptions keine Sprungbefehle sind. Aber meine Aussage, um die es in Wirklichkeit ging nämlich das man kein exit, goto, break braucht, wird dadurch nicht entkräftet.
Gruss
Thorsten