[gelöst] aktuellen Lagerbestand auf Workorder 752

14. Januar 2011 22:09

Guten Abend zusammen,

ihr habt mir als NAV Laie in der Vergangenheit schon gute Tips und Anregungen geben können, so dass ich es bisher immer alleine geschaft habe die kleinen Projekte in die Tat umzusetzen.

Aktuell schwebt mir vor, dass ich auf den Arbeitsschein den aktuellen Lagerbestand in dem ausgewählten Lager mit andrucken lassen. Ich wäre so heran gegangen:

SalesLine bekommt ein neues Feld "Qty. in stock" oder wie auch immer. Beim Drucken des Reports müsste dieses Feld mit dem aktuellen Bestand gefüllt werden. Das bekomm ich leider nicht gefüllt...

Ich freue mich auf Eure Anregung.

lieben Gruß

Phil
Zuletzt geändert von flip69 am 16. Januar 2011 02:46, insgesamt 1-mal geändert.

Re: aktuellen Lagerbestand auf Workorder 752

15. Januar 2011 00:07

Ein neues Feld brauchst du nicht. Eine Variable auf die Tabelle Item, Filter auf den gewünschten Lagerort setzen - und schon hast du deinen gesuchten Wert.

Re: aktuellen Lagerbestand auf Workorder 752

15. Januar 2011 01:19

Bestimmt ;)

Ich bräuchte da doch etwas mehr Step-by-Step Anleitung.

Neue Variable item auf record item im Report, richtig? Diese dann mit "item.inventory" in der entsprechenden Section einbinden? Wo und wie den Filter setzen?

lg

Phil

Re: aktuellen Lagerbestand auf Workorder 752

15. Januar 2011 10:05

Hi,

hast du nun einen Report?

Ich weiß leider nicht genau, was du ausgeben möchtest bzw. welche DataItems der Report hat. Mittels Integer-Item könntest du die Werte aus dem gefilterten Record auslesen:

Du nimmt eine Variable (nennen wir sie mal recItem) vom Typ Record und Subtype Item. So haste nun den Record Item als Variable ;)

Nun kannst du den Filter mittels SETRANGE setzen und die Daten im Record innerhalb einer Schleife oder eines "DummyDataItems" auslesen und ausgeben..

Da gibts nun mehrere Möglichkeiten das umzusetzen.

Gruß

Maddin

Re: aktuellen Lagerbestand auf Workorder 752

16. Januar 2011 02:46

Also ich habe ja nicht wirklich einen Plan von C/AL...nach langem Betrachten anderer Reports und Lesen von Beiträgen habe ich es jetzt so gelöst.

unter C/AL Globals

ItemRec als RECORD auf item und
Inventory als Integer anlegen

Dann noch ein Feld mit Source Inventory in die Section im Report hinzufügen. Anschliessend bei DataItem "Sales Line" <Sales Line> in den Code unter "Sales Line - OnAfterGetRecord()" folgendes hinzufügen:

IF ("Sales Line".Type = 2) AND ("Sales Line"."No." <> '') THEN
BEGIN
ItemRec.GET("Sales Line"."No.");
ItemRec.SETFILTER("Location Filter", "Location Code");
ItemRec.SETFILTER("Variant Filter", "Variant Code");
ItemRec.CALCFIELDS(Inventory);
Inventory := ItemRec.Inventory;
END
ELSE Inventory := 0;

Sowas hätte ich als Anleitung verstanden und hinterlasse es mal für die Nachwelt.

lieben Gruß

Phil