Quantcast
Channel: Microsoft Dynamics AX Forum - Recent Threads
Viewing all articles
Browse latest Browse all 72043

Query missing QueryBuildDataSource for FormDataSource SalesLineForeignTradeCategory.

$
0
0

Hi,

I am new to AX. I have used a display field and tried to fillter that field by using Filter by field, Filter by selection option. when i tried to clear the filter it clears all the data from the form. The form looks empty and an error is popping like shown in the screenshot. Here i have attached my code also. Help me on this.

public void context()
{
    int             selectedMenu;
    formrun         fr;
    Args            ag;
    Name            strtext;
    querybuilddataSource qb1;
    queryrun    qr;
    query       q;
    PopupMenu menu = new PopupMenu(element.hWnd());
    int a = menu.insertItem('Filter By Field');
    int b = menu.insertItem('Filter By Selection');
    int c = menu.insertItem('Remove Filter');
    ;
q   = SalesLine_ds.query();
qb1 = q.dataSourceTable(tablenum(SalesLine));
//qb1 = qb1.addDataSource(TableNum(CustTable));
//qb1.addLink(FieldNum(SalesLine,CustAccount),FieldNum(CustTable,AccountNum));
//qb1 = qb1.addDataSource(TableNum(SalesLine));

selectedMenu = menu.draw();

    switch (selectedMenu)
    {
    case -1: //Filter by field
            break;
    case a:
            ag = new args('SysformSearch');
            fr = new formrun(ag);
            fr.run();
            fr.wait();
//Reading User entered value for filter process
            strtext = fr.design().controlName('findedit').valueStr();
            if(strtext)
            {
//Creating a query for filter
                qb1.addRange(FieldNum(SalesLine,CustAccount)).value(strtext);
                SalesLine_ds.query(Q);
                SalesLine_ds.executeQuery();
            }
            break;
    case b:                                      // Filter By Selection
            qb1.addRange(FieldNum(SalesLine,CustAccount)).value(customeraccount.valueStr());
            SalesLine_ds.query(Q);
            SalesLine_ds.executeQuery();
            break;
    case c :                                      // Remove Filter
            q   = new Query();
            qb1 = q.addDataSource(tablenum(SalesLine));
            qb1.clearLinks();
            qb1.clearRanges();
            SalesLine_ds.query(Q);
            SalesLine_ds.removeFilter();
            break;
    Default:
            break;
    }

}

Regards,

Ram


Viewing all articles
Browse latest Browse all 72043

Trending Articles