【发布时间】:2017-12-18 16:10:19
【问题描述】:
开箱即用的Acumatica Inventory Item Label 报告 (IN619200) 旨在仅在项目被序列化时为收据上的行项目打印多个标签。我们将修改报告,允许用户选择收据编号,并让系统根据收到的每个项目的数量生成标签数量,无论它们是否序列化
【问题讨论】:
标签: c# acumatica acumatica-kb
开箱即用的Acumatica Inventory Item Label 报告 (IN619200) 旨在仅在项目被序列化时为收据上的行项目打印多个标签。我们将修改报告,允许用户选择收据编号,并让系统根据收到的每个项目的数量生成标签数量,无论它们是否序列化
【问题讨论】:
标签: c# acumatica acumatica-kb
我们将修改开箱即用的库存标签报告 (IN619200),该报告将按收到的数量打印每个标签,而不是为非序列化库存商品的所有数量打印一个标签。
我们需要一个用户表并且需要用数据填充它。
CREATE TABLE UsrNumbers(Number INT PRIMARY KEY);
GO
INSERT UsrNumbers
SELECT TOP 1000 ROW_NUMBER() OVER (ORDER BY name) FROM sys.all_columns;
1000 可能是每件商品的最大可能值。
现在为UsrNumber 创建DAC (Data Access Class) 并发布自定义,以便DAC 可以在报告中使用。
using System;
using PX.Data;
namespace InventoryLabelReportExtPkg
{
[Serializable]
public class UsrNumbers : IBqlTable
{
#region Number
[PXDBInt(IsKey = true)]
[PXUIField(DisplayName = "Number")]
public virtual int? Number { get; set; }
public abstract class number : IBqlField { }
#endregion
}
}
现在在 Acumatica 报表设计器中修改库存标签报表 (IN619200),并在 Schema Builder 中包含如下关系。
【讨论】: