Acumatica 更改列过滤器的默认选项

Acumatica 更改列过滤器的默认选项,acumatica,Acumatica,是否可以更改默认选项“所有列过滤器”?我很确定我可以用一些JavaScript来实现这一点,但我想知道在Acumatica框架中是否有任何方法可以改变这一点。 答案将是否定的。过滤器位于PX.Web.UI.dll类中的PXGridFilter内部类中。您感兴趣的属性是条件 该值在PXGrid类的一个私有方法中设置。方法代码如下: private IEnumerable<PXGridFilter> ab() { List<PXGridFilter> list = n

是否可以更改默认选项“所有列过滤器”?我很确定我可以用一些JavaScript来实现这一点,但我想知道在Acumatica框架中是否有任何方法可以改变这一点。

答案将是否定的。过滤器位于
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();