mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-08-06 17:36:53 +01:00
Ingests net-new /community knowledge from BC Code Intelligence, surviving the admission test, gray-zone salvage, and dedup against the full corpus. Domains: ui (6), error-handling (3), performance (2), upgrade (1), appsource (1), security (1), telemetry (1). The two BC24 No. Series migration drafts are merged into one article. Adds good/bad AL samples for the clean-fit articles (error-handling, performance, security, telemetry). UI and appsource remain knowledge-only. Validator and knowledge-index checks pass (207 articles). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
33 lines
1.1 KiB
AL
33 lines
1.1 KiB
AL
codeunit 50124 "Batch Import Good Sample"
|
|
{
|
|
procedure ImportAll(var StagingLine: Record "Sales Line")
|
|
var
|
|
FailedCount: Integer;
|
|
begin
|
|
if StagingLine.FindSet() then
|
|
repeat
|
|
// Isolate each record behind a Codeunit.Run boundary: a failure
|
|
// inside the run rolls back only that record's work, and the
|
|
// batch continues instead of discarding everything.
|
|
if not Codeunit.Run(Codeunit::"Batch Import One Line", StagingLine) then
|
|
FailedCount += 1;
|
|
until StagingLine.Next() = 0;
|
|
|
|
if FailedCount > 0 then
|
|
Message('%1 line(s) were skipped; the rest were imported.', FailedCount);
|
|
end;
|
|
}
|
|
|
|
codeunit 50125 "Batch Import One Line"
|
|
{
|
|
TableNo = "Sales Line";
|
|
|
|
trigger OnRun()
|
|
begin
|
|
// Validation lives here. If it throws, only this line rolls back,
|
|
// because the caller wrapped the call in Codeunit.Run.
|
|
Rec.TestField("No.");
|
|
Rec.TestField(Quantity);
|
|
Rec.Insert(true);
|
|
end;
|
|
}
|