bcquality/microsoft/knowledge/performance/load-common-fields-before-branching-on-case.bad.al
Jesper Schulz-Wedde 0e06485027
Correct performance knowledge guidance (#94)
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 667c64a8-eb36-4440-bc41-6a97d8fb5542

Co-authored-by: Jesper Schulz-Wedde <jesper.schulzwedde@microsoft.com>
2026-07-14 11:26:29 +02:00

30 lines
1.2 KiB
AL

codeunit 50100 "Sales Document Processor"
{
procedure DescribeDocument(DocumentType: Enum "Sales Document Type"; DocumentNo: Code[20]): Text
var
SalesHeader: Record "Sales Header";
begin
SalesHeader.SetLoadFields(
"Sell-to Customer No.",
"Order Date", "Shipment Date", "Completely Shipped",
"Posting Date", "Due Date", "Payment Terms Code");
SalesHeader.Get(DocumentType, DocumentNo);
case DocumentType of
DocumentType::Order:
exit(DescribeOrder(SalesHeader));
DocumentType::Invoice:
exit(DescribeInvoice(SalesHeader));
end;
end;
local procedure DescribeOrder(SalesHeader: Record "Sales Header"): Text
begin
exit(StrSubstNo('%1|%2|%3|%4', SalesHeader."Sell-to Customer No.", SalesHeader."Order Date", SalesHeader."Shipment Date", SalesHeader."Completely Shipped"));
end;
local procedure DescribeInvoice(SalesHeader: Record "Sales Header"): Text
begin
exit(StrSubstNo('%1|%2|%3|%4', SalesHeader."Sell-to Customer No.", SalesHeader."Posting Date", SalesHeader."Due Date", SalesHeader."Payment Terms Code"));
end;
}