【问题标题】:how to get static range in your report如何在报告中获取静态范围
【发布时间】:2013-02-12 08:37:57
【问题描述】:

在 AX 报告中,用户可以选择不同的范围。我试图表明用于过滤报告本身的用户的标准甚至

表达式"parameter!CustomerAccount.Value" 不起作用,因为此过滤器不是静态参数。

用户可以使用查询中的任何表以及表中的任何字段以及任何条件。我正在锁定技巧以获取哪个表、哪个字段以及它使用的条件。

【问题讨论】:

    标签: dynamics-ax-2009 dynamics-ax-2012 axapta ax


    【解决方案1】:

    这个方法很好用^_^

    ((我用的是女贞而不是静态的))

        static void getQueryRanges2(Args _args)
    {
     Query query;
     QueryRun queryRun;
     QueryBuildDataSource qbd;
     QueryBuildRange range;
     QueryFilter filter;
     int cnt, filtercnt, i,j, k;
     DictTable dictTable;
     DictField dictField;
     str fieldLabel;
     ;
     query = new query(queryStr(smmSalesCustItemStatistics));
     queryRun = new QueryRun(query);
     queryRun.prompt();
     query = queryRun.query();  for(i = 1; i <= query.dataSourceCount(); i++)
     {
        cnt = query.dataSourceNo(i).rangeCount();
        filtercnt = 0;
        if(!query.dataSourceNo(i).embedded())
        {
            filtercnt = query.queryFilterCount(query.dataSourceNo(i));
        }
        dictTable = new DictTable(query.dataSourceNo(i).table());
        for (k=1; k<= filtercnt; k++)
        {
            filter = query.queryFilter(k, query.dataSourceNo(i));
            dictField = new DictField(query.dataSourceNo(i).table(), fieldname2id(query.dataSourceNo(i).table(), filter.field()));
            info (strFmt("%1, %2. Range = %3", dictTable.label(), dictField.label(), filter.value()));
        }
        for (j=1; j<=cnt; j++)
        {
            range = queryRun.query().dataSourceNo(i).range(j);
            dictField = new DictField(query.dataSourceNo(i).table(), fieldname2id( query.dataSourceNo(i).table(), range.AOTname()));
            if(range.value())
            {
                info(strfmt("%1, %2. Range = %3",dictTable.label(), dictField.label(), range.value()));
            }
        }
     }
    }
    

    享受:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-02-16
      • 1970-01-01
      • 1970-01-01
      • 2017-01-24
      • 2019-03-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多