SSRS report (document reports) from the form based report - only Controller and RDP

Controller 


/// <summary>

///    The <c>InventABCController</c> class is the controller class for the <c>InventABC</c> SSRS report.

/// </summary>

class NXRSamplingResultReportController extends SrsReportRunController 

{

   

    public void prePromptModifyContract()

    {

        Query                   query;

        QueryBuildDataSource    qbds;

        EDF_SamplingTable       samplingTable;


        if (this.parmArgs().record().TableId == tableNum (prodTable))

        {

            samplingTable   =   this.parmArgs().record() as prodTable;

            query           =   this.getFirstQuery();

            qbds            =   query.dataSourceTable(tableNum(EDF_SamplingTable));

            SysQuery::findOrCreateRange(qbds,fieldNum(EDF_SamplingTable,SamplingId)).value(samplingTable.SamplingId);

        }

    }


    public static void main(Args _args)

    {

        NXRSamplingResultReportController  controller = new NXRSamplingResultReportController();


        EDF_SamplingTable   samplingTable = _args.record();


        if(samplingTable.TypeId like '*Asalan*')

        {

            controller.parmReportName(ssrsReportStr(NXRSamplingResultReport, Asalan));

        }

        else if(samplingTable.TypeId like '*FOB*')

        {

            controller.parmReportName(ssrsReportStr(NXRSamplingResultReport, FOB));

        }

        else if(samplingTable.TypeId like '*local*')

        {

            controller.parmReportName(ssrsReportStr(NXRSamplingResultReport, LocalPurchase));

        }

        else if(samplingTable.TypeId like '*Triage*')

        {

            controller.parmReportName(ssrsReportStr(NXRSamplingResultReport, Triage));

        }

        

        controller.parmShowDialog(false);

        controller.parmLoadFromSysLastValue(false);

        controller.startOperation();

    }


}


RDP


[SrsReportQuery(queryStr(NXRSamplingResultReportQuery))]

public class NXRSamplingResultReportDP extends SRSReportDataProviderBase

{

    NXRSamplingResultReportTmp          reportTmp;

   

   


  

    /// <summary>

    ///    Retrieves the data table from the <c>TmpABC</c> table.

    /// </summary>

    /// <returns>

    ///    The required report data table.

    /// </returns>

    [SrsReportDataSet(tableStr(NXRSamplingResultReportTmp))]

    public NXRSamplingResultReportTmp getTmpABC()

    {

        select reportTmp;

        return reportTmp;

    }


    /// <summary>

    ///    Processes the report business logic.

    /// </summary>

    /// <remarks>

    ///    This method is used to process the report business logic that is used by <c>InventABC</c> report.

    /// </remarks>

    public void processReport()

    {

        Query       query;

        QueryRun    qr;

        EDF_SamplingTable    samplingTable;

        

        query   =   this.parmQuery();

        qr      =   new QueryRun(query);


        while(qr.next())

        {

            samplingTable = qr.get(tableNum(EDF_SamplingTable));


        }

    }


}

Comments

Popular posts from this blog

Ledger dimensions and financial Dimensions X++

Logistics address, postal address, address phone fax contact information

Consume odata/web api d365fo and parsing json content