Acumatica:定制项目之间的冲突
Acumatica: Conflict between customization projects
由于项目之间的冲突,验证自定义时出错。
我将一个项目的级别设置为99。
我的代码很简单。如果供应商维护中的某些字段已更新,我将供应商维护中的状态翻转为 "H",但这与对几个 CS 屏幕进行自定义的项目冲突。
<Graph ClassName="VendorMaint" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
<CDATA name="Source"><![CDATA[
using PX.Data;
using PX.Objects.CS;
namespace PX.Objects.AP
{
public class VendorMaint_Extension : PXGraphExtension<VendorMaint>
{
protected void CSAnswers_Value_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
protected void Address_AddressLine1_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
}
}]]></CDATA>
</Graph>
<DAC type="PX.Objects.CR.BAccount">
<Field FieldName="Status" TypeName="string" OverrideClassName="PX.Objects.AP.Vendor" StorageName="ExistingColumn" />
</DAC>
</Customization>
错误:自定义项目之间存在冲突。他们正在尝试从 PX.Objects.CR.BAccount
自定义相同的数据字段状态
验证失败。
我是 Acumatica 的新手,我发现的所有帖子似乎都是针对早期版本的。任何指导将不胜感激。
您没有从第二个自定义项目上传代码,但查看您的代码似乎不需要更改 BAccount
DAC 中的任何内容,因此您可以通过删除该自定义来简化您的项目,这应该可以解决所报告的冲突。在设置新状态值之前,通过告诉覆盖调用基本处理程序来保留任何现有事件也是有意义的。
尝试像这样更改您的项目(注意第一行应与您的描述和 Acumatica 版本匹配):
<Customization level="99" description="" product-version="18.212">
<Graph ClassName="VendorMaint" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
<CDATA name="Source"><![CDATA[
using PX.Data;
using PX.Objects.CS;
namespace PX.Objects.AP
{
public class VendorMaint_Extension : PXGraphExtension<VendorMaint>
{
protected void CSAnswers_Value_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated InvokeBaseHandler)
{
if (InvokeBaseHandler != null) InvokeBaseHandler(cache, e);
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
protected void Address_AddressLine1_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated InvokeBaseHandler)
{
if (InvokeBaseHandler != null) InvokeBaseHandler(cache, e);
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
}
}]]></CDATA>
</Graph>
</Customization>
由于项目之间的冲突,验证自定义时出错。
我将一个项目的级别设置为99。
我的代码很简单。如果供应商维护中的某些字段已更新,我将供应商维护中的状态翻转为 "H",但这与对几个 CS 屏幕进行自定义的项目冲突。
<Graph ClassName="VendorMaint" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
<CDATA name="Source"><![CDATA[
using PX.Data;
using PX.Objects.CS;
namespace PX.Objects.AP
{
public class VendorMaint_Extension : PXGraphExtension<VendorMaint>
{
protected void CSAnswers_Value_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
protected void Address_AddressLine1_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e)
{
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
}
}]]></CDATA>
</Graph>
<DAC type="PX.Objects.CR.BAccount">
<Field FieldName="Status" TypeName="string" OverrideClassName="PX.Objects.AP.Vendor" StorageName="ExistingColumn" />
</DAC>
</Customization>
错误:自定义项目之间存在冲突。他们正在尝试从 PX.Objects.CR.BAccount
自定义相同的数据字段状态验证失败。
我是 Acumatica 的新手,我发现的所有帖子似乎都是针对早期版本的。任何指导将不胜感激。
您没有从第二个自定义项目上传代码,但查看您的代码似乎不需要更改 BAccount
DAC 中的任何内容,因此您可以通过删除该自定义来简化您的项目,这应该可以解决所报告的冲突。在设置新状态值之前,通过告诉覆盖调用基本处理程序来保留任何现有事件也是有意义的。
尝试像这样更改您的项目(注意第一行应与您的描述和 Acumatica 版本匹配):
<Customization level="99" description="" product-version="18.212">
<Graph ClassName="VendorMaint" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
<CDATA name="Source"><![CDATA[
using PX.Data;
using PX.Objects.CS;
namespace PX.Objects.AP
{
public class VendorMaint_Extension : PXGraphExtension<VendorMaint>
{
protected void CSAnswers_Value_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated InvokeBaseHandler)
{
if (InvokeBaseHandler != null) InvokeBaseHandler(cache, e);
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
protected void Address_AddressLine1_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated InvokeBaseHandler)
{
if (InvokeBaseHandler != null) InvokeBaseHandler(cache, e);
Base.BAccount.SetValueExt<VendorR.status>(Base.BAccount.Current, "H");
}
}
}]]></CDATA>
</Graph>
</Customization>