Page 1575 VAT Entries Preview Flat Subf., source in 29
Source29
src/Layers/W1/BaseApp/Finance/VAT/Ledger/VATEntriesPreviewFlatSubf.Page.al201 lines, Copyright (c) Microsoft Corporation. MIT
// ------------------------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// ------------------------------------------------------------------------------------------------
namespace Microsoft.Finance.VAT.Ledger;
using Microsoft.Finance.GeneralLedger.Preview;
using Microsoft.Finance.VAT.Calculation;
/// <summary>
/// Flat list subform page for displaying VAT entries during posting preview operations.
/// Shows VAT entries in a simple list format without hierarchical grouping.
/// </summary>
/// <remarks>
/// Alternative to hierarchical VAT entries preview providing flat list view of all VAT entries.
/// Includes conditional visibility for non-deductible VAT fields based on feature enablement.
/// Used within posting preview infrastructure for simplified VAT entry analysis.
/// </remarks>
page 1575 "VAT Entries Preview Flat Subf."
{
PageType = ListPart;
SourceTable = "VAT Entry";
SourceTableTemporary = true;
Editable = false;
Caption = 'VAT Entries';
layout
{
area(Content)
{
repeater(GroupName)
{
field("Gen. Bus. Posting Group"; Rec."Gen. Bus. Posting Group")
{
ApplicationArea = Suite;
Visible = false;
}
field("Gen. Prod. Posting Group"; Rec."Gen. Prod. Posting Group")
{
ApplicationArea = Suite;
Visible = false;
}
field("VAT Bus. Posting Group"; Rec."VAT Bus. Posting Group")
{
ApplicationArea = Basic, Suite;
}
field("VAT Prod. Posting Group"; Rec."VAT Prod. Posting Group")
{
ApplicationArea = Basic, Suite;
}
field("Posting Date"; Rec."Posting Date")
{
ApplicationArea = Basic, Suite;
}
field("Document Date"; Rec."Document Date")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Document No."; Rec."Document No.")
{
ApplicationArea = Basic, Suite;
}
field("Document Type"; Rec."Document Type")
{
ApplicationArea = Basic, Suite;
}
field(Type; Rec.Type)
{
ApplicationArea = Basic, Suite;
}
field(Base; Rec.Base)
{
ApplicationArea = Basic, Suite;
}
field(Amount; Rec.Amount)
{
ApplicationArea = Basic, Suite;
}
field(NonDeductibleVATBase; Rec."Non-Deductible VAT Base")
{
ApplicationArea = Basic, Suite;
Visible = NonDeductibleVATVisible;
}
field(NonDeductibleVATAmount; Rec."Non-Deductible VAT Amount")
{
ApplicationArea = Basic, Suite;
Visible = NonDeductibleVATVisible;
}
field("VAT Difference"; Rec."VAT Difference")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Additional-Currency Base"; Rec."Additional-Currency Base")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Additional-Currency Amount"; Rec."Additional-Currency Amount")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Add.-Curr. VAT Difference"; Rec."Add.-Curr. VAT Difference")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("VAT Calculation Type"; Rec."VAT Calculation Type")
{
ApplicationArea = Basic, Suite;
}
field("Bill-to/Pay-to No."; Rec."Bill-to/Pay-to No.")
{
ApplicationArea = Basic, Suite;
}
field("VAT Registration No."; Rec."VAT Registration No.")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Ship-to/Order Address Code"; Rec."Ship-to/Order Address Code")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Country/Region Code"; Rec."Country/Region Code")
{
ApplicationArea = Basic, Suite;
}
field("EU 3-Party Trade"; Rec."EU 3-Party Trade")
{
ApplicationArea = Suite;
}
field(Closed; Rec.Closed)
{
ApplicationArea = Basic, Suite;
}
field("Closed by Entry No."; Rec."Closed by Entry No.")
{
ApplicationArea = Basic, Suite;
}
field("Internal Ref. No."; Rec."Internal Ref. No.")
{
ApplicationArea = Basic, Suite;
}
field(Reversed; Rec.Reversed)
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Reversed by Entry No."; Rec."Reversed by Entry No.")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("Reversed Entry No."; Rec."Reversed Entry No.")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
field("EU Service"; Rec."EU Service")
{
ApplicationArea = Basic, Suite;
Visible = false;
}
}
}
}
/// <summary>
/// Populates the subform with VAT entries from posting preview event handler in flat list format.
/// </summary>
/// <param name="PostingPreviewEventHandler">Event handler containing VAT entry preview data</param>
procedure Set(PostingPreviewEventHandler: Codeunit "Posting Preview Event Handler")
var
RecRef: RecordRef;
begin
Rec.Reset();
Rec.DeleteAll();
PostingPreviewEventHandler.GetEntries(DATABASE::"VAT Entry", RecRef);
if RecRef.FindSet() then
repeat
RecRef.SetTable(Rec);
Rec.Insert();
until RecRef.Next() = 0;
end;
trigger OnOpenPage()
var
NonDeductibleVAT: Codeunit "Non-Deductible VAT";
begin
NonDeductibleVATVisible := NonDeductibleVAT.IsNonDeductibleVATEnabled();
end;
var
NonDeductibleVATVisible: Boolean;
}