Acumatica 更改列过滤器的默认选项
是否可以更改默认选项“所有列过滤器”?我很确定我可以用一些JavaScript来实现这一点,但我想知道在Acumatica框架中是否有任何方法可以改变这一点。Acumatica 更改列过滤器的默认选项,acumatica,Acumatica,是否可以更改默认选项“所有列过滤器”?我很确定我可以用一些JavaScript来实现这一点,但我想知道在Acumatica框架中是否有任何方法可以改变这一点。 答案将是否定的。过滤器位于PX.Web.UI.dll类中的PXGridFilter内部类中。您感兴趣的属性是条件 该值在PXGrid类的一个私有方法中设置。方法代码如下: private IEnumerable<PXGridFilter> ab() { List<PXGridFilter> list = n
答案将是否定的。过滤器位于
PX.Web.UI.dll
类中的PXGridFilter
内部类中。您感兴趣的属性是条件
该值在PXGrid
类的一个私有方法中设置。方法代码如下:
private IEnumerable<PXGridFilter> ab()
{
List<PXGridFilter> list = new List<PXGridFilter>();
if (this.FilterID != null)
{
Guid? filterID = this.FilterID;
Guid guid = PXGrid.k;
if (filterID == null || (filterID != null && filterID.GetValueOrDefault() != guid))
{
using (IEnumerator<PXResult<FilterRow>> enumerator = PXSelectBase<FilterRow, PXSelect<FilterRow, Where<FilterRow.filterID, Equal<Required<FilterRow.filterID>>, And<FilterRow.isUsed, Equal<True>>>>.Config>.Select(this.DataGraph, new object[]
{
this.FilterID.Value
}).GetEnumerator())
{
while (enumerator.MoveNext())
{
FilterRow row = enumerator.Current;
string dataField = row.DataField;
PXCache pxcache = PXFilterDetailView.TargetCache(this.DataGraph, new Guid?(this.FilterID.Value), ref dataField);
if (this.Columns[row.DataField] != null)
{
List<PXGridFilter> list2 = list;
int valueOrDefault = row.OpenBrackets.GetValueOrDefault();
string dataField2 = row.DataField;
string dataField3 = row.DataField;
int value = (int)row.Condition.Value;
object value2 = pxcache.ValueFromString(dataField, row.ValueSt);
string valueText = row.ValueSt.With((string _) => this.Columns[row.DataField].FormatValue(_));
object value3 = pxcache.ValueFromString(dataField, row.ValueSt2);
string value2Text = row.ValueSt2.With((string _) => this.Columns[row.DataField].FormatValue(_));
int valueOrDefault2 = row.CloseBrackets.GetValueOrDefault();
int? @operator = row.Operator;
int num = 1;
list2.Add(new PXGridFilter(valueOrDefault, dataField2, dataField3, value, value2, valueText, value3, value2Text, valueOrDefault2, @operator.GetValueOrDefault() == num & @operator != null));
}
}
return list;
}
}
}
if (this.FilterRows != null && this.FilterRows.Count > 0)
{
for (int i = 0; i < this.FilterRows.Count; i++)
{
PXFilterRow row = this.FilterRows[i];
list.Add(new PXGridFilter(row.OpenBrackets, row.DataField, row.DataField, (int)row.Condition, row.Value, row.Value.With(delegate(object _)
{
if (this.Columns[row.DataField] == null)
{
return _.ToString();
}
return this.Columns[row.DataField].FormatValue(_);
}), row.Value2, row.Value2.With(delegate(object _)
{
if (this.Columns[row.DataField] == null)
{
return _.ToString();
}
return this.Columns[row.DataField].FormatValue(_);
}), row.CloseBrackets, row.OrOperator));
}
}
return list;
}
px_all.ctl00_phG_grid_fd_cond.items.items[7]。值“EQ”
px_all.ctl00_phG_grid_fd_cond.items.items[8]。值“NE”
px_all.ctl00_phG_grid_fd_cond.items.items[9]。值“GT”
px_all.ctl00_phG_grid_fd_cond.items.items[13]。值“LIKE”
px_all.ctl00_phG_grid_fd_cond.items.items[14]。值“类似”
px_all.ctl00_phG_grid_fd_cond.items.items[15]。值“RLIKE”
px_all.ctl00_phG_grid_fd_cond.items.items[16]。值“NOTLIKE”
px_all.ctl00_phG_grid_fd_cond.items.items[18]。值为“ISNULL”
px_all.ctl00_phG_grid_fd_cond.items.items[19]。值“ISNOTNULL”
谢谢桑维尔,这就是我要找的。我很感激包含PXGridFilter类。
px_all.ctl00_phG_grid_fd.show();
px_all.ctl00_phG_grid_fd_cond.items.items[7].setChecked(true);
px_all.ctl00_phG_grid_fd_ok.element.click();