我不确定是否有框架调用,但您总是可以从 BQL 查询中进行调用。要么加入另一个查询,要么单独加入。
如果你自己做,这样的事情会起作用
PX.SM.SiteMap sitemap = PXSelect<PX.SM.SiteMap, Where<PX.SM.SiteMap.screenID, Equal<Required<PX.SM.SiteMap.screenID>>>>.Select(this, sitemapid);
if (sitemap != null && sitemap.Title != null)
{
mytitle = sitemap.Title;
}
你也可以从你的网格选择方法中调用它
类似的东西
PXSelect<MyGrid> GridResults;
protected virtual IEnumerable gridResults()
{
[....MY BASE SELECT HERE....]
foreach......
{
MyGrid gridrow = new MyGrid();
[STUFF]
PX.SM.SiteMap sitemap = PXSelect<PX.SM.SiteMap, Where<PX.SM.SiteMap.screenID, Equal<Required<PX.SM.SiteMap.screenID>>>>.Select(this, sitemapid);
if (sitemap != null && sitemap.Title != null)
{
gridrow.SiteMapTitle = sitemap.Title;
}
yield return gridrow
}
}
另一种选择是将选择器添加到您的字段。像这样的:
[PXDBCreatedByScreenID()]
[PXSelector(typeof(Search3<SiteMap.screenID,
OrderBy<Asc<SiteMap.screenID>>>), typeof(SiteMap.screenID), typeof(SiteMap.title),
DescriptionField = typeof(SiteMap.title))]
[PXUIField(DisplayName = "Created By")]
public virtual void MyDAC_SiteMapTitle_CacheAttached(PXCache cache)
{}
然后将网格中的显示类型改为“文本”
<px:PXGridColumn DataField="SiteMapTitle" Width="200px" DisplayMode="Text">