Virtuelle Tabelle: Kunden

Alle virtuellen Tabellen sind in Semiramis im Unterkatalog „VIRTUAL“ eingeordnet. Diese Dokumentation beschreibt im Folgenden die virtuelle Tabelle „Kunden“.

 

1                     Zielgruppe

Entwickler

2                     Begriffsbestimmung

Im Folgenden werden die Begriffe virtuelle Tabellen, virtuelle Funktion und virtuelle Beziehungsspalte kurz erläutert. Weitere Informationen finden Sie in der Dokumentation Benutzung von Semiramis-ODBC.

 

Virtuelle Tabelle

Eine virtuelle Tabelle existiert nicht in der Datenbank, sondern wird vom SAS emuliert. Prinzipiell kann auf eine virtuelle Tabelle wie auf eine Datenbanktabelle zugegriffen werden. Der Inhalt einer virtuellen Tabelle wird zur Laufzeit der Abfrage bezüglich der Eingabewerte berechnet. Als Anfrageergebnis können beliebig viele Zeilen zurückgeben werden. Eine virtuelle Tabelle darf nur als einzige Tabelle in einem einfachen SQL-Statement verwendet werden.

Virtuelle Tabellen sollten verwendet werden, wenn das Anfrageergebnis mehr als eine Zeile umfassen kann. Wenn das Anfrageergebnis nur maximal eine Zeile enthält, bietet sich eine virtuelle Funktion an, da diese in Joins verwendet werden kann.

Virtuelle Funktion

Eine virtuelle Funktion ist eine spezielle Tabelle, die zu einer Menge von Eingabewerten eine Ergebniszeile zurückgibt, welche zur Laufzeit der Abfrage berechnet wird. Sie existiert nicht auf der Datenbank, sondern wird vom SAS emuliert.

Eine virtuelle Funktion wird normalerweise über einen Join vom Typ LEFT OUTER an eine andere Datenbanktabelle verbunden. Über die Join-Bedingung oder über die WHERE-Klausel wird die Zuordnung der Werte für die Eingabeparameter der virtuellen Funktion angegeben. Wenn eine Abfrage einen Join enthält, dann wird das Abfrageergebnis zuerst ohne Berücksichtigung der virtuellen Funktion in der Datenbank ermittelt. Anschließend werden für jede Ergebniszeile die Werte der Spalten der virtuellen Funktion berechnet. Dabei berechnet der SAS für die durch die Join-Bedingung festgelegte Wertebelegung der Eingangsparameter, die Werte der Ausgabe-Spalten der virtuellen Funktion.

Virtuelle Beziehungsspalte

Eine virtuelle Beziehungsspalte erweitert die Tabelle eines Business Object um eine Spalte, deren Inhalt sich zur Laufzeit der Abfrage berechnet. Die virtuelle Beziehungsspalte basiert auf einer Beziehung des Quell-Business-Objects zu einem konkreten Ziel-Business-Object, die bestimmten Bedingungen genügen muss. Zu beachten ist, dass sie die Tabellen aller Quell-Business-Objects, die so eine Beziehung zu dem Ziel-Business-Object besitzen, um die zusätzliche Spalte erweitert.

3                     Virtuelle Tabelle „Kunden“

Durch die virtuelle Tabelle „Kunden“ kann auf Daten eines Kunden zugegriffen werden. Dabei wird die Organisationsabhängigkeit berücksichtigt. Als Eingabeparameter stehen die Spalten „in_number“, „in_organization“, „in_status“, „in_name“, „in_searchString“, „in_postalCode“, „in_city“, „in_country“, „in_region“, „in_maintainingOrganization“, „in_abcCode“, „in_classification1“ bis „in_classification9“, „in_supplierNumber”, „in_showOutputSettings“, „in_showTexts“, „in_allLanguages“, „in_language“, „in_showContacts“ und „in_orderBy“ zur Verfügung.

Die implementierende Java-Klasse ist

com.cisag.app.general.partner.log.CustomerVirtualTable

3.1               Tabellenname

In einem Bericht kann die Tabelle über den Namen app_sales_CustomerVirtualTable angesprochen werden.

3.2               Tabellenspalten

Der Datentyp einer Spalte ist String, wenn nichts anderes angegeben ist.

Spaltenname Beschreibung
in_number Inhalt des Auswahlfeldes „Partner“
in_organization Inhalt des Organisationsauswahlfeldes
in_status Inhalt des Auswahlfeldes „Status“
in_validityDate Derzeit ohne Verwendung
in_name Inhalt des Auswahlfeldes „Name“
in_searchString Inhalt des Auswahlfeldes „Suchbegriff“
in_postalCode Inhalt des Auswahlfeldes „PLZ“
in_city Inhalt des Auswahlfeldes „Ort“
in_country Inhalt des Auswahlfeldes „Land“
in_region Inhalt des Auswahlfeldes „Region“
in_maintainingOrganization Inhalt des Auswahlfeldes „Zuständige Organisation“
in_abcCode Inhalt des Auswahlfeldes „ABC-Klassifizierung“
in_classification1 – 9 Inhalt der Auswahlfelder „Klassifikation 1 – 9“
in_supplierNumber Inhalt des Auswahlfeldes „Externe Nummer“
in_showOutputSettings Inhalt der Checkbox „Ausgabe Belegdokument-Vorlagen“, Datentyp Boolean.
in_showTexts Inhalt der Checkbox „Ausgabe Texte“, Datentyp Boolean.
in_allLanguages Inhalt der Checkbox „Texte in allen Sprachen“, Datentyp Boolean.
in_language ISO-Code der Sprache in der der Bericht ausgegeben wird.
in_showContacts Inhalt der Checkbox „Ausgabe Ansprechpartner“, Datentyp Boolean.
in_orderBy Mit dieser Spalte kann die Sortierung der Ausgabe beeinflusst werden. Im Bericht wird unter der Rubrik Datensatzauswahl die Sortierung bestimmt. Standardmäßig steht in dem Feld:{app_sales_CustomerVirtualTable.in_orderBy} = “number asc”;
Damit werden die Kunden nach der Partnernummer aufsteigend ausgegeben.
Ausgabeparameter
type Für jeden Kunden können mehrere Datensätze ausgegeben werden. Der type bestimmt die Satzart:

type = 0: Kundendaten

type = 1: Belegdokument-Vorlagen

type = 2: Texte

type = 3: Ansprechpartner

 

Datentyp Integer.

guid_ Die GUID des Lieferanten. Datentyp Guid.
organizationalUnit_ Die GUID der Organisation. Datentyp Guid.
maintainingSales_ Die GUID der Daten bearbeitenden Organisation. Datentyp Guid.
validFrom Das „Gültig ab“-Datum. Datentyp Timestamp.
deliveryDocRecipient Der Lieferbelegempfänger.
deliveryRecipient Der bzw. die Lieferempfänger.
frightCarrier Der bzw. die Spediteur(e).
invoicingDocRecipient Der Rechnungsbelegempfänger.
invoiceRecipient Der bzw. die Rechnungsempfänger.
paymentPartner Der bzw. die Zahlungspartner.
salesRepresentative Der bzw. die Vertreter.
textSequence Die Positionsnummer des Textes. Datentyp Integer.
textType Der Typ des Textes.
textDocuments Der bzw. die Belegtypen des Textes.
textCode Die Nummer des Textbausteins.
textText Der Inhalt des Textes.
textLanguage Die GUID der Sprache des Textes. Datentyp Guid.
salesOutputSettings_ Die GUID der Belegdokument-Vorlage. Datentyp Guid.
partnerRelationGuid_ Die GUID der Partnerbeziehung des Ansprechpartners. Datentyp Guid.
isStatisticAvailable Ist wahr, wenn „Statistik“ lizenziert ist. Datentyp Boolean.
isRoutesAvailable Ist wahr, wenn „Versand“ lizenziert ist. Datentyp Boolean.

3.3               Datenbanktyp

Die virtuelle Tabelle „Kunden“ steht auf Datenbanken des Typs OLTP-Datenbank zur Verfügung.

3.4               Berechtigungen

Für die Nutzung des ODBC-Treibers wird folgendes Business Entity für die Berechtigungsermittlung herangezogen:

Kunden

com.cisag.app.sales.obj.Customer

Czy ten artykuł był pomocny?