5. September 2019 14:55
SalesLine.SETRANGE(SalesLine."Document Type",Rec."Document Type");
SalesLine.SETRANGE(SalesLine."Document No.","No.");
SalesLine.SETRANGE(SalesLine.Type,SalesLine.Type::Item);
IF SalesLine.FINDFIRST THEN BEGIN
REPEAT
Artikel.SETRANGE("No.",SalesLine."No.");
Artikel.FINDSET;
IF Artikel.FINDSET THEN BEGIN
Debitoren.SETRANGE(Debitoren."No.",SalesLine."Sell-to Customer No.");
Debitoren.FINDSET;
Versandkosten.SETRANGE(Versandkosten.Ländercode,"Bill-to Country/Region Code");
Versandkosten.SETRANGE(Versandkosten.Zustellercode,Debitoren."Shipping Agent Code");
Versandkosten.FINDSET;
END;
UNTIL SalesLine.NEXT=0;
END;
SalesLine.SETRANGE(SalesLine."Document Type",Rec."Document Type");
SalesLine.SETRANGE(SalesLine."Document No.","No.");
SalesLine.SETRANGE(SalesLine.Type,SalesLine.Type::Item);
IF SalesLine.FINDFIRST THEN BEGIN
REPEAT
SLLetzte.RESET;
IF SLLetzte.FINDLAST THEN
SalesLine1.INIT;
Artikel.SETRANGE("No.",SalesLine."No.");
IF Artikel.FINDFIRST THEN
GesGewicht:=GesGewicht + (Artikel."Gross Weight" * SalesLine."Qty. to Ship");
UNTIL SalesLine.NEXT=0;
Versandkosten.SETFILTER(Minimalgewicht, '<=%1' ,GesGewicht);
IF Versandkosten.FINDLAST THEN
SLLetzte.RESET;
IF SLLetzte.FINDLAST THEN
SalesLine1.INIT;
SalesLine1."Document Type" := "Document Type";
SalesLine1."Document No." := "No.";
SalesLine1."Line No." += SLLetzte."Line No." + 10000;
SalesLine1.INSERT;
SalesLine1.VALIDATE(SalesLine1.Type, SalesLine.Type::"G/L Account");
SalesLine1.VALIDATE("No.", '4730');
SalesLine1.VALIDATE(SalesLine1.Quantity,1);
SalesLine1.VALIDATE(SalesLine1."Unit Price",Versandkosten.Preis);
SalesLine1.MODIFY;
END;
6. September 2019 10:14
IF GesGewicht = 0 THEN BEGIN //Löst Problem 2
SalesLine.RESET;
SalesLine.SETRANGE(SalesLine."Document Type",Rec."Document Type");
SalesLine.SETRANGE(SalesLine."Document No.","No.");
SalesLine.SETRANGE(SalesLine.Type,SalesLine.Type::Item);
IF SalesLine.FINDFIRST THEN BEGIN
REPEAT
Artikel.SETRANGE("No.",SalesLine."No.");
IF Artikel.FINDFIRST THEN
GesGewicht:=GesGewicht + (Artikel."Gross Weight" * SalesLine."Qty. to Ship");
UNTIL SalesLine.NEXT=0;
END;
IF GesGewicht <> 0 THEN BEGIN
Versandkosten.SETFILTER(Minimalgewicht, '<=%1' ,GesGewicht);
IF Versandkosten.FINDLAST THEN;
SLLetzte.SETRANGE("Document Type",Rec."Document Type"); {
SLLetzte.SETRANGE("Document No.",Rec."No."); Löst Problem 1
SLLetzte.SETRANGE(SLLetzte.Type,SLLetzte.Type::Item);
IF SLLetzte.FINDLAST THEN }
SalesLine1.INIT;
SalesLine1."Document Type" := "Document Type";
SalesLine1."Document No." := "No.";
SalesLine1."Line No." += SLLetzte."Line No." + 10000;
SalesLine1.INSERT;
SalesLine1.VALIDATE(SalesLine1.Type, SalesLine.Type::"G/L Account");
SalesLine1.VALIDATE("No.", '4730');
SalesLine1.VALIDATE(SalesLine1.Quantity,1);
SalesLine1.VALIDATE(SalesLine1."Unit Price",Versandkosten.Preis);
SalesLine1.MODIFY;
"Total Weight" := GesGewicht;
END;
END;