首页 > 解决方案 > Acumatica 报告:如何填充供应商位置作为参数?

问题描述

我有多个供应商分支/位置,需要它作为参数,但是当我尝试填充查找时,它返回空。

报告参数

我使用的位置视图名称:

=Report.GetFieldSchema('Location.LocationCD')

结果

Acumatica 位置参数

标签: acumatica

解决方案


您可以重复使用现有的 DAC,但为了获得更多控制,您可以创建一个参数 DAC

using PX.Data;
using PX.Objects.CS;
using PX.Objects.GL;
using PX.Objects.CR;
using System;

namespace PX.Objects.AP
{
    public class APVendorParameters : IBqlTable
    {
        #region ActiveVendorID
        public abstract class activeVendorID : PX.Data.IBqlField { }

        [Vendor]
        [PXRestrictor(typeof(Where<Vendor.status, NotEqual<BAccount.status.inactive>>),
            Messages.VendorIsInStatus,
            typeof(Vendor.status))]
        public virtual int? ActiveVendorID { get; set; }

        #endregion

        #region VendorLocationID
        public abstract class vendorLocationID : PX.Data.IBqlField { }
        [PXDBInt]
        [PXSelector(typeof(Search<Location.locationID, Where<Location.bAccountID, Equal<Optional<activeVendorID>>>>), SubstituteKey = typeof(Location.locationCD), DescriptionField = typeof(Location.locationCD))]
        [PXUIField(DisplayName = "Location")]
        public virtual Int32? VendorLocationID { get; set; }
        #endregion
    }
}

在报告中添加 2 个参数: VendorID (string) ViewName=Report.GetFieldSchema('APVendorParameters.ActiveVendorID')

LocationID (string) ViewName=Report.GetFieldSchema('APVendorParameters.VendorLocationID,VendorID')

秘密在

,供应商ID')

句法


推荐阅读