Schriftgut

Die Klasse TeamWiSE.Runtime.CTVSupport.Schriftgut bildet alle CTV Schriftgut-Instanzen ab.

Für jeden Typ von Schriftgut wird eine eigene, von Schriftgut bzw. Document abgeleitete Klasse erstellt.

Eigenschaften

Name

string Name { get; }

Liefert den Namen der Schriftgut-Instanz.

Type

string Type { get; }

Liefert den EDB/MDB Typnamen der Schriftgut-Instanz.

Appl

string Appl { get; }

Liefert den Namen der Anwendung zu der die Schriftgut-Instanz gehört.

DisplayName

string DisplayName { get; }

Liefert eine garantiert nicht-leere, ggf. technische Überschrift der Schriftgut-Instanz.

ExposedVariables

1) Liefert eine Liste aller für die Schriftgut-Instanz bekannten Schriftgut-Variablen (SGPV) als Instanz einer Klasse vom Typ ExposedVariablesFor<T>.

public ExposedVariablesFor<T> ExposedVariables { get; }

Für jeden Schriftgut-Typ gibt es eine eigene, von ExposedVariablesSupport abgeleitete Klasse ExposedVariablesFor<T>, die alle für diesen Schriftguttyp definierten Schriftgut-Variablen enthält.

Für Schriftgut, welches explizit in der Basis-Assembly enthalten ist, wird, wenn die Definition der Schriftgutvariablen vom dem Standard für den Schriftgut-Typ abweicht, eine eigene ExposedVariables<T>-Klasse erzeugt, basierend auf der Klasse für den Schriftgut-Typ. Die einzige hier für relevante Abweichung ist zur Zeit die Angabe „Änderbar zur Laufzeit“.

Abgeleitete Klassen

Für jeden Typ von Schriftgut wird eine eigene, von Schriftgut bzw. Document abgeleitete Klasse erstellt, ebenso für jedes Schriftgut, welches explizit in der Basis-Assembly enthalten ist. Hierin werden insbesondere Abweichungen in der Nutzung der Schriftgut-Variablen berücksichtigt.

Jeder Schriftguttyp, von dem Instanzen als Top-Level-Schriftgut in der CTV-Engine angelegt werden können (Schriftsatz und Schriftstück-Typen), basiert auf der Klasse Document.

Zur Zeit unterstützt ist Schriftgut vom Typ

- Schriftsätze: Klasse Schriftsatz
- Schriftstücke: Klasse Schriftstueck
- Massenlisten: Klasse Massenliste
- Bündel: Klasse Buendel
- Statische Dokumente: Klasse StaticDocument.

Für jedes in der Basis-Assembly((ab V9.11) bekannte Schriftgut gibt es dort eine Klasse <sgutname>, abgeleitet von der Klasse gemäß dem Schriftgut-Typ.

ctvnative_classes.jpg

Diese Typen können z.B. ein einer Switch-Anweisung abgefragt werden:

string ignoreKz = "N";
 
foreach (var sgut in this.Ctv.Documents) {
	switch (sgut) {
 
	case Schriftstueck sstk:
           if (int.Parse(this.Services.Application.Version) >= 69) {
              ignoreKz = sstk.ExposedVariables.DdaIgnoreKz.Value;
           }
           break;
 
        case SzAnfrage anfrage:
		// Spezifische Behandlung von bestimmtem Schriftsatz
		// ...
		break;
 
        case Schriftsatz _:
                return DocumentPlausi(sgut);
 
	default:
		break;
	}
}
1)
AB V9.11
dotnet:native:ctv:schriftgut · Zuletzt geändert: 09.08.2024 13:25

Copyright © 1992-2025 TeamWiSE Gesellschaft für Softwaretechnik mbH         Adressen |  Kontakt |  AGB |  Datenschutzerklärung |  Impressum