如何隐藏 Microsoft Business Central AL 编程中的字段

问题描述 投票:0回答:1

如果“原因”字段的值为“其他”,我想隐藏“其他原因”字段

pageextension 50101 CJ_PurchaseReturnOrder 扩展“采购退货单” { 布局 { 添加最后一个(通用) { 字段(“TO 代码”;Rec.“TO 代码”) { 应用区域=全部; TableRelation = "传输头"; } field("项目日记帐代码"; Rec."项目日记帐代码") { 应用区域=全部; TableRelation = "项目日记行"; } 字段(“原因”;Rec.Reason) { 应用区域=全部; } field("其他原因"; Rec."其他原因") { 应用区域=全部; } } } }

我试过这个:

pageextension 50101 CJ_PurchaseReturnOrder 扩展“采购退货单” { 布局 { 添加最后一个(通用) { 字段(“TO 代码”;Rec.“TO 代码”) { 应用区域=全部; TableRelation = "传输头"; } field("项目日记帐代码"; Rec."项目日记帐代码") { 应用区域=全部; TableRelation = "项目日记行"; } 字段(“原因”;Rec.Reason) { 应用区域=全部; } field("其他原因"; Rec."其他原因") { 应用区域=全部; 启用 = 启用代码; } } } 变量 EnableToCode:布尔值;

trigger OnAfterGetRecord()
begin
    if Rec.Reason = Rec.Reason::Other then
        EnableToCode := true
    else
        EnableToCode := false;
end;

}

dynamics-business-central dynamics-al
1个回答
0
投票

您几乎已经有了解决方案,因为您只需要使用正确的属性:Visiblehttps://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/properties/ devenv-可见属性

pageextension 50101 CJ_PurchaseReturnOrder extends "Purchase Return Order"
{
    layout
    {
        addlast(General)
        {
            field("TO Code"; Rec."TO Code")
            {
                ApplicationArea = all;
                TableRelation = "Transfer Header";
            }
            field("Item Journal Code"; Rec."Item Journal Code")
            {
                ApplicationArea = all;
                TableRelation = "Item Journal Line";
            }
            field("Reason"; Rec.Reason)
            {
                ApplicationArea = all;
            }
            field("Other Reason"; Rec."Other Reason")
            {
                ApplicationArea = all;
                Visible = OtherReasonIsVisible;
            }
        }
    }

    var
        OtherReasonIsVisible: Boolean;

    trigger OnAfterGetRecord()
    begin
        if Rec.Reason = Rec.Reason::Other then
            OtherReasonIsVisible := true
        else
            OtherReasonIsVisible := false;
    end;
}

还有一个经常被遗忘的额外信息,所以我想在这里提一下:如果你试图动态设置页面字段的可见性,你需要将字段移动到组中并使用组的visible属性动态显示/隐藏页面字段(请参阅:控件的动态可见性

© www.soinside.com 2019 - 2024. All rights reserved.