gpt4 book ai didi

acumatica - 我们如何在 Acumatica 中添加对自定义新屏幕的通用搜索

转载 作者:行者123 更新时间:2023-12-04 17:29:04 24 4
gpt4 key购买 nike

用户要求为新屏幕添加通用搜索,在 Inventory 模块下添加我们的新屏幕,新屏幕也不是入口屏幕,它就像用户 View 屏幕一样,所以在 DAC 的注释 id 字段中,我们添加了可搜索属性但它不起作用。

有人可以帮我提供示例代码或纠正我做错的地方吗?另外让我知道是否可以在 Acumatica 中为新屏幕添加可搜索属性?

提前致谢。

 #region Noteid
public new abstract class noteid : PX.Data.BQL.BqlGuid.Field<noteid> { }
protected Guid? _Noteid;
[PXSearchable(PX.Objects.SM.SearchCategory.All , "{0}", new Type[] { typeof(KWLotSerialDetails.lotSerialNbr) },
new Type[] { typeof(KWLotSerialDetails.lotSerialNbr), typeof(KWLotSerialDetails.inventoryID)},
NumberFields = new Type[] { typeof(KWLotSerialDetails.lotSerialNbr) },
Line1Format = "{0}{1}", Line1Fields = new Type[] { typeof(KWLotSerialDetails.lotSerialNbr), typeof(KWLotSerialDetails.inventoryID)},
Line2Format = "{1}{2}", Line2Fields = new Type[] { typeof(KWLotSerialDetails.lotSerialNbr), typeof(KWLotSerialDetails.inventoryID) })]

public virtual Guid? Noteid
{
get
{
return this._Noteid;
}
set
{
this._Noteid = value;
}
}
#endregion

最佳答案

您绝对可以将通用搜索添加到自定义表格中。搜索被添加到 DAC,而不是屏幕,因此在“用户 View 屏幕”中使用并不重要。当重建全文索引时,您的 NoteID 字段将被处理到 SearchIndex 表中。

我可能是错的,但我也认为您需要将 Noteid 字段转换为 NoteID/noteID 才能正常工作。 C# 区分大小写,FullIndexRebuild.cs 包含: entity.GetNestedType("noteID")...所以我认为它没有找到您的 Noteid/noteid 字段,因为这个。

我的自定义 PXSearchable NoteID 字段之一:

#region NoteID
[PXNote]
[PXSearchable(PX.Objects.SM.SearchCategory.IN, "{0}",
new Type[] { typeof(SSINItemManufacturer.manufacturerItem) },
new Type[] { typeof(SSINItemManufacturer.manufacturerItem) },
NumberFields = new Type[] { typeof(SSINItemManufacturer.manufacturerItem) },
Line1Format = "{0}", Line1Fields = new Type[] { typeof(SSINItemManufacturer.manufacturerItem) },
Line2Format = "{0}", Line2Fields = new Type[] { typeof(SSINItemManufacturer.manufacturerItem) },
WhereConstraint = typeof(Where<Current<SSINItemManufacturer.isActive>, NotEqual<False>>),
MatchWithJoin = typeof(InnerJoin<InventoryItem, On<InventoryItem.inventoryID, Equal<SSINItemManufacturer.inventoryID>>>),
SelectForFastIndexing = typeof(Select2<SSINItemManufacturer, InnerJoin<InventoryItem, On<SSINItemManufacturer.inventoryID, Equal<InventoryItem.inventoryID>>>>)
)]
public virtual Guid? NoteID { get; set; }
public abstract class noteID : PX.Data.BQL.BqlGuid.Field<noteID> { }
#endregion

还要检查“重建全文实体”屏幕是否“已知”您的 DAC。检查屏幕 SM209500 以确保您的 DAC 已列出,如果是,请尝试在其上重建全文索引。

关于acumatica - 我们如何在 Acumatica 中添加对自定义新屏幕的通用搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61326262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com