AX 2012: SSRS: Einen Bericht auf Basis eines Dataproviders erstellen

Ein Dataprovider ist eine Klasse, die dazu verwendet wird um Daten für die Verwendung durch die SQL Reporting Services (SSRS) aufzubereiten. Ein solcher Dataprovider ist in jenen Fällen sehr hilfreich, wenn die anzuzeigenden Daten nicht - oder nur sehr mühsam - über einen Query ermittelt werden können.

Im folgenden eine Schritt-für-Schritt Anleitung, wie man einen solchen Dataprovider erstellt und in den SSRS verwendet.

 

Schritt 1: Klasse erstellen, abgeleitet von SRSReportDataProviderBase

class DmoSalesLineCountDataProvider extends SRSReportDataProviderBase
{
    DmoSalesLineCountTmp DmoSalesLineCountTmp;
}

Screenshot

 

Schritt 2: Tabelle erstellen (temporär, welche durch den Dataprovider mit Daten befüllt wird)

 

Schritt 3: Erstellen/Überschreiben der notwendigen Methoden in der zuvor erstellten Klasse

Überschreiben der Methode processReport():

[SysEntryPointAttribute]
public void processReport()
{
    InventTable inventTable;

    //super();

    while select InventTable
    {
        DmoSalesLineCountTmp.ItemId    = inventTable.ItemId;
        DmoSalesLineCountTmp.ItemName  = inventTable.itemName();
        DmoSalesLineCountTmp.Counter   = int642int((select count(RecId) from SalesLine where SalesLine.ItemId == inventTable.ItemId).recid);
        DmoSalesLineCountTmp.insert();
    }
}

Erstellen einer neuen Methode, welche als Rückgabeparameter die temporäre Tabelle liefert:

[
    SRSReportDataSetAttribute(tableStr(DmoSalesLineCountTmp))
]
public DmoSalesLineCountTmp getDmoSalesLineCountTmp()
{
    select DmoSalesLineCountTmp;

    return DmoSalesLineCountTmp;
}

 

Schritt 4: Im Visual Studio statt einem Query beim Dataset den Report Data Provider angeben

Screenshot

Danach kann man per Drag & Drop das Dataset auf den Design-Knoten ziehen und auf diese Weise ein Autodesign erzeugen. Innerhalb dieses Designs nun die anzuzeigenden Spalten in die gewünschte Reihenfolge bringen:

  • itemId
  • itemName
  • counter

 

Schritt 5: Preview im Visual Studio (optional)

Screenshot

 

Schritt 6: MenuItem erstellen

Um den Bericht nun in Dynamics AX einzubinden, ist ein MenuItem erforderlich.

 

Schritt 7: Aufrufen des Berichtes aus Dynamics AX heraus - Fertig

Screenshot

Dieser Beitrag bezieht sich auf die Version:
Dynamics AX 2012

Kommentar hinzufügen
 
 

 

 
 
 
Beiträge des aktuellen Monats
März 2024
MoDiMiDoFrSaSo
 123
45678910
11121314151617
18192021222324
25262728293031
 
© 2006-2024 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