克隆DAC以插入新的DAC

时间:2017-07-03 09:12:50

标签: acumatica

如何在Acumatica Framework中创建DAC的副本(即克隆它)。我当然可以创建一个新实例并单独设置所有值,但有没有一种方法可以为您完成此操作?

我找到了以下方法

PXCache<...>.CreateCopy(sourceRule);

然而,这似乎复制了一切,包括ID,CreatedBy等。 我需要一个 DAC,并复制所有相关字段。 怎么办呢?

1 个答案:

答案 0 :(得分:2)

您可以使用PXCache CreateCopy执行您提到的副本,然后在将新副本插入缓存之前将其更改为/更改密钥。

以下示例将销售线复制为销售订单扩展程序上的新行:

var soLine = PXCache<SOLine>.CreateCopy(Base.Transactions.Current);
// Null the keys of SOLine
soLine.OrderType = null;
soLine.OrderNbr = null;
soLine.LineNbr = null;
Base.Transactions.Insert(soLine);