Skip to content

[TEST][Event Request] Report 31004 "Adjust Exchange Rates CZL".Vendor.OnAfterGetRecord #29429

@AleksandricMarko

Description

@AleksandricMarko

Why do you need this change?

Please add new events that allows to us create for CZ legislation option "Exclude Advance Payment" from currency adjust.

Describe the request

dataitem(Vendor; Vendor)
{
DataItemTableView = sorting("No.");
RequestFilterFields = "No.";

trigger OnAfterGetRecord()
var
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:BEGIN
IsHandled: Boolean;
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:END
begin
VendNo := VendNo + 1;
WindowDialog.Update(3, Round(VendNo / VendNoTotal * 10000, 1));

TempVendorLedgerEntry.DeleteAll();

Currency.CopyFilter(Code, VendorLedgerEntry."Currency Code");
VendorLedgerEntry.FilterGroup(2);
VendorLedgerEntry.SetFilter("Currency Code", '<>%1', '');
VendorLedgerEntry.FilterGroup(0);

DetailedVendorLedgEntry.Reset();
DetailedVendorLedgEntry.SetCurrentKey("Vendor No.", "Posting Date", "Entry Type");
DetailedVendorLedgEntry.SetRange("Vendor No.", "No.");
DetailedVendorLedgEntry.SetRange("Posting Date", CalcDate('<+1D>', EndDate), DMY2Date(31, 12, 9999));
if DetailedVendorLedgEntry.FindSet() then
repeat
VendorLedgerEntry."Entry No." := DetailedVendorLedgEntry."Vendor Ledger Entry No.";
if VendorLedgerEntry.Find('=') then
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:BEGIN
begin
IsHandled := false;
OnAfterGetRecordVendorOnBeforeSetTempVendorLedgerEntry(AdjustExchangeRates, DetailedVendorLedgEntry, VendorLedgerEntry, TempVendorLedgerEntry, StartDate, EndDate, IsHandled);
if not IsHandled then
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:END
if (VendorLedgerEntry."Posting Date" >= StartDate) and
(VendorLedgerEntry."Posting Date" <= EndDate)
then begin
TempVendorLedgerEntry."Entry No." := VendorLedgerEntry."Entry No.";
if not TempVendorLedgerEntry.Insert() then
TempVendorLedgerEntry.Init();
end;
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:BEGIN
end;
//-------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:END
until DetailedVendorLedgEntry.Next() = 0;

        VendorLedgerEntry.SetCurrentKey("Vendor No.", Open);
        VendorLedgerEntry.SetRange("Vendor No.", "No.");
         VendorLedgerEntry.SetRange(Open, true);
         VendorLedgerEntry.SetRange("Posting Date", 0D, EndDate);
         //---------------------------------------------------------------OnAfterGetRecordVendorOnAfterSetRangeVendorLedgerEntry:BEGIN
        OnAfterGetRecordVendorOnAfterSetRangeVendorLedgerEntry(AdjustExchangeRates, VendorLedgerEntry);
         //---------------------------------------------------------------OnAfterGetRecordVendorOnAfterSetRangeVendorLedgerEntry:END
        if VendorLedgerEntry.FindSet() then
             repeat
                 TempVendorLedgerEntry."Entry No." := VendorLedgerEntry."Entry No.";
                 if not TempVendorLedgerEntry.Insert() then
                    TempVendorLedgerEntry.Init();
             until VendorLedgerEntry.Next() = 0;
       VendorLedgerEntry.Reset();

         OnVendorAfterGetRecordOnAfterFindVendLedgerEntriesToAdjust(TempVendorLedgerEntry);
    end;
}

//---------------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:BEGIN
[IntegrationEvent(false, false)]
local procedure OnAfterGetRecordVendorOnBeforeSetTempVendorLedgerEntry(var AdjustExchangeRates: Report "Adjust Exchange Rates CZL"; DetailedVendorLedgEntry: Record "Vendor Ledger Entry"; VendorLedgerEntry: Record "Vendor Ledger Entry"; var TempVendorLedgerEntry: Record "Vendor Ledger Entry"; EndDate: Date; StartDate: Date; var IsHandled: Boolean)
begin
end;
//---------------------------------------------------------------OnAfterGetRecordVendorOnBeforeInitTempVendorLedgerEntry:END

//---------------------------------------------------------------OnAfterGetRecordVendorOnAfterSetRangeVendorLedgerEntry:BEGIN
[IntegrationEvent(false, false)]
local procedure OnAfterGetRecordVendorOnAfterSetRangeVendorLedgerEntry(var AdjustExchangeRates: Report "Adjust Exchange Rates CZL"; VendorLedgerEntry: Record "Vendor Ledger Entry")
begin
end;
//--

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions