FirstSpirit Datenzugriff: Broker & Co.

In diesem Artikel geht es um eine einfache Variante, Zugriff auf Datensätze von FirstSpirit über eine externe Anwendung zu erhalten. Statt eines größeren Unterbaus, der das gesamte DB-Schema enthält und den gesamten Zugriff darauf regelt, geht es in diesem Beitrag um den Zugriff auf Datenquellen (Content2) mit FirstSpirit Brokern.

Lesezugriff herstellen:

Um Zugriff auf die Datensätze zu erhalten, wird als erstes natürlich eine Verbindung zum FirstSpirit-Server benötigt. Für diese FS-Connection braucht es vier Werte:
Hostname und Port des FS-Servers (<HOSTNAME> und <PORT>), sowie Login und Passwort des FS-Accounts (<LOGIN> und <PASSWORD>), über den der Zugriff erfolgen soll. Der im Folgenden Codesnippet zu sehende fünfte Parameter

Als nächstes wird eine projektgebundene Instanz vom Typ SpecialistsBroker erstellt, welche den Zugriff auf ein FS-Projekt (<FS_PROJECTNAME>) erhält:

Um abschließend den Zugriff auf die Datenquellen zu ermöglichen, kann mit dem SpecialistsBroker ein StoreAgent verwendet werden, der auf den ContentStore, also die Datenquellen, Zugriff hat.
Im Folgenden ist hierbei der Zugriff auf eine bestimmte Datenquelle (<CONTENT2_TABLE>) dargestellt. Der Paramter muss dabei der Referenzname der Tabelle sein.

Über das Content2 Objekt kann nun auf sämtliche Datensätze dieser Datenquelle zugegriffen werden. Nachfolgend ist ein kurzes Beispiel dargestellt, wie man nun ein Formularfeld (<FORMFIELD_TITLE>) dieser Datensätze auslesen kann. Dieser Name ist das name-Attribute einer CMS_INPUT_TEXT Komponente.

Um Schreibzugriff erweitern:

Um neue Datensätze anzulegen oder zu bearbeiten muss sichergestellt sein, dass der verwendete FS-Account Schreibrechte auf die entsprechenden Tabellen hat. Weitere Anpassungen im Vorfeld sind nicht nötig.

Zum Erstellen eines neuen Datensatzes werden nun noch ein Schema und ein Session Objekt benötigt. Diese lassen sich mittels Content2 ebenfalls einfach erzeugen. Anschließend kann bereits eine neue Entity erstellt werden.

Die Formularfelder dieses Datensatzes lassen sich nun mit Werten befüllen. Wie in FS üblich wird dazu der Datensatz im Vorfeld gesperrt, die Daten werden gesetzt und anschließend wird der Datensatz wieder frei gegeben. Nachfolgend ist eine kleine Methode aufgeführt, welche ein Formularfeld (<FORMFIELD_TITLE>) eines neuen Datensatzes beschreibt und abspeichert.

Die Daten sind im Anschluss direkt im SiteArchitect von FS sichtbar und können dort bei Bedarf weiter bearbeitet werden.

Fazit:

Mit nur wenigen Programmzeilen lässt sich sowohl der Lese- als auch der Schreibzugriff auf Datensätze realisieren. Damit lässt sich gerade für kleinere, spezialisierte Anwendungen, welche nur bestimmte Datenbank-Tabellen benutzen müssen, ein einfacher Zugang herstellen. Auch die Einbindung per FS-Skript oder FS-Modul ist so mit wenig Aufwand möglich.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.