Debuggen von SSRS-Dataprovider

Bei der Entwicklung bzw. Anpassung von Dataprovidern eines SSRS-Reports hatte ich in der Vergangenheit immer wieder das Thema, daß das Aufrufen/Testen des SSRS-Reports  oft mehr Zeit beansprucht, als die eigentliche Anpassung im Code.

Deshalb ist folgender Job entstanden, der mir lediglich den Inhalt der vom Dataprovider erstellten (temporären) Tabelle als einfaches Infolog ausgibt.

Das ist vor allem dann hilfreich, wenn man den Dataprovider (abgeleitet von SRSReportDataProviderBase) zur Fehleranalyse debuggen möchte, das aber aufgrund seiner Programmierung aber vielleicht nicht so ohne weiteres möglich ist. Im Beispiel handelt es sich um den Bericht "Arbeitsbeschreibung" aus dem Service-Modul.

static void testSSRSDatProvider(Args _args)
{
    SMAWorkNoteTmp      tempTable;
    SMAWorkNoteDP       dataProvider = new SMAWorkNoteDP();
    SMAWorkNoteContract contract = new SMAWorkNoteContract();
    Query               query = new Query(identifierStr(SMAWorkNote));

    try
    {
        SysQuery::findOrCreateRange(
            query.dataSourceTable(
                tableNum(SMAServiceOrderTable)),
                fieldNum(SMAServiceOrderTable, ServiceOrderId)).value("00018");

        contract.parmItemConsumption(true);
        contract.parmItemRequirement(true);
        contract.parmExpense(true);
        contract.parmFee(true);
        contract.parmAdditionalNotes(true);
        contract.parmLineText(true);

        if( !contract.validate())
        {
            throw error(error::missingParameter(contract));    
        }

        dataProvider.parmDataContract(contract);
        dataProvider.parmQuery(query);
        dataProvider.processReport();

        tempTable = dataProvider.getSMAWorkNoteTmp();

        while select tempTable
        {
            info(tempTable.otServiceOrderId);
        }
    }
    catch (Exception::Break)
    {
        info("Aborted");
    }
}
Dieser Beitrag bezieht sich auf die Version:
Dynamics AX 2012

sperli 02.12.2015 22:37 | #1

Servus Heinz, einfach nicht mit CIL ausführen, dann sollte s debuggen geh'n 😊
lg, alles klar bei dir??!! Weiter so!

Kommentar hinzufügen
 
 

 

 
 
 
Beiträge des aktuellen Monats
Oktober 2019
MoDiMiDoFrSaSo
 123456
78910111213
14151617181920
21222324252627
28293031 
 
© 2006-2019 Heinz Schweda | Impressum | Kontakt | English version | Mobile Version
Diese Webseite verwendet Cookies, um Benutzern einen besseren Service anzubieten. Wenn Sie weiterhin auf der Seite bleiben, stimmen Sie der Verwendung von Cookies zu.  Mehr dazu