Freigeben über


Unterstützte zusammengesetzte Datentypen für elektronische Berichtsformeln

Dieser Artikel enthält Informationen zu den zusammengesetzte Datentypen, die in Ausdrücken für die elektronische Berichterstellung (EB) unterstützt werden. Die zusammengesetzten Datentypen sind Klasse, Container, Datensatz, Datensatzliste, und Objekt.

Klasse

Der Datentyp Klasse bezieht sich auf eine öffentliche Anwendungsklasse. In ER wird es als Datensatz dargestellt, der für jede öffentliche Methode der referenzierten Klasse ein eigenes Feld enthält. Wenn der Aufruf der Methode parametrisiert ist, müssen Sie auch die erforderlichen Argumente der entsprechenden Typen in einem ER-Ausdruck angeben, der für den Aufruf der Methode konfiguriert ist.

In den EB-Zuordnungs- und Formatkomponenten können Sie die Datenquelle Klasse hinzufügen, die als Datenquelle dargestellt wird und einen Wert des Typs Klasse zurückgibt. Diese Datenquelle macht öffentliche Methoden der Klasse verfügbar, die zur Laufzeit aufgerufen werden können.

Notiz

Aus ER-Ausdrücken können nur Methoden aufgerufen werden, die einen Wert zurückgeben.

Nur Methoden mit einem Bereich von null bis acht Argumenten können von EB-Ausdrücken aufgerufen werden.

Der Standardwert einer Klasse ist Null.

Die folgende Abbildung zeigt, wie die Datenquelle Systeminformationen (xInfo) des Typs Klasse hinzugefügt wird, um die Instanz der Anwendungsklasse xInfo und rufen Sie ihre Methode Produktname() auf, um den Namen der aktuellen Anwendung zu erhalten. Der Name der aktuellen Anwendung wird zur Laufzeit durch Ausführung der xInfo.productName-Bindung abgerufen, die für das Feld Softwarename (Softwarename) des EB-Datenmodells konfiguriert wurde. Diese Bindung ruft die productName()-Methode der Anwendungsklasse xInfo, die in der aktuellen Modellzuordnung als Datenquelle Systeminformationen (xInfo) dargestellt wird.

Konfigurieren einer Klassendatenquelle im EB-Modellzuordnungsdesigner.

Die folgende Abbildung zeigt, wie das EB-Format konfiguriert ist, um den bereitgestellten Anwendungsnamen in generierte Dokumente einzufügen. Das Feld Softwarename (Softwarename) des verwendeten Datenmodells war an die Komponente Zeichenfolge geknüpft, die unter dem XML-Element SoftwareGebraucht des EB-Formats verschachtelt ist. Der Name der aktuellen Anwendung wird also zur Laufzeit an das XML-Element softwareUsed eines generierten Dokuments im XML-Format.

Struktur eines elektronischen Ausgangsdokuments im EB-Formatdesigner konfigurieren.

Container

Der Datentyp Container enthält binären Inhalt. Ein Container-Wert kann verwendet werden, um bestimmte Informationen aus dem Speicher an ein generiertes Dokument zu übergeben. Im EB-Framework wird dieser Datentyp häufig verwendet, um Medieninhalte wie ein Firmenlogo in generierte Dokumente einzufügen.

Notiz

Obwohl jedes Medienelement als Container-Wert dargestellt werden kann, steht nicht jeder Container-Wert für ein Medienelement. Wenn Sie daher ein EB-Format so konfigurieren, dass es einen Container verwendet, um ein Bild in generierte Dokumente einzufügen, aber der referenzierte Container keinen Medieninhalt zurückgibt, kann eine Ausnahme ausgelöst werden, die dem folgenden Beispiel ähnelt: „Fehler beim Ausführen von Code: Binär (Objekt), Methode constructFromContainer mit ungültigen Parametern aufgerufen.“

Der Standardwert einer Container ist Null.

Die folgende Abbildung zeigt, wie das Feld Bitmap(Bild) vom Typ Container an das Datenmodellfeld Logo vom Typ Container in der Modellzuordnung Verkaufsrechnung gebunden ist. Diese Bindung macht das Firmenlogo für jedes EB-Format verfügbar, das für die Verkaufsrechnung-Root-Definition gedacht ist und verwendet diese Modellzuordnung zur Laufzeit.

Binden eines Felds vom Typ Container an den EB-Modellzuordnungsdesigner.

Aufzeichnen

Ein Datensatz ist eine Sammlung benannter Felder, von denen jedes mit einem Wert von entweder einem primitiven Datentyp oder einem zusammengesetzten Datentyp zugeordnet ist. Normalerweise wird ein Datensatz verwendet, um einen einzelnen Datensatz einer Datensatzliste darzustellen. In diesem Fall repräsentiert jedes Element einzelne Felder, Methoden und Beziehungen.

Der Standardwert eines Datensatzes ist leer.

Notiz

Wenn Sie den Wert eines Feldes eines leeren Datensatzes erhalten, wird der Standardwert des entsprechenden Datentyps zurückgegeben.

Ein Datensatz kann mit folgenden Funktionen abgerufen werden:

Weitere Informationen zur Transformation von Datensatzwerten, siehe Liste der EB-Funktionen in der Listenkategorie.

Datensatzliste

Eine Datensatzlistr ist eine Liste von Artikeln vom Typ Datensatz. Normalerweise, wird eine Datensatzliste verwendet, um die Liste der Datensätze darzustellen, die aus einer Datenbanktabelle abgerufen wurden.

Standardmäßig werden Datensätze einer Datensatzliste sequenziell aufgerufen. Um auf einen bestimmten Datensatz zuzugreifen, können Sie die INDEX-Funktion verwenden und den Integer-Index spezifizieren.

Der Standardwert einer Datensatzliste ist leer. Sie können die ISEMPTY-Funktion verwenden, um auszuwerten, ob eine Datensatzliste leer ist.

Notiz

Wenn eine Datensatzliste leer ist, bewirkt jeder Versuch, einen Feldwert für einen Datensatz darin abzurufen, dass zur Laufzeit eine Ausnahme ausgelöst wird. Informationen dazu, wie Sie Laufzeitausnahmen dieses Typs verhindern können, finden Sie unter Berücksichtigung von Leerlistenfällen.

Eine Datensatzliste kann mit folgenden Funktionen initiiert werden:

Weitere Informationen zur Transformation von Datensatzlistenwerten, siehe Liste der EB-Funktionen in der Listenkategorie. Um zu lernen, wie man Artikel aus Datensatzlisten einführt, füllen Sie sie mit Anwendungsdaten und verwenden Sie die Daten dann, um Geschäftsdokumente zu generieren, siehe Entwerfen Sie eine neue EB-Lösung zum Drucken eines benutzerdefinierten Berichts.

Objekt

Ein Objekt verweist auf eine zustandsbehaftete Instanz von einer Klasse. Normalerweise wird ein Objekt im Quellcode initiiert. Es wird dann an eine EB-Modellzuordnung übergeben und liefert Details zum Ausführungskontext.

Der Standardwert eines Objekts ist Null.

Die folgende Abbildung zeigt, wie die Datenquelle ReportDataContract vom Typ Objekt hinzugefügt wird, um Informationen über eine generierte Rechnung aus dem Quellcode an die Modellzuordnung Projektrechnung. Beispielsweise wird der Rechnungsinstanztext als Teil des Ausführungskontexts übergeben. Dieser Text wird zur Laufzeit durch die Ausführung der ReportDataContract.parmInvoiceInstanceText-Bindung abgerufen, die für das Feld Hinweis des EB-Datenmodells konfiguriert wurde. Diese Bindung ruft die parmInvoiceInstanceText()-Methode der Anwendungsklasse PSAProjInvoiceContract, die in der aktuellen Modellzuordnung als Datenquelle ReportDataContract dargestellt wird.

Konfigurieren einer Objektdatenquelle im EB-Modellzuordnungsdesigner.

Informationen zum Übergeben von Details des Ausführungskontexts vom Quellcode an die ausgeführte EB-Lösung finden Sie unter Anwendungsartefakte entwickeln, um den entworfenen Bericht aufzurufen.

Zusätzliche Ressourcen