In diesem Beispiel wird Schritt für Schritt erläutert, wie Sie ein HTML-WebReport-Widget erstellen, das einen Tabellenbericht mit der Sammlungsverarbeitung in der Datenquelle gemäß der Direktive @TABLEREPORT durchführt. Weitere Informationen zur Direktive @TABLEREPORT finden Sie unter @TABLEREPORT. Diese Methode kann für größere Datenmengen verwendet werden. Die Datenquelle muss hierfür auf besondere Weise konfiguriert werden, damit die Paginierung, Sortierung und Filterung korrekt vorgenommen werden können. Zurzeit werden nur LiveReport-Datenquellen bei dieser Methode unterstützt.

 

Wichtig

Wichtig:
Da bei dieser Methode die Paginierung in der Datenquelle vorgenommen wird, wird nur eine Seite mit Ergebnissen zur Verarbeitung an den WebReport zurückgegeben. Daher kann diese Methode für größere Datenmengen verwendet werden.

Bei kleinen bis mittleren Datenmengen finden Sie weitere Hinweise unter Methode 1: Anweisungen für die Sammlungsverarbeitung im WebReport.

 

So erstellen Sie ein HTML-WebReport-Widget, das die Sammlungsverarbeitung in der Datenquelle durchführt:

  1. Erstellen Sie einen WebReport:

    1. Klicken Sie in Content Server auf Objekt hinzufügen und dann auf WebReport.

    2. Geben Sie auf der Seite WebReport hinzufügen im Abschnitt Name einen eindeutigen Namen für den WebReport ein.

      Nennen Sie den neuen WebReport in diesem Beispiel „WebRep CPDS01“.

    3. Klicken Sie in der Liste Berichtansichtsdatei auf widget_table_report_process_data_in_datasource.

    4. Klicken Sie in der Liste LiveReport-Datei auf „table_report_audit_events“.

      Hierdurch wird neben dem WebReport auch ein neuer LiveReport-Knoten erstellt. Dieser LiveReport-Knoten hat den Titel „Prüfungsereignisse für diese Woche“ und wählt automatisch den LiveReport als Datenquelle aus.

    5. Klicken Sie auf Hinzufügen.

    6. Wählen Sie im neuen WebReport-Menü Funktionen die Option Eigenschaften > Allgemein.

    7. Notieren Sie sich auf der Registerkarte Allgemein den Wert im Feld Zugriffsname. Sie benötigen diesen Wert zu einem späteren Zeitpunkt in 4.g.

  2. Wählen Sie einen Beispiel-Content Server-Ordnerknoten aus, der als Container verwendet werden soll, oder erstellen Sie den Ordnerknoten. Erstellen Sie in diesem Beispiel den Ordner „DatSrc TableReport Perspective“.

  3. Bearbeiten Sie den WebReport, den Sie in 1 erstellt haben („WebRep CPDS01“).

    1. Klicken Sie im Menü Funktionen des „WebRep CPDS01“-WebReports auf Berichtsansicht bearbeiten.

    2. Scrollen Sie auf der Seite Bearbeiten WebReport bis zum Ende und bearbeiten Sie den letzten Abschnitt wie folgt:

      [LL_WEBREPORT_INSERTJSON @TABLEREPORT
      COLLECTIONPROCESSING:"datasource"
      EXCLUDECOLUMNS:'["RowNumber"]'
      FORMATCOLUMNNAMES:AuditID:"Event":PerformerID:"User"
      FORMATCOLUMNS:AuditID:"[LL_REPTAG=AuditID LABEL:AUDITID /]":SubType:"[LL_REPTAG=SubType LABEL:SUBTYPE DEF:'' /]":PerformerID:"[LL_REPTAG=PerformerID USERINFO:NAME /]" /]
       

      Hinweis

      Hinweis:
      Falls FORMATCOLUMNS mit COLLECTIONPROCESSING verwendet und auf „datasource“ eingestellt ist, wird die Sortierung für die formatierten Spalten automatisch deaktiviert. Dies liegt daran, dass die Sortierungswerte in der Benutzeroberfläche nicht für Sortiervorgänge im LiveReport verfügbar sind. Wenn Sie formatierte Werte benötigen, die auch sortiert werden können, müssen Sie die Formatierung in SQL vornehmen.

       
    3. Klicken Sie auf Version hinzufügen.

  4. Erstellen Sie einen zweiten neuen WebReport. Nennen Sie den zweiten neuen WebReport in diesem Beispiel „WebRep CPDS02“.

    1. Klicken Sie in Content Server im Menü Objekt hinzufügen auf WebReport.

    2. Geben Sie im Feld Name den Namen „WebRep DPDS02“ ein.

    3. Klicken Sie in der Liste Berichtansichtsdatei auf blank_report.

    4. Klicken Sie auf Hinzufügen. Sie werden in einem Dialogfeld darauf hingewiesen, dass Sie keine Datenquelle ausgewählt haben. Klicken Sie hier auf OK.

    5. Klicken Sie im Menü Funktionen des „WebRep CPDS02“-WebReports auf Berichtsansicht bearbeiten.

    6. Bearbeiten Sie den Inhalt auf der Seite WebReport bearbeiten wie folgt:

      [/* Title: Blank Reportview */]

      <script>
      csui.require(['csui/lib/marionette', 'csui/utils/contexts/page/page.context', 'webreports/controls/table.report/table.report.view'], function (Marionette, PageContext, TableReportView) {

      var contentRegion = new Marionette.Region({el: '#content'}),
      pageContext = new PageContext(),
      tableReportView,
      options;

      options = {
      context: pageContext,
      data: {
      id: 463411,
      title: 'Audit Events for the Past Week',
      header: false,
      titleBarIcon: 'title-assignments',
      columnsWithSearch: 'name',
      sortBy: 'AuditDate',
      sortOrder: 'desc'
      }
      };

      tableReportView = new TableReportView(options);
      contentRegion.show(tableReportView);
      pageContext.fetch();

      });
      </script>

      <div id="content"></div>

      [LL_WEBREPORT_STARTROW /]
      [LL_WEBREPORT_ENDROW /]
    7. Ändern Sie die folgende Zeile, bevor Sie die Änderungen speichern:

      id: 463411,

      Damit wird die im ersten WebReport notierte ID in Schritt 1.f kopiert.

    8. Klicken Sie auf Version hinzufügen.

  5. Öffnen Sie den Perspective Manager und erstellen Sie eine neue Perspektive.

    Informationen zum Perspective Manager finden Sie in der Online-Hilfe im Perspective Manager.

  6. Konfigurieren Sie die neue Perspektive:

    1. Führen Sie auf der Registerkarte Allgemein folgende Schritte aus:

      1. Geben Sie einen eindeutigen Namen für diese Perspektive an. Nennen Sie die Perspektive in diesem Beispiel „DS-Persp01“.

      2. Wählen Sie einen konkreten Testordner zum Speichern dieser Perspektive aus. Sie können diese Perspektive in dem in Schritt 2 ausgewählten Ordner speichern. Suchen Sie in diesem Beispiel den Ordner „DatSrc TableReport Perspective“.

    2. Klicken Sie auf der Registerkarte Layout im Feld Typ auf „Links - Mitte - Rechts“.

    3. Führen Sie auf der Registerkarte Konfigurieren folgende Schritte aus:

      1. Wählen Sie im Bereich Widget-Bibliothek innerhalb der Widget-Gruppe Content Intelligence das Widget „HTML-WebReport“ aus, und ziehen Sie es in mittlerer Position in die Perspektive.

      2. Klicken Sie innerhalb des Bereichs Optionen in den „HTML WebReport“-Widget-Optionen im Feld WebReport-ID auf Durchsuchen und wählen Sie den von Ihnen in 4 erstellten WebReport aus. Wählen Sie im Rahmen dieser Übung „WebRep CPDS02“ aus.

    4. Erstellen Sie die Perspektive.

  7. Suchen Sie in Smart View den Testordner, in dem Sie die Perspektive gespeichert haben. Suchen Sie in diesem Beispiel den Ordner „DatSrc TableReport Perspective“.

  8. Optional Gehen Sie wie folgt vor, um den Bericht so zu ändern, dass andere Daten zurückgegeben werden:

     

    Wichtig

    Wichtig:
    Um den nächsten Schritt nachvollziehen zu können, benötigen Sie umfassende Kenntnisse von SQL und LiveReports.

     

    Diese Datenquelle ist nur ein Beispiel für den Start. Sie ist so eingerichtet, dass sie mit der Option INSERTJSON @TABLEREPORT funktioniert, wenn COLLECTIONPROCESSING auf „datasource“ eingestellt ist. Weitere Informationen finden Sie unter @TABLEREPORT.

    1. Benennen Sie den LiveReport, der automatisch in 1 erstellt wurde, in „In der vergangenen Woche geänderte Dokumente“ um. Bearbeiten Sie den LiveReport „In der vergangenen Woche geänderte Dokumente“. Geben Sie im Feld Titel die Bezeichnung „In der vergangenen Woche geänderte Dokumente“ ein.

    2. Bearbeiten Sie im Abschnitt SQL die SQL-Anweisung „ResultSetSubQuery“.

      Löschen Sie den folgenden Bereich des Codes:

      		SELECT DAuditNew.AuditID AS AuditID, DAuditNew.AuditDate AS AuditDate, DTree.Name AS Name, DAuditNew.SubType AS SubType, DAuditNew.PerformerID AS PerformerID
      FROM DAuditNew
      INNER JOIN DTree ON DAuditNew.DataID = DTree.DataID
      WHERE DAuditNew.AuditDate > %7
      AND %8
      ~3

      Ersetzen Sie ihn durch folgenden Codeabschnitt:

      		SELECT DTree.Name, DTree.ModifyDate, DTree.ModifiedBy
      FROM DTree
      WHERE DTree.ModifyDate > %7
      AND DTree.SubType = 144
      AND %8
      ~3
    3. Bearbeiten Sie im Abschnitt Vorlagen die Vorlage „~1“.

      Löschen Sie den folgenden Bereich des Codes:

      		SELECT Count(AuditID) as Count

      Ersetzen Sie ihn durch folgenden Codeabschnitt:

      		SELECT Count(Name) as Count
    4. Bearbeiten Sie im Abschnitt Vorlagen die Vorlage „~2“.

      Löschen Sie den folgenden Bereich des Codes:

      	SELECT ROW_NUMBER() OVER(ORDER BY %2 %3) AS RowNumber, AuditID,  AuditDate, Name, SubType, PerformerID

      Ersetzen Sie ihn durch folgenden Codeabschnitt:

      	SELECT ROW_NUMBER() OVER(ORDER BY %2 %3) AS RowNumber, Name, ModifyDate, ModifiedBy
    5. Klicken Sie auf Speichern und beenden.

  9. Bearbeiten Sie den WebReport, den Sie in 1 erstellt haben („WebRep CPDS01“):

    1. Klicken Sie im Menü Funktionen des „WebRep CPWR01“-WebReports auf Berichtsansicht bearbeiten.

    2. Scrollen Sie auf der Seite Bearbeiten WebReport bis zum Ende und bearbeiten Sie den letzten Abschnitt wie folgt:

      	[LL_WEBREPORT_INSERTJSON @TABLEREPORT
      COLLECTIONPROCESSING:"datasource"
      EXCLUDECOLUMNS:'["RowNumber"]'
      FORMATCOLUMNNAMES:ModifiedBy:"Modified By":ModifyDate:"Last Date Modified"
      FORMATCOLUMNS:SubType:ModifiedBy:"[LL_REPTAG=ModifiedBy USERINFO:FULLNAME /]":ModifyDate:"[LL_REPTAG=ModifyDate DATE:LONG /]" /]
    3. Klicken Sie auf Version hinzufügen.

  10. Bearbeiten Sie den WebReport, den Sie in 4 erstellt haben („WebRep CPDS02“). Klicken Sie im Menü Funktionen des „WebRep CPDS02“-WebReports auf Berichtsansicht bearbeiten.

  11. Bearbeiten Sie den Inhalt auf der Seite WebReport bearbeiten wie folgt:

    [/* Title: Blank Reportview */]

    <script>
    csui.require(['csui/lib/marionette', 'csui/utils/contexts/page/page.context', 'webreports/controls/table.report/table.report.view'], function (Marionette, PageContext, TableReportView) {

    var contentRegion = new Marionette.Region({el: '#content'}),
    pageContext = new PageContext(),
    tableReportView,
    options;

    options = {
    context: pageContext,
    data: {
    id: 463411,
    title: 'Documents Modified in the Past Week',
    header: false,
    titleBarIcon: 'title-assignments',
    columnsWithSearch: 'name',
    sortBy: 'Name',
    sortOrder: 'desc'
    }
    };

    tableReportView = new TableReportView(options);
    contentRegion.show(tableReportView);
    pageContext.fetch();

    });
    </script>

    <div id="content"></div>

    [LL_WEBREPORT_STARTROW /]
    [LL_WEBREPORT_ENDROW /]
  12. Ändern Sie die folgende Zeile, bevor Sie die Änderungen speichern:

    id: 463411,

    Damit wird die im ersten WebReport notierte ID in 1 kopiert.

  13. Suchen Sie in Smart View den Testordner, in dem Sie die Perspektive gespeichert haben. Suchen Sie in diesem Beispiel den Ordner „DatSrc TableReport Perspective“.