-
Notifications
You must be signed in to change notification settings - Fork 687
Open
Open
Copy link
Labels
FinanceGitHub request for Finance areaGitHub request for Finance areaevent-requestRequest for adding an eventRequest for adding an event
Description
Why do you need this change?
Can you please add the event OnAfterInitializeDeferralHeaderAndSetPostDate to the procedure InitializeDeferralHeaderAndSetPostDate in Codeunit "Deferral Utilities" (1720)? This will be used to control the attribution of the variable StartDate.
Describe the request
Actual Code
procedure InitializeDeferralHeaderAndSetPostDate(var DeferralLine: Record "Deferral Line"; DeferralHeader: Record "Deferral Header"; PeriodicCount: Integer; var PostDate: Date)
var
AccountingPeriod: Record "Accounting Period";
begin
DeferralLine.Init();
DeferralLine."Deferral Doc. Type" := DeferralHeader."Deferral Doc. Type";
DeferralLine."Gen. Jnl. Template Name" := DeferralHeader."Gen. Jnl. Template Name";
DeferralLine."Gen. Jnl. Batch Name" := DeferralHeader."Gen. Jnl. Batch Name";
DeferralLine."Document Type" := DeferralHeader."Document Type";
DeferralLine."Document No." := DeferralHeader."Document No.";
DeferralLine."Line No." := DeferralHeader."Line No.";
DeferralLine."Currency Code" := DeferralHeader."Currency Code";
OnInitializeDeferralHeaderAndSetPostDateAfterInitDeferralLine(DeferralLine);
if PeriodicCount = 1 then begin
if not AccountingPeriod.IsEmpty() then begin
AccountingPeriod.SetFilter("Starting Date", '..%1', DeferralHeader."Start Date");
if not AccountingPeriod.FindFirst() then
Error(DeferSchedOutOfBoundsErr);
end;
PostDate := DeferralHeader."Start Date";
end else begin
if IsAccountingPeriodExist(AccountingPeriod, CalcDate('<CM>', PostDate) + 1) then begin
AccountingPeriod.SetFilter("Starting Date", '>%1', PostDate);
if not AccountingPeriod.FindFirst() then
Error(DeferSchedOutOfBoundsErr);
end;
PostDate := AccountingPeriod."Starting Date";
end;
end;
Suggestion
procedure InitializeDeferralHeaderAndSetPostDate(var DeferralLine: Record "Deferral Line"; DeferralHeader: Record "Deferral Header"; PeriodicCount: Integer; var PostDate: Date)
var
AccountingPeriod: Record "Accounting Period";
begin
DeferralLine.Init();
DeferralLine."Deferral Doc. Type" := DeferralHeader."Deferral Doc. Type";
DeferralLine."Gen. Jnl. Template Name" := DeferralHeader."Gen. Jnl. Template Name";
DeferralLine."Gen. Jnl. Batch Name" := DeferralHeader."Gen. Jnl. Batch Name";
DeferralLine."Document Type" := DeferralHeader."Document Type";
DeferralLine."Document No." := DeferralHeader."Document No.";
DeferralLine."Line No." := DeferralHeader."Line No.";
DeferralLine."Currency Code" := DeferralHeader."Currency Code";
OnInitializeDeferralHeaderAndSetPostDateAfterInitDeferralLine(DeferralLine);
if PeriodicCount = 1 then begin
if not AccountingPeriod.IsEmpty() then begin
AccountingPeriod.SetFilter("Starting Date", '..%1', DeferralHeader."Start Date");
if not AccountingPeriod.FindFirst() then
Error(DeferSchedOutOfBoundsErr);
end;
PostDate := DeferralHeader."Start Date";
end else begin
if IsAccountingPeriodExist(AccountingPeriod, CalcDate('<CM>', PostDate) + 1) then begin
AccountingPeriod.SetFilter("Starting Date", '>%1', PostDate);
if not AccountingPeriod.FindFirst() then
Error(DeferSchedOutOfBoundsErr);
end;
PostDate := AccountingPeriod."Starting Date";
end;
OnAfterInitializeDeferralHeaderAndSetPostDate(DeferralLine, DeferralHeader,PeriodicCount, PostDate);
end;
[IntegrationEvent(false, false)]
local procedure OnAfterInitializeDeferralHeaderAndSetPostDate(var DeferralLine: Record "Deferral Line"; DeferralHeader: Record "Deferral Header"; PeriodicCount: Integer; var PostDate: Date)
begin
end;
Internal work item: AB#622415
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
FinanceGitHub request for Finance areaGitHub request for Finance areaevent-requestRequest for adding an eventRequest for adding an event