【问题标题】:Custom Inquiry Screen Tab Disappears when Committing Changes提交更改时自定义查询屏幕选项卡消失
【发布时间】:2019-11-07 20:09:00
【问题描述】:

我有一个自定义查询屏幕。您选择一个客户和一个日期,它将为客户显示不同记录的信息。两个选项卡是自定义表格,一个选项卡是合同(租约),另一个选项卡是支付和退款的某些非库存项目(押金)的所有项目。

当我选择客户时,“租约”标签会消失。当我从屏幕上的操作启动查询时,数据显示。但是更改屏幕上的任何信息都会导致选项卡关闭。所有选项卡都设置相同。这是有问题的网格:

<px:PXTabItem Text="Leases">
    <Template>
        <px:PXGrid ID="gridCustomerLeases" runat="server" DataSourceID="ds" Width="100%" Height="150px" SkinID="Details" AllowAutoHide="False" TabIndex="700">                       
            <Levels>
                <px:PXGridLevel DataMember="CustomerLeases">
                    <RowTemplate>    
                        <px:PXNumberEdit ID="edCLTQty" runat="server" AlreadyLocalized="False" DataField="ContractDetail__Qty"></px:PXNumberEdit>
                        <px:PXSegmentMask ID="edCLTUsrCYLeaseInventoryID" runat="server" DataField="InventoryItem__UsrCYLeaseInventoryID" AllowEdit="true"></px:PXSegmentMask>
                        <px:PXSegmentMask ID="edCLTInventoryItem__InventoryCD" runat="server" DataField="InventoryItem__InventoryCD" AllowEdit="true"></px:PXSegmentMask>
                    </RowTemplate>
                    <Columns>
                        <px:PXGridColumn DataField="InventoryItem__InventoryCD"></px:PXGridColumn>
                        <px:PXGridColumn DataField="InventoryItem__UsrCYLeaseInventoryID"></px:PXGridColumn>
                        <px:PXGridColumn DataField="ContractDetail__Qty" TextAlign="Right" Width="100px"></px:PXGridColumn>
                        <px:PXGridColumn DataField="Contract__ActivationDate" TextAlign="Right" Width="150px"></px:PXGridColumn>
                        <px:PXGridColumn DataField="Contract__ExpireDate" TextAlign="Right" Width="150px"></px:PXGridColumn>
                    </Columns>
                </px:PXGridLevel>
            </Levels>
            <AutoSize Container="Window" Enabled="True" MinHeight="150" />
        </px:PXGrid>
    </Template>
</px:PXTabItem>

这是附加到网格的视图

public SelectFrom<ContractDetail>
    .InnerJoin<Contract>.On<ContractDetail.contractID.IsEqual<Contract.contractID>>
    .InnerJoin<ContractItem>.On<ContractItem.contractItemID.IsEqual<ContractDetail.contractItemID>>
    .InnerJoin<InventoryItem>.On<InventoryItemExt.usrCYLeaseContractItemID.IsEqual<ContractItem.contractItemID>>
        .Where<Brackets<
                Contract.terminationDate.IsNull
                .Or<Contract.terminationDate.IsGreaterEqual<CustomerCylinderInqFilter.fromDate.FromCurrent>>
                >
        .And<Contract.customerID.IsEqual<CustomerCylinderInqFilter.customerID.FromCurrent>
        .And<Contract.activationDate.IsLessEqual<CustomerCylinderInqFilter.fromDate.FromCurrent>>>>
    .View.ReadOnly
    CustomerLeases;

其他网格使用相似的字段和相同的过滤字段,但显示正确。

【问题讨论】:

    标签: acumatica acumatica-kb


    【解决方案1】:

    您必须将主视图与网格上的视图关联,而无需在网格中指定 DAC。由于 ContractDetail 是视图上的主要 DAC,因此必须删除 ContractDetail__。更新线路

     <px:PXNumberEdit ID="edCLTQty" runat="server" AlreadyLocalized="False" DataField="ContractDetail__Qty"></px:PXNumberEdit>
    
    <px:PXGridColumn DataField="Qty" TextAlign="Right" Width="100px"></px:PXGridColumn>
    

    <px:PXNumberEdit ID="edCLTQty" runat="server" AlreadyLocalized="False" DataField="ContractDetail__Qty"></px:PXNumberEdit>
    
    <px:PXGridColumn DataField="Qty" TextAlign="Right" Width="100px"></px:PXGridColumn>
    

    工作。

    在复制网格并更改视图上的主 DAC 而未删除 DataField 属性上的 DAC 前缀时,您可能会遇到此问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多