[Gelöst] - Vendor OnInsert - Lösbar mit Event?

19. Juli 2018 11:21

Ich hatte bisher eine Anpassung auf dem OnInsert-Trigger der Tabelle 23, die folgendermassen aussieht (Code ist nur Ausschnitt)

Code:
IF "Invoice Disc. Code" = '' THEN
  "Invoice Disc. Code" := "No.";

// -@01
{ Orig.
IF NOT (InsertFromContact OR (InsertFromTemplate AND (Contact <> ''))) THEN
  UpdateContFromVend.OnInsert(Rec);
}
DonSetup.GET;
IF NOT DonSetup."No Cont. Creation from Vendor" THEN BEGIN
  IF NOT (InsertFromContact OR (InsertFromTemplate AND (Contact <> ''))) THEN
    UpdateContFromVend.OnInsert(Rec);
END;
// +@01

IF "Purchaser Code" = '' THEN
  SetDefaultPurchaser;


Nun möchte ich das über einen Event lösen. Da aber meine Anpassung mittendrin erfolgen musste sehe ich keine Möglichkeit, das zu tun. Oder irre ich mich da?
Zuletzt geändert von rotsch am 19. Juli 2018 12:17, insgesamt 1-mal geändert.

Re: Vendor OnInsert - Lösbar mit Event?

19. Juli 2018 11:56

Abgesehen davon, dass du - wie du schon vermutet hast - dies nicht über die Events abbilden kannst, ist diese konkrete Anpassung doch gar nicht erforderlich.

Wenn ich es richtig verstehe, dann hast du in einer Einrichtungstabelle ein Kennzeichen, welches die Anlage von Kontakten aus Kreditoren unterbinden soll.
Das geht auch ohne Anpassung, indem du in der Marketing Einrichtung einfach den Geschäftsbeziehungs-Code für Kreditoren entfernst, da dieser in der Codeunit 5057 als erstes abgefragt wird:
Code:
OnInsert(VAR Vend : Record Vendor)
RMSetup.GET;
IF RMSetup."Bus. Rel. Code for Vendors" = '' THEN
  EXIT
;

InsertNewContact(Vend,TRUE);

Re: Vendor OnInsert - Lösbar mit Event?

19. Juli 2018 12:16

Ja klar, du hast natürlich recht. Das hatte ich bisher nicht bemerkt. Besten Dank für deine Antwort.