Entwicklung > Safe X3 WAS > Link SAFE X3 > Organisationseinheit 

SEEWARNING Es empfiehlt sich, vor Anlage einer Site folgende Dokumentation zu konsultieren:Was vor Ausführung der Funktion zu beachten ist.


Bei der XTEND-Entität handelt es sich um die XTEND-proprietäre Datenstruktur vom Typ Feldliste, die ein funktionales Objekt der Website repräsentiert (z. B. einen Artikel, einen Benutzer, eine Adresse, eine Kopfzeile, eine Auftragsposition etc.)

Ablauf

Anlage

Die vom XTEND-Server manipulierten Daten stammen ausschließlich aus dem Aufruf von Schnittstellen (X3-Webservices). Daten und Entitäten können auf zwei Arten angelegt werden:

Eine Entität entsteht immer aus einem 'Mapping' mit der vom X3-Webserver zurückgegebenen Datenstruktur, d. h.:

  • mit den Feldern einer 'Veröffentlichungsgruppe' bei 4GL-Unterprogrammmen
  • mit den Feldern eines 'Maskenblocks' bei X3-Objekten
Entitäten, die von einer Aktion angelegt werden

Solche Entitäten werden nach einem Benutzeraufruf von einer Schnittstelle vom Typ Aktion über einen Button oder eine Textmarke angelegt.

Zur Optimierung der Antwortzeiten und des Ladens des Webservice-Servers:

  • sollten Benutzeraktion und das sich daran anschließende Anlegen von Einheiten in einem Webservice-Aufruf vereint werden, anstatt den Webservice zwei Mal aufzurufen.

Sämtliche Entitäten, die sich aus einem 'Mapping' mit einer Schnittstelle vom Typ 'Aktion' ergeben, werden im Speicher gehalten und stehen während der gesamten Dauer der Benutzersitzung zur Verfügung.

Bei Aktionen auf einem Objekt (z. B. Freigabe eines X3-Auftrags) sind die angelegten Entitäten in der Regel eine Untergruppe des X3-Auftrags.

Diese Entitäten (Kopfzeile und Auftragspositionen) werden im Speicher gehalten:

  • um angezeigt zu werden
  • um als Parameter aus einer anderen Aktion übergeben zu werden (Auftragsbestätigung)
  • oder um als Auswahlkriterien verwendet zu werden (Artikelauskunft)

Im Falle einer Benutzeranmeldeaktion wertet das 4GL-Unterprogramm die Anmeldungsdaten aus und gibt in der Regel eine Datenstruktur zurück, die die Daten des Benutzerkontos enthält.

Diese Daten können angezeigt, als Aktionsparameter (Vertretercode, Site-Code zum Auftrag) oder als bedingte Block-Tokens zur Verwaltung der Seitenanzeige verwendet werden.

Entitäten, die durch einen Datenzugriff angelegt werden

Diese Entitäten werden nach dem Aufruf einer Schnittstelle vom Typ Zugriff durch einen in eine HTML-Seite eingefügten Block-Token angelegt. Sie können als einfache, von einer SQL-Abfrage zurückgegebene Datensätze betrachtet werden.

Sämtliche Entitäten, die sich aus einem 'Mapping' mit einer Schnittstelle vom Typ 'Zugriff' ergeben, werden im Speicher gehalten und stehen lediglich während des Aufbaus der HTML-Seite zur Verfügung.

Die Daten dieser Entitäten können als Aktionsparameter oder als Auswahlkriterien in den Blöcken verwendet werden.

In diesem Fall wird der Wert in dem Datenkontext gehalten, der der HTML-Seite zugeordnet ist (und nicht im Datenkontext der Benutzersitzung).

Dieser wird in der HTML-Seite selbst gespeichert (spezifisches Span-Tag) und von den JavaScript-Funktionen der XTEND-Bibliothek manipuliert.

Durch dieses Funktionsprinzip wird sichergestellt, dass die Tasten Zurück (Back) und Aktualisieren (F5) auf den Seiten korrekt funktionieren.

Beispiel:

Im Falle eines Artikelkatalogs wird der aus einer Abfrage auf eine X3-Tabelle stammende Artikelcode gemäß diesem Prinzip gehalten. Daher sind folgende Übergabearten möglich:

  • als Parameter des Block, in dem die Artikelauskunft angezeigt wird
  • als Parameter der Aktion, die den Artikelcode dem Warenkorb hinzufügt
Entität ASESSION

Diese Entität wird beim Start einer Sitzung angelegt. Sie bietet Zugriff auf alle Daten der Benutzersitzung.

Parameter

Die Parametrierung einer Entität umfasst:

  • Zuordnung einer Schnittstelle
  • Erfassung der Feldliste

Die Felder wurden in der Regel zuvor mit der Hilfefunktion zum Anlegen der Felder im 'Werkzeugmenü" der Schnittstelle angelegt.

Zur Zuordnung der Felder zur Entität wird im Menü Tools \ Eingabehilfe eine Hilfefunktion angeboten.

Entität vom Typ Sitzung

Dieser Typ ist für die internen Entitäten des XTEND-Servers reserviert und entspricht diesen.

ASESSION: Daten der Benutzersitzung

AHTMLFORM: Inhalt des HTML-Formulars der aktuellen HTTP-Abfrage

AHTTPCOOKIE: Cookie-Inhalt der HTTP-Abfrage

Entität vom Typ Aktion

Entitäten vom Typ Aktion werden durch eine 'Benutzeraktion' angelegt (Mapping des Ergebnisses des Webservice-Aufrufs).

Entitäten vom Typ Aktion sind keiner Schnittstelle zugeordnet, das solche Entitäten unter Umständen von mehreren Schnittstellenangelegt werden können.

Beispiel:

Eine SOH-Entität (Auftrag) kann von den Aktionen Anlegen, Ändern und Löschen angelegt werden.

In ihrem Mapping referenzieren diese drei Aktionen also möglicherweise dieselbe Entität.

Anlageprozess der Aktionsentitäten

1. Identifizierung der Entitäten während der Projektspezifikation

2. Anlage der Webservices und Schnittstellen ohne unbedingt den zugehörigen Code zu entwickeln

3. Generierung der Felder über das 'Werkzeugmenü' der Schnittstellendaten

4. Anlage der Entitäten und Zuordnung der Felder

SEEINFO Es gibt kein automatisches Anlagewerkzeug für Entitäten vom Typ Aktion auf Basis einer Schnittstelle.

Id

Bei Anlage der Aktionsentität legt die XTEND-Engine pro Entität mit eindeutiger Id ein Feld 'AID' an.

Dieses Feld kann im Server-Scripting von den Methoden removeData und getData der Schnittstelle IXtdJsActEntity verwendet werden.

Entität vom Typ 'Datenzugriff'

Solche Entitäten werden durch Aufruf einer Schnittstelle vm Typ 'Datenzugriff' angelegt, was einer SQL-Abfrage auf die X3-Datenbank entspricht.

Die Tabelle 'Felder'wird zum Deklarieren der Entitätsfelder und zur Durchführung des Mappings zwischen dem Code des XTEND-Feldes (Spalte Code) und dem Namen des Unterprogramm- oder Feldparameters des X3-Objekts (Spalte Schnittstellenparameter) verwendet.

Wenn kein Konflikt mit einem anderen Feld eines anderen Typs vorliegt, sollte in der Regel derselbe Name vergeben werden.

Die Veröffentlichungsgruppe der 'Datenzugriffschnittstelle', die die Abfragefelder enthält, wird auf 'RES' festgelegt.

Anlageprozess der Aktionsentitäten

1.Generierung der Schnittstelle auf Basis einer X3-Tabelle oder der linken Auswahlliste eines Objekts

 2. Generierung der Felder über das 'Werkzeugmenü' der Schnittstellendaten

3. Anlage der Entitäten und Zuordnung der Felder

SEEINFO Es gibt in der aktuellen Version kein automatisches Anlagewerkzeug für Entitäten vom Typ Datenzugriff auf Basis einer Schnittstelle.

Vorbedingungen

SEEREFERTTO Siehe Dokumentation Umsetzung

Maskenverwaltung

Kopfzeile

Felder

In diesem Register befinden sich die folgenden Felder :

Entitätscode

  • Standort (Feld FCYLIB)

Aktuelle Website.

  • Bezeichnung (Feld INTIT)

Ermöglicht die Definition einer Bezeichnung für jeden Datensatz.

Schließen

 

Register Stammdaten

Felder

In diesem Register befinden sich die folgenden Felder :

Eigenschaften

  • Typ (Feld TYP)

  • Entität vom Typ Sitzung: Dieser Typ ist für die internen Entitäten des XTEND-Servers reserviert und entspricht diesen.

  • Entität vom Typ 'Datenzugriff': Diese Entität wird durch Aufruf einer Schnittstelle vom Typ 'Datenzugriff' angelegt, was einer SQL-Abfrage auf die X3-Datenbank entspricht.

  • Entität vom Typ Aktion: Diese Entität wird durch eine Benutzer-'Aktion' erstellt.

Schnittstellencode

  • Typ Schnittstelle (Feld INTTYP)

 

  • Freigabename (Feld INTWSRC)

 

Tabelle Felder

Feldcode XTEND: Wenn kein Konflikt mit einem anderen Feld eines anderen Typs vorliegt, sollte in der Regel derselbe Name wie der des 'Parameters in der Schnittstelle' vergeben werden.

  • Parameter der Schnittstelle (Feld DSCCOD10)

Mapping zwischen dem XTEND Feldcode und dem Namen des Schnittstellenparameters.

Es handelt sich um den Parametercode des Unterprogramms (Webservice Unterprogramm) oder um den Feldcode des X3-Objekts (Webservice X3-Objekt).

Wenn kein Konflikt mit einem anderen Feld eines anderen Typs vorliegt, sollte in der Regel derselbe Name XTEND/X3 vergeben werden.

  • Gruppe (Feld DSCGRP10)

Code der 'Veröffentlichungsgruppe' der Schnittstelle 'Datenzugriff', die die Datensatzfelder der Abfrage enthält (auf 'RES' festgelegt).

Tabelle Feld (Auswahl)

Code des Schlüsselfelds.

Liste der Identifikatorfelder der Entität.

SEEWARNING Eine Entität wird von einem dynamischen Schlüssel und N festen Schlüsseln identifiziert:

  • Die erste Zeile enthält den dynamischen Schlüssel (Feldcode).
  • Die anderen Zeilen enthalten die festen Schlüssel, die sich aus dem Code und dem Wert zusammensetzen.
  • Typ (Feld VALTYP30)

 

  • Wert (Feld VALEUR30)

Wert des festen Schlüssels. Liste der Identifikatorfelder der Entität.

SEEWARNING Eine Entität wird von einem dynamischen Schlüssel und N festen Schlüsseln identifiziert.

  • Die erste Zeile enthält den dynamischen Schlüssel (Feldcode).
  • Die anderen Zeilen enthalten die festen Schlüssel, die sich aus dem Code und dem Wert zusammensetzen.

Schließen

 

Symbol Aktionen

Anlageassistent

SEEREFERTTO Siehe Hilfe zum Werkzeug 'Eingabehilfe'.

 

Schließen

 

Berichte

Standardmäßig sind der Funktion folgende Reports zugeordnet :

 PRTSCR : Druck Maske

Dies kann durch geeignete Parameter geändert werden.

Spezielle Buttons

Über diese Schaltfläche kann das XTEND-Dictionary im XML-Format aktualisiert werden.

Der X3WEB-Server berücksichtigt das Dictionary nur, wenn es dieses Format aufweist.

Es ist eine xml-Datei pro Dictionary vorhanden.

So entspricht beispielsweise die Datei ACT.xml sämtlichen Web-Aktionen der aktuellen Website.

Mit diesem Button kann eine Entität kopiert werden.

Menüleiste

Tools / Eingabehilfe

Hilfe beim Anlegen der Entitäten

SEEREFERTTO Siehe Dokumentation Ablauf der Funktion.

Mit dieser Funktion können Entitäten auf Basis der Parameter einer Schnittstelle angelegt werden.

1. Aufruf der Funktion Entität

2. Anlage einer neuen Entität

3. Auswahl eines Schnittstellentyps

4. Für den Typ 'Tabellenzugriff' Auswahl der Schnittstelle, die der Entität zugeordnet sein soll

5. Aktivierung des Menüs 'Tools / Eingabehilfe'

Nach Auswahl der Schnittstelle wird die Parameterliste anzeigt, gruppiert nach Veröffentlichungsgruppen:

 Spalte

Beschreibung

Schnittstellenparameter

Code des Schnittstellenparameters

Gruppe

Veröffentlichungsgruppe (Unterprogramm) oder Code des Blocks (Objekts)

Titel

bei X3-Objekten Titel des Feldes

Field-Token  

Code des Field-Tokens XTEND
Erfassbar beim Anlegen

Titel

Titel des XTEND-Feldes


In der Regel wird eine XTEND-Entität einer Veröffentlichungsgruppe (Spalte Gruppe) zugeordnet (also einem Maskenblock für ein X3-Objekt).

Anlageprozess:

  • Auswahl der Felder per Doppelklick auf die erste Spalte
  • dann Auswahl eines Field-Tokens aus der Spalte 'Field-Token'

SEEWARNING Es wird empfohlen, sämtliche XTEND-Felder zuvor mit der Werkzeugfunktion 'Felder anlegen' anzulegen.
Ist das Feld nicht vorhanden, kann zum Anlegen mit F12 auf die Funktion 'Field-Token' zugegriffen werden.

Tools / Freigabe mit Prüfung

Freigabe mit Kohärenzprüfung der XTEND-Dictionary-Daten 

Fehlermeldungen

Nur generische Fehlermeldungen.

Verwendete Tabellen

SEEREFERTTO Siehe Dokumentation Umsetzung