ich hab folgendes Problem:
Ich habe in einem Trigger eine Programmierung gemacht, die einen Lagerplatz in mehreren Tabellen per VALIDATE ändern soll. Sollte es dabei einen Error geben, soll die Verarbeitung aber nicht abbrechen, sondern es soll eine MESSAGE ausgegeben werden und zwar jedes Mal, wenn ein Error auftritt.
Meine Programmierung sieht wie folgt aus:
OnValidate wird folgendes ausgefĂĽhrt:
- Code: Alles auswählen
IF (xRec.Default <> Default) AND Default THEN BEGIN
ChangeBinCode("Item No.","Variant Code","Location Code","Bin Code");
END;
Danach folgt die Funktion ChangeBinCode:
- Code: Alles auswählen
SalesLine.RESET;
SalesLine.SETRANGE(Type,SalesLine.Type::Item);
SalesLine.SETRANGE("No.",ItemNo);
SalesLine.SETRANGE("Variant Code",Variant);
SalesLine.SETFILTER("Location Code",'%1|''''',Location);
IF SalesLine.FINDFIRST THEN BEGIN
REPEAT
ChangeBin.SetSalesLine(SalesLine);
IF NOT ChangeBin.RUN THEN
MESSAGE(Text50000,SalesLine."Document Type",SalesLine."Document No.",SalesLine."Line No.");
UNTIL SalesLine.NEXT = 0;
END;
PurchLine.RESET;
PurchLine.SETRANGE(Type,PurchLine.Type::Item);
PurchLine.SETRANGE("No.",ItemNo);
PurchLine.SETRANGE("Variant Code",Variant);
PurchLine.SETFILTER("Location Code",'%1|''''',Location);
IF PurchLine.FINDFIRST THEN BEGIN
REPEAT
ChangeBin.SetPurchLine(PurchLine);
IF NOT ChangeBin.RUN THEN
MESSAGE(Text50000,PurchLine."Document Type",PurchLine."Document No.",PurchLine."Line No.");
UNTIL PurchLine.NEXT = 0;
END;
Als Beispiel mal die Verarbeitung, wenn sie über Sales Line und Purchase Line läuft.
Das Problem ist aber, sobald er auf mehrere Errors stößt, bekomme ich trotzdem immer nur eine Message angezeigt, obwohl ich mehrere haben wollte.
Hat jemand eine Idee, was ich machen muss?