[Gelöst] CC: Menge Rechnungszeilen - Menge Gutschriftzeilen

12. April 2017 09:47

Guten Morgen.

Ich programmiere gerade in einen Report, wo ich die berechnete Menge für einige Artikel ausgeben möchte.
Die Menge die gezählt werden soll, muss einen bestimmten VK Brutto inkl MwSt haben. Ich filtere SalesInvoiceLines.SETFILTER("Unit Price",'1.00');
oder SalesCrMemoLines.SETFILTER("Unit Price",'1.00');
Ich möchte nach dem zählen die Menge aus den Gutschriftszeilen von den der Menge aus den Rechnungszeilen subtrahieren, um auf den tatsächlichen berechneten Wert zu kommen.
Ich bekomme aber nur 0 raus!? Wieso?
Weiß nicht genau was ich falsch programmiert habe?

Code:
ItemRec.CHANGECOMPANY('Mandant');
WertpostenRec.CHANGECOMPANY('Mandant');
SalesInvoiceLines.CHANGECOMPANY('Mandant');
SalesCrMemoLines.CHANGECOMPANY('Mandant');
ItemRec.SETCURRENTKEY("No.");
ItemRec.SETFILTER("No.", '1211|1415');
IF ItemRec.FIND('-') THEN
REPEAT
    WertpostenRec.SETFILTER("Posting Date",EingangsDate);
    WertpostenRec.SETFILTER("Item No.",ItemRec."No.");
    WertpostenRec.SETCURRENTKEY("Item No.","Posting Date","Item Ledger Entry Type",
    "Entry Type","Item Charge No.","Location Code","Variant Code");
   
    IF WertpostenRec.FIND('-') THEN
    REPEAT
        SalesInvoiceLines.SETCURRENTKEY("Document No.");
        SalesInvoiceLines.SETFILTER("Document No.",Terminal."Document No.");
        SalesInvoiceLines.SETFILTER("Unit Price",'0.05');
        IF SalesInvoiceLines.FIND('-') THEN
        REPEAT
            SalesLMenge+=SalesInvoiceLines.Quantity;
        UNTIL SalesInvoiceLines.NEXT(+1)=0;
   
        SalesCrMemoLines.SETCURRENTKEY("Document No.");
        SalesCrMemoLines.SETFILTER("Document No.",Terminal."Document No.");
        SalesCrMemoLines.SETFILTER("Unit Price",'1.00');       
        IF SalesCrMemoLines.FIND('-') THEN
        REPEAT
            GutschriftMenge+=SalesCrMemoLines.Quantity;
        UNTIL SalesCrMemoLines.NEXT(+1)=0;

    UNTIL WertpostenRec.NEXT(+1)=0;
    SummeSalesInvoiceLMenge+=SalesLMenge;
    SalesLMenge:=0;
     
    SummeGutschriftMenge+=GutschriftMenge;
    GutschriftMenge:=0;

UNTIL ItemRec.NEXT(+1)=0;
Aktionsmenge:= SummeSalesInvoiceLMenge - SummeGutschriftMenge;
SummeSalesInvoiceLMenge:=0;
SummeGutschriftMenge:=0;
ItemRec.RESET;
SalesInvoiceLines.RESET;
SalesCrMemoLines.RESET;
WertpostenRec.RESET;


Wieso bekomme ich 0 raus?
Bitte sagt Bescheid wenn ihr den Fehler seht.


Viele Grüße
Zuletzt geändert von navCH am 13. April 2017 13:44, insgesamt 1-mal geändert.

Re: CC: Menge Rechnungszeilen - Menge Gutschriftzeilen

12. April 2017 11:23

Schau doch mal im Debugger nach, ob er überhaupt bis zu den Rechnungszeilen kommt, oder ob später was der Variablenzuweisung schief läuft.
Warum gehst du eigentlich den Umweg über die Wertposten? Du kannst doch auch direkt auf die Rechnungszeilen gehen, indem du zusätzlich auf das Buchungsdatum filterst.

Re: CC: Menge Rechnungszeilen - Menge Gutschriftzeilen

12. April 2017 11:40

Natalie hat geschrieben:Schau doch mal im Debugger nach, ob er überhaupt bis zu den Rechnungszeilen kommt, oder ob später was der Variablenzuweisung schief läuft.

Werde ich nochmal tun.

Natalie hat geschrieben:Warum gehst du eigentlich den Umweg über die Wertposten? Du kannst doch auch direkt auf die Rechnungszeilen gehen, indem du zusätzlich auf das Buchungsdatum filterst.

Rechnungszeilen ja, aber nicht bei den Gutschriftszeilen. Gibt kein Buchungsdatum in SalesCrMemoLines. Und ich muss ja noch die Gutschriften abziehen.

Viele Grüße

Re: CC: Menge Rechnungszeilen - Menge Gutschriftzeilen

13. April 2017 13:44

Hallo.

Ich habe es jetzt anders gelöst.
Habe erst den VK-Brutto über Tabelle Wertposten ausgerechnet.
Somit habe ich die kompletten Mengen für Rechnungen und Gutschriften aus Wertposten raus bekommen.


MfG
Chris