[Gelöst] Tabelle aus Page aktualisieren

30. September 2016 11:27

Hallo mal wieder ;),

ich bin gerade dabei ein wenig in NAV herumzuspielen. Ich versuche schon eine Zeit lang etwas, das mir aber irgendwie nicht gelingen will. Folgendes:

Ich habe in der Purchase Line ein Feld von Typ Decimal (Feld1) hinzugefügt und auch in der Page 54 eingeblendet. Ich möchte jetzt wenn ich Feld1 aktualisiere bzw. überhaupt etwas eintrage das sich in der Item Tabelle ein anderes eigens angelegtes Feld (Feld2) bei diesem Artikel mit eben eingetragenen Wert aktualisiert. Leider schaffe ich das irgendwie nicht, habe ich da etwas falsch gemacht?

Folgende Code stammt aus dem On Validate Trigger von Feld1

Code:
PurchLine.SETRANGE("Document Type",PurchLine."Document Type"::Order);
PurchLine.SETRANGE("Document No.",PurchNo);
PurchLine.SETRANGE(Type,PurchLine.Type::Item);

IF PurchLine.FINDSET THEN BEGIN
  REPEAT
    IF Ite.GET(PurchLine."No.") THEN BEGIN
      Ite.Feld2 := PurchLine.Feld1;
      Ite.MODIFY;
    END;
  UNTIL PurchLine.NEXT = 0;
END;


Über hilfreiche Tipps wäre ich sehr dankbar.
Zuletzt geändert von galnar am 30. September 2016 13:11, insgesamt 1-mal geändert.

Re: Tabelle aus Page aktualisieren

30. September 2016 12:43

Hallo,

deine Schleife über alle Einkaufszeilen des aktuellen Belegs versteh ich nicht. Eigentlich schon, aber ich find's unsinnig.

Dieser Code sollte reichen:

Code:
IF Ite.GET("No.") THEN BEGIN
      Ite.Feld2 := Feld1;
      Ite.MODIFY;
    END;


Ansich sieht dein Code aber nicht falsch aus. Deine Variablen-Definition von PurchLine und PurchNo sieht man halt nicht.

Andi

Re: Tabelle aus Page aktualisieren

30. September 2016 13:10

Danke für die Antwort.
Stimmt die Schleife ist nicht nötig. Ich habe die Schleife jetzt weggelassen und es funktioniert(e) immer noch nicht. Das ist mal wieder so eine Sache die ich nicht so verstehe. Es war alles ohne Fehler kompiliert und trotzdem hat es nicht funktioniert. Und jetzt aus welchem Grund auch immer (es wurde nichts mehr geändert) funktioniert es nun wie es soll.

Vielen Dank für Deine Hilfe ;)