【发布时间】:2018-08-01 22:57:09
【问题描述】:
我有一个自定义表格,用于在固定资产中存储可维修的组件。使用 AssetMaint 屏幕上的网格访问该列表。
我设置了一个 ID 字段以使用编号顺序填充。我不确定如何设置默认值,因此该字段默认填充“
这有点工作,但有一些问题。当我单击添加按钮时,ID 字段为空白,但当我再次单击添加时,它会填充“
这是组件表的 DAC 的一部分:
[Serializable]
public class FAServiceComponent : IBqlTable
{
#region AssetID
public abstract class assetID : IBqlField { }
[PXDBInt(IsKey = true)]
[PXDBDefault(typeof(FixedAsset.assetID), DefaultForUpdate = false)]
[PXParent(typeof(Select<FixedAsset, Where<FixedAsset.assetID, Equal<Current<FAServiceComponent.assetID>>>>))]
[PXUIField(DisplayName = "Asset ID", Visible = false, Enabled = false)]
public virtual int? AssetID { get; set; }
#endregion
#region serviceComponentID
public abstract class serviceComponentID : IBqlField { }
[PXDBString(30, IsKey = true, IsUnicode = true)]
[PXUIField(DisplayName = "Component ID")]
[PXDefault(typeof(Search2<Numbering.newSymbol,
InnerJoin<FixedAsset, On<FixedAssetExt.usrServiceComponentNumberingSeq, Equal<Numbering.numberingID>, And<FixedAsset.assetID, Equal<Current<FixedAsset.classID>>>>>>))]
[Numbering]
public virtual string ServiceComponentID { get; set; }
#endregion
#region serviceComponentDescription
public abstract class description : IBqlField { }
[PXDBString(255)]
[PXUIField(DisplayName = "Description")]
[PXDefault(PersistingCheck = PXPersistingCheck.Nothing)]
public virtual string Description { get; set; }
#endregion
public class NumberingAttribute : AutoNumberAttribute
{
public NumberingAttribute():
base(typeof(Search<FixedAssetExt.usrServiceComponentNumberingSeq, Where<FixedAsset.assetID, Equal<Current<FixedAsset.classID>>>>),
typeof(AccessInfo.businessDate)) {; }
}
}
【问题讨论】:
-
页面上有 InitNewRow="true" 吗? (像这样进入 PXGrid 内部...
) -
~是的,我已经启用了这个功能~我现在就启用了。我在发完这篇文章后启用了它。
在现在创建记录时填充,但如果我不在记录之间保存,我仍然会遇到第二条记录不填充的问题。
标签: acumatica