Query filter

mike_espinamike_espina Member Posts: 55
edited 2006-09-13 in Dynamics AX
Hi experts,

How can I get the entry in the criteria column (range tab) that is being prompted by the report dialog box. I wish to place this value in my report.

Comments

  • kjærsgaardkjærsgaard Member Posts: 11
    Hi Mike,

    you can reference the query you have setup i the AOT, simple by using Query in X++. Then you can attach the existing datasource to the to the existing Query, by referencing the datasource "AssetLending". Then you only have to initialize a QueryBuildRange object, reference- and assign the existing range. Then the QueryBuildRange object holds the criteria value. I have made a little example and written the criteria value to the infolog.

    public boolean fetch()
    {
    boolean ret;
    QueryBuildDatasource qbs;
    QueryBuildRange qbr;
    ;

    ret = super();

    qbs = new QueryBuildDatasource();
    qbs = Query.dataSourceName("AssetLending");
    qbr = new QueryBuildRange();
    qbr = qbs.range(3);

    Info(strfmt("Employee, %1 ", qbr.value()));

    return ret;
    }

    I hope you can use the answer.
    Best regards
    Lars
  • mike_espinamike_espina Member Posts: 55
    hi kjærsgaard ,

    Thanks for the code. I have used your code and it work. Thanks a lot.

    Just one more do you have a code for calling stored procedure in axapta? The Stored Procedure is in SQL2000.

    Thanks again

    Mike
  • kjærsgaardkjærsgaard Member Posts: 11
    Hi Mike,

    Notice in the example below that I have not declared the parm1 and parm2 variables. In a realworld example it should be done, but I think you know that.

    The general way to call Stored Procedures. The method in a class:

    public void callStoredProcedure()
    {
    Connection con = new Connection;
    Statement stmt = con.CreateStatement;
    Resultset r;
    Str execStr;
    ;

    // sp_storedProcedure is the name of the stored procedure in the
    // SQL-Server
    execStr = strFmt("exec sp_storedProcedure %1 %2", parm1, parm2);
    r = stmt.executeQuery(execStr);

    // and then you eventually can iterate your resultset, r
    }

    I hope you can use the answer :lol:
    Best regards
    Lars
Sign In or Register to comment.