Acumatica PXSelector中的BQL以a开头进行过滤
我的DAC中有一个字段,我想在其中放置一个选择器,用于查找销售人员。我知道怎么做:Acumatica PXSelector中的BQL以a开头进行过滤,acumatica,Acumatica,我的DAC中有一个字段,我想在其中放置一个选择器,用于查找销售人员。我知道怎么做: [PXSelector(typeof(SalesPerson.salesPersonCD) ,typeof(SalesPerson.salesPersonCD) ,typeof(SalesPerson.descr))] 我的问题是,我想根据SalesPerson CD的前三个字符筛选此选择器,即,带有“SSR”或类似内容的starts。
[PXSelector(typeof(SalesPerson.salesPersonCD)
,typeof(SalesPerson.salesPersonCD)
,typeof(SalesPerson.descr))]
我的问题是,我想根据SalesPerson CD的前三个字符筛选此选择器,即,带有“SSR”或类似内容的starts。我知道您可以使用Search命令在选择器中使用BQL,并且我知道如何设置常量类,但我不确定通过开头字符过滤的语法。除了创建自定义BQL运算符外,您还可以通过使用LIKE运算符实现“start with”,最后使用%通配符。您正在筛选的BQL字段可能是一个DAC属性,在get访问器中具有自定义代码,它接受用户输入的字段并在末尾添加通配符,如下所示:
public abstract class myFieldWildcard : PX.Data.IBqlField { };
[PXString(30, IsUnicode = true)]
public virtual String MyFieldWildcard
{
[PXDependsOnFields(typeof(myField)]
get
{
return MyField + PXDatabase.Provider.SqlDialect.WildcardAnything;
}
}
然后,您将能够使用该字段作为PXSelector
属性的一部分:
[PXSelector(typeof(Search<SomeTable.someField, Where<SomeTable.someField,Like<Current<MyFilter.myFieldWildcard>>>>))]
[PXSelector(typeof(Search))]
非常感谢,伙计们;D