我们已经将一个实例从6.1升级到构建版本20.114.0020,在测试自定义数据输入页面期间,客户端报告收到了以下内容:
错误:更新'DACName'记录失败因为某些字段的数据太长
我们可以确认数据在6.1生产环境中被正确截断,并且检查显示数据库端的字段声明和DAC声明是统一的。
public abstract class platformOrdNbr : IBqlField
{
}
[PXDBString(30)]
[PXUIField(DisplayName = "Platform Order Nbr")]
public virtual string PlatformOrdNbr { get; set; }
我已经尝试了其他步骤,例如在数据库级别设置DBCC TRACEOFF (460,-1);
以及在DAC字段声明中设置InputMask = ""
。
对于这个问题的任何和所有潜在的见解都将不胜感激。我必须注意,超过字段长度的数据必须被截断,字段的长度不能增加。
我们的产品也遇到了这种情况。当Acumatica为2020 R1重新设计ORM时,他们改变了产品的行为,使其不再自动截断数据以符合SQL规范。我们为此开了一张罚单,并被告知要添加代码来截断DAC级别的数据。
{这个设置。_ItemDescription = value。长度<= 40 ?Value:值。Substring (0, 40);} '