MS-Project VBA-Programmierung

Nur die zusammenhängenden Vorgänge anzeigen

Der Vorgangspfad kennzeichnet zwar die zusammenhängenden Vorgänge, zeigt sie aber nicht allein an. Wnen zwischen den Vorgängen viele andre Zeilen liegen, bleibt es unübersichtlich. In meinem Makro habe ich das Problem gelöst.
Nur die zusammenhängenden Vorgänge anzeigen
Dieses Tutorial steht auch als PDF-Download (https://www.time4mambo.de/download/office) auf time4mambo zur Verfügung (allerdings ohne den letzten Absatz mit dem Makros). https://support.microsoft.com/de-de/office/feldfunktionen-ref-feld-b2531c23-05d6-4e3b-b54f-aee24447ceb2
Eigene Felder mit veränderbaren Text (Überarbeitet: Dezember 2021)
Das Tutorial steht auch als PDF-Datei zum Download auf time4mambo (https://www.time4mambo.de/download/office) bereit Optional … empfehle ich zunächst vorhandene Überschriften zu kopieren,
Gegliederte Überschriften in Word

Diagramm mit IST-/SOLL - Neg./Pos. Abweichung

Positive/Negative Abweichung in einem Excel-Diagramm
Diagramm mit IST-/SOLL - Neg./Pos. Abweichung

Excelliste mit bestimmter Hintergrundfarbe addieren

Mit VBA eine kleine Funktion programmieren, die Zahlen mit einer bestimmten Farbe summiert.
Excelliste mit bestimmter Hintergrundfarbe addieren
Eigentlich klingt das ganz einfach. Gibt schließlich sogar eine Befehlsschaltfläche um eine Excel-Tabelle in PowerPoint einzufügen. Aber da wir es mit Microsoft und einem starken Programm zu tun haben, gibt
Verschiedene Möglichkeiten Excel in PowerPoint einzufügen

Jetzt als kostenloses Onlinebook:

Seblod - Das Handbuch

Komplettabdruck der zweiten Auflage. (Fast) alles zum CCK Seblod! Der wohl mächtigsten Erweiterung von Joomla!
Seblod - Das Handbuch
Dieses Tutorial entstand ursprünglich für Dozenten und wurde während der Coronakrise geschrieben. Das ein oder andere Seminar fand auch statt. Um den Kolleginnen und Kollegen, die sich nicht so auskannten
Einführung in Microsoft Teams
In Joomla gibt es ein Modul, welches RSS-Feeds erzeugt, die andere abonnieren können. Das Problem ist nur, dass dieses Modul jeweils nur einen Feed für die gerade aktuelle Seite/Kategorie erzeugt.
RSS-Feeds kompakt ohne Erweiterung

Rechnung in Word - ohne Excel

Mit etwas einfacher Makroprogrammierung lässt sich in Word auch ohne Excel rechnen und somit eine Rechnung erstellen. Das Tutorial zeigt in mehreren Teilen, wie sich eine Rechnung mit allem Drum und Dran erstellen lässt.
Rechnung in Word - ohne Excel
Filter in zwei oder mehr Spalten zu setzen, die nicht voneinander abhängig sind, ist mit den Filtermöglichkeiten, die Excel bietet, nicht möglich. Angenommen Sie haben eine Tabelle mit ein paar Städten, zwei verschiedene Kategorien und zugehörigen Umsätzen. Aktivieren Sie über das Menüband Daten in der Gruppe Sortieren und Filtern den
Zwei Filter setzen mit ODER(...)
Die App kann bei https://www.time4mambo.de/download/seblod (https://www.time4mambo.de/download/seblod) downgeloadet werden ----------------- Mir gefiehlen die guten alten Weblinks von Joomla nicht, als ich diese Site relaunchte. Beispielsweise war es nicht möglich die Sprache der
SEBLOD: Weblinks mit automatisierten Screenshots

Excel-Lösungen

  • Tutorials zu Fragen rund um Excel
  • Teilweise mit Makroprogrammierungen.
  • Fertige Excel-Sheets mit Teillösungen zum Download
Excel-Lösungen
Dieses Tutorial steht auf time4mambo (https://www.time4mambo.de/download/office) als PDF zur Verfügung Einfache Rechnung Einzelpostenauflistung, Zwischensumme, Gesamtsumme und Mehrwertsteuer – für den Geschäftsmann
Rechnungserstellung mit Word und Excel
Seit Joomla 3 ist das CSS-Framework Bootstrap fester Bestandteil in Joomla und kann für eigene Templates somit einfach benutzt werden. Auf time4jaoomla erfahren Sie, wie es geht.
Bootstrap mit Joomla
Original-Auszug aus dem Buch Die Überlegung: Wir haben eine Kulturredaktion, der eine Kategorie zugeordnet ist. Und wir haben eine Politikredaktion, die in zwei Kategorien schreibt. Beide Redaktionen sollen nur ihre eigenen Beiträge bearbeiten, veröffentlichen und löschen können. Außerdem bekommen beide Redaktionen noch einen Chefreakteur zur Seite, der in allen
Fallbeispiel: Redaktionssystem
Schaut man sich das erste Mal einen CSS-Befehl an, führt das meistens zu einem panischen Weiterklicken, weil das alles sehr kompliziert ausschaut. Aber eigentlich ist es das nicht. Bei genauer Betrachtung ist CSS eigentlich sogar selbsterklärend und wenn man eine Weile damit umgegangen ist, geht es schon beinahe wie von
Wie funktioniert CSS
Das Tutorial steht auf time4mambo zum Download bereit: http://www.time4mambo.de/download/joomla/CommunityBuilder_v04-Joomla 3x.pdf (http://www.time4mambo.de/download/joomla/CommunityBuilder_v04-Joomla%203x.pdf) Dieses Tutorial ist ursprünglich für Joomla! 1.5 geschrieben worden. So ich es derzeit überblicke hat das Tutorial aber auch in
Community Builder
Dieses Tutorial und die zugehörige App stehen als Download auf http://www.time4mambo.de/webdesign/referenz.html (http://www.time4mambo.de/webdesign/referenz.html)
SEBLOD: Einführung am Beispiel eines selbsterstellten Portfolios
Grafische Rollovers mit dem JCE zu machen ist ja recht einfach, weil der JCE hier schon fertige Einstellmöglichkeiten sehr einfach mitbringt.Aber wie wird ein Rollover-Effekt bei einer Textmarke erzielt? Eigentlich genauso wie ein grafischer Rollover-Effekt - nur mit einem klitzekleinen Trick: Zunächst schreiben wir den Text: Lass uns was schreiben und mittendrin einen
Text-Rollover mit dem JCE

IST/SOLL mit Fehlerindikatoren

Ein Diagramm mit Fehlerindikatoren erstellen
IST/SOLL mit Fehlerindikatoren

Para- und Nonverbale Kommunikation

Damit ist zum einen die Körpersprache gemeint und zum anderen die Art, wie wir kommunizieren. Zu letzterem gehören der Tonfall, Sprachmelodie, Artikulation, Sprechtempo und auch die Pausen zwischen den Wörtern.

Das reine Wort, der Inhalt, machen 7% unserer Kommunikation aus. Die para- und nonverbale Kommunikation zusammen 93%. Wie Sie 93% mehr Erfolg haben können, erfahren Sie auf dieser Website:

Körpersprache


Deutschsprachige Seblod-Community

Zu dritt haben wir die deutschsprachige SEBLOD™-Community gegründet. Neben Ressourcen und Webseiten , die mit SEBLOD™ gemacht sind, bieten wir ein Supportforum zu Fragen rund um SEBLOD™ an.

https://seblod.time4mambo.de


Selbst geschrieben: SEBLOD - Das Handbuch

Das Content-Management-System Joomla! stellt dem Anwender bereits eine breite Palette von Funktionen zur Ausgestaltung von Webauftritten bereit. Bei erfolgreichen Webseiten steigt mit der Zeit aber der Anspruch in Bezug auf Funktionalität. Es ist nur eine Frage der Zeit, bis Sie an die Grenzen von Joomla! stoßen. Entweder greifen Sie dann in den Programmcode ein oder setzen auf ein Content Construction Kit (CCK). Das mächtigste dieser Art ist SEBLOD®. Wie Sie damit die Grenzen von Joomla! sprengen, zeigt Ihnen das vorliegende Handbuch.

SEBLOD - Das Handbuch


Selbst geschrieben: Joomla für Redakteure

Amazon:
Dieses essential bietet speziell Redakteuren einen Einstieg in das Content Management System Joomla!. Losgelöst vom „Ballast“ der zahlreichen Einstellungen und Möglichkeiten, die in anderen Büchern thematisiert werden, wendet sich dieses Buch ausschließlich an die eigentlichen Endnutzer des Systems und konzentriert sich dabei auf das Schreiben und Veröffentlichen von Beiträgen. Der erfahrene Autor und Joomla!-Kenner Axel Tüting erklärt jeden Schritt praxisnah und verständlich.

Joomla für Redakteure


Dankesagen...

Wenn die Tutorials dir weitergeholfen haben, dann kannst du mit einer kleinen Spende Danke sagen.

Schulungen

Langjährige Erfahrung als Dozent zu verschiedenen Themen.
Ich komme zu Ihnen in die Firma oder organisiere Räume vor Ort. Dazu steht mir ein Netzwerk aus vielen Jahren Tätigkeit als freier Dozent zur Verfügung.
Weitere Informationen, sowie Referenzen finden Sie auf der Firmenseite time4mambo

  •     VBA für Excel, Word und Outlook
  •     MS-Excel
        2003 / 2007 / 2010 / 2016 / 2019
  •     MS-Project
        2003 / 2007 / 2010 / 2016 / 2019
  •     MS-Word
        2003 / 2007 / 2010 / 2016 / 2019
  •     MS-PowerPoint
        2010 / 2016 / 2019
  •     Office 365
  •     Joomla! 3x
  •     Körpersprache

    Weitere Themen auf Anfrage

Interesse? Lust? Zeit? Dann freue ich mich über eine eMail oder Anruf.
Kontaktdaten im Impressum


Eine Übersicht der verwendeten Erweiterungen findet sich im Impressum

Christian Schuelling, viele kennen ihn als Whykiki von YouTube, war nicht der Erste, der Videos zu SEBLOD anbot, aber der Erste, der im deutschsprachigen Raum tiefer und konsequenter in die Materie einstieg und über die Einsteigervideos hinaus tiefer gehende SEBLOD-Einstellungen per Videotutorial erläuterte.

Ich freue mich sehr, dass er sich bereit erklärt hat, hier ein Gastkapitel zu übernehmen. Kiki hat sich dafür sehr umfassend mit den E-Mails beschäftigt und ein neues Kontaktformular erstellt, das deutlich mehr kann als das Joomla!-eigene. Sie können mit wenigen Anpassungen letztlich jedes x-beliebige Formular damit erstellen, das versendet werden soll.

Whykiki-Videostream

Dieses und weitere Videos von ihm, nicht nur zu SEBLOD, finden Sie auf seinem Videostream: www.youtube.com/user/ScreendesignWhykiki


Aber lassen wir ihn nun selber zu Wort kommen.


16.1        Warum ein Kontaktformular?

Wie Sie in den vorangegangenen Kapiteln bereits bemerkt haben, lassen sich mit SEBLOD beachtliche Erweiterungen für Joomla! schaffen, die auf jeden speziellen Fall zugeschnitten sind. Deshalb wird SEBLOD von vielen Entwicklern als eine Art »Eier legende Wollmilchsau« beschrieben.

Mit SEBLOD werden nämlich zahlreiche Erweiterungen, die man sich sonst installiert hätte, absolut überflüssig. Ob Galerie, Marktplatz, Newssystem oder ganz abwegige Inhaltstypen, die es so derzeit nicht als Joomla!-Komponente oder Plug-in gibt: mit SEBLOD kein Problem.

Aber auch einfachere Sachen, wie zum Beispiel ein simples Kontaktformular, sind mit SEBLOD problemlos möglich. Der Vorteil liegt dabei auf der Hand: Viele Erweiterungen erfordern einen ungleich höheren Wartungsaufwand, denn vor allem Erweiterungen sind oftmals ein Einfallstor für Hacker. Daher ist es oberstes Gebot im Rahmen von Joomla!, immer alle Erweiterungen auf dem aktuellsten Stand zu halten.

Baut man aber alles auf SEBLOD auf, so ist nur noch Joomla! und eben das Content Construction Kit zu pflegen. Ich möchte Ihnen nun an einem einfachen Beispiel zeigen, wie man mit SEBLOD ein eigenes Kontaktformular aufbaut und somit Erweiterungen, wie das bekannte dfContact oder FlexiContact, überflüssig macht.

16.1.1    Die Vorbereitung: Einrichtung

Wir bauen an dieser Stelle auf dem Wissen auf, das Sie bereits in den letzten Kapiteln erworben haben, und beginnen zuerst mit dem Erstellen eines eigenen Ordners für unsere neue Kontaktformularapplikation. Das ist sinnvoll, weil Sie dann alle Inhalte für jede Applikation in einem eigenen Ordner gespeichert haben. Sie sollten sich bei der Arbeit mit SEBLOD, schon allein der Übersichtlichkeit halber, immer angewöhnen, alles genau durchzustrukturieren.

Klicken Sie auf App Ordner und legen Sie dort einen neuen Ordner mit dem Namen Kontaktformular an.

Achten Sie darauf, dass Sie den Ordner als 1. Ebene der App festlegen, außer Sie möchten das Kontaktformular im Rahmen mehrerer Applikationen nutzen. Setzen Sie zudem den Haupteintrag auf Ja, somit können Sie den angelegten Ordner als Grundlage für Ihr neues Kontaktformular benutzen.

Wählen Sie nun eine Farbe, um den Ordner eindeutig zu kennzeichnen, sowie eine Zeichenfolge und eine Farbe für den darin befindlichen Text. Zudem können Sie ein eigenes Symbol für den Ordner festlegen, das jedoch bereits auf dem Server liegen sollte.

Wählen Sie bei Elemente alle vier Typen aus, auch wenn Sie sie aktuell eigentlich gar nicht alle brauchen. Somit erhalten Sie sich jedoch die Freiheit dem Ordner, später andere, jetzt vielleicht noch nicht absehbare Elemente hinzufügen zu können.

 Screenshot 1Bild 16.1: Optionen beim Erstellen des Ordners.

Nun erstellen wir die Felder, die wir für unser Kontaktformular benötigen. Hierbei handelt es sich um die Felder, die der Kunde zur Eingabe in unser Formular benötigt, und die Felder, die wir im Hintergrund benötigen, um unser Formular zu nutzen. Werfen wir erst einmal einen Blick auf das Formular und darauf, welche Felder in der Eingabemaske vorhanden sein müssen.

Screenshot 2

Bild 16.2: Die Felder und das Kontaktformular (Site Form) im Frontend.

Wie Sie auf der Abbildung erkennen, haben wir in unserem Beispiel insgesamt acht Felder angelegt, die wir für unser Formular benötigen. Selbstverständlich haben Sie an dieser Stelle die Möglichkeit, bei Bedarf weitere Felder hinzuzufügen oder deutlich weniger Felder einzubauen.

Optional können Sie sogar Anhänge weiterleiten, worauf wir an späterer Stelle noch einmal zurückkommen wollen. Aus unserem Kontaktformular lässt sich nämlich auch problemlos eine Beschwerdedatenbank einrichten.

Wir belassen es für den Anfang aber bei einem recht einfachen Aufbau und wollen dem Besucher unserer Seite die Möglichkeit geben, mit uns in Kontakt zu treten. Dafür benötigen wir an dieser Stelle seinen Namen, seine Mailadresse, seine Adresse (optional), seine Telefonnummer sowie die Art seines Anliegens und einen Text, den uns der Nutzer hinterlassen kann.

All diese Felder werden uns nun per Mail übermittelt, und wir können ganz gezielt auf das Anliegen unseres Kunden reagieren.

Bis auf Feld 5, Kunde Mailfunktion, und Feld 3, Kunde Anliegen, handelt es sich bei allen weiteren Feldern um simple Textfelder bzw. einen Textbereich.

Der Unterschied zwischen Text und Textbereich liegt darin, dass Sie bei Ersterem nur die Möglichkeit haben, eine Zeile zu hinterlassen, bei einem Textbereich jedoch mehrzeilige Inhalte übertragen können, wie zum Beispiel einen kurzen Text.

Erstellen Sie also erst einmal insgesamt sechs Felder vom Typ Text und eines vom Typ Textbereich jeweils mit einem aussagekräftigen Titel, der es Ihnen auch später bei großen und komplexen Formularen erlaubt, den Überblick zu behalten.

Wählen Sie dafür bei dem Feld als App Ordner den zuvor erstellten Ordner aus, den wir zu Beginn dieses Kapitels erzeugt haben.

Das Feld Name wird automatisch befüllt und ist ähnlich wie der bekannte Joomla!Alias zu betrachten. Wichtig ist hierbei, dass wir diesen Namen später auch benötigen, um unsere Felder gezielt anzusprechen. Beachten Sie, dass Sie das Feld Name bei Bedarf auch manuell ausfüllen können.

Auf dem zuvor gezeigten Screenshot habe ich Ihnen eine Zuordnung der Felder zu den jeweiligen Feldern im Frontend gezeigt. Darauf sehen Sie auch jeweils den Feld Namen oder den Alias des Feldes, der kleingeschrieben unter dem Titel zu finden ist.

Ich erwähne das an dieser Stelle noch einmal explizit, weil die Feldnamen absolut wichtig sind für die Arbeit mit unserem Kontaktformular und für die Arbeit mit SEBLOD allgemein.

Nun können Sie eine Bezeichnung für Ihr Feld festlegen. Dabei handelt es sich um das sogenannte Label, das der Kunde später als Auszeichnung des Formularfeldes sieht.

Bei Standard Wert können Sie einen Wert bzw. einen Text festlegen, der schon als Inhalt im Textfeld zu finden ist und der dann vom Kunden überschrieben werden müsste. Natürlich handelt es sich bei diesem Wert auch um den Wert, der per Mail übertragen wird, wenn der Kunde nichts anderes einträgt. Wir verzichten an dieser Stelle auf das Eintragen eines Standardwertes und lassen das Feld frei.

Die Mindest- und Maximallänge beim Erstellen des Textfeldes bezieht sich jeweils auf die Menge der Ziffern oder Buchstaben, mit denen das Feld befüllt werden kann. Es ist vollkommen in Ordnung, wenn Sie das auf der Standardeinstellung belassen.

Nur wenn Sie sich sicher sind, wie zum Beispiel bei einem Feld Postleitzahl, das erwartungsgemäß nie mit mehr als fünf Ziffern befüllt wird, würde ich dazu raten, einen kleineren Wert einzutragen.

Befüllt der Kunde das Feld mit mehr Zeichen hintereinander, wird eine Fehlermeldung

ausgegeben.

Die Größe gibt an, wie breit das Feld im Formular auf der Webseite dargestellt wird. Wir haben später natürlich auch noch die Möglichkeit, via CSS darauf zuzugreifen und das Feld designtechnisch zu formatieren.

Zuletzt müssen Sie sich entscheiden, wo der Inhalt des Feldes gespeichert werden soll. Da es sich um ein simples Kontaktformular handelt, dessen Inhalt uns bereits per Mail zugestellt wird, verzichten wir an dieser Stelle darauf, seine Inhalte auch in der Datenbank abzulegen. Wählen Sie deshalb bei Format/Position Kein als Speichermethode aus. Vor allem wenn viele Kontaktanfragen zu erwarten sind, ist diese Einstellung sinnvoll, weil wir es so vermeiden, dass unsere Datenbank und unser Joomla!-System mit zahllosen Anfragen gefüllt werden.

Denken wir an dieser Stelle schon einen Schritt weiter Richtung »Beschwerdedatenbank«, ist es sinnvoll, den Inhalt der Felder in der Datenbank abzulegen. Aber dazu später mehr.

Ähnlich verhalten sich die Einstellungen beim Feldtyp Textbereich. Wir erstellen also zuerst ein neues Feld, vergeben den Namen Kunde Nachricht und speichern es im Ordner Kontaktformular. Wir geben dem Feld eine Bezeichnung/ein Label und verzichten wieder auf einen Standard Wert.

Die Anzahl der Spalten dient dem Einstellen der Breite des Textfeldes, die Reihen dienen dem Ausrichten der Höhe. Um es zu verdeutlichen: Bei einem Feld vom Typ Textbereich handelt es sich um eine aus HTML bekannte Textarea.

Die Mindest- und Maximallänge gibt an dieser Stelle an, wie viele Zeichen man hintereinander schreiben kann, bevor man eine Fehlermeldung erhält.

Um Ihre Mail später ein bisschen aufzuräumen, stehen Ihnen unter Prozesse einige Möglichkeiten zur Verfügung. Sie können hier einstellen, wie Zeilenumbrüche im Textfeld per Mail übergeben werden.

Sie haben einfache Zeilenumbrüche und Abstände zur Verfügung sowie verschachtelte Zeilenumbrüche. In der Mail würden die Zeilen via HTML mit

001

<br />

oder

001

<p></p>

umbrochen. Auch der Textbereich soll natürlich nicht in der Datenbank gespeichert werden, und wählen wir als Format/Position wieder Kein aus.

Als kleine Besonderheit bauen wir in unser Formular eine Drop-down-Auswahl ein, in der man die Art seines Anliegens auswählen kann. Das macht es später einfacher, das Anliegen zuzuordnen und zu bearbeiten. Dazu erstellen wir ein Feld vom Typ Wählen: Einfach (Simple). Hierbei handelt es sich um ein Auswahlfeld, in dem der Kunde eine aus mehreren Möglichkeiten auswählen darf. Selbstverständlich können Sie an dieser Stelle auch eine Mehrfachauswahl einsetzen, die Sie unter Wähle: Mehrere finden.

Wir erstellen verschiedene Auswahloptionen, wie Beschwerde, Lob, Preisanfrage, Kontakt.

Optional lassen sich einfache Texte eintragen, die Sie auch mit Werten verknüpfen können. Schreiben Sie beispielsweise Beschwerde=1. Wird an dieser Stelle vom Kunden Beschwerde ausgewählt, wird per Mail der Wert 1 übermittelt. Die Übergabe von Werten hat dann Sinn, wenn Sie die Felder auswerten und damit gegebenenfalls weitere Felder triggern oder wenn man mit den Werten (zum Beispiel in einer Datenbank) weiterarbeitet.

Im nachfolgenden Bild finden Sie noch einmal eine Übersicht der Felder, die wir erstellt haben.

Zu sehen sind die Feld Namen, die Feld Titel, der Typ, die Speicherung und vieles mehr. Diese Ansicht ist immer dann sinnvoll, wenn Sie sich noch einmal einen Überblick über alle Felder Ihrer App verschaffen möchten. Stellen Sie dazu die Filterung bei Felder auf Ihren App Ordner ein, um nur die Felder Ihrer App anzuzeigen. Da Sie mit dem Feld Namen später weiterarbeiten und die korrekte Schreibweise sehr wichtig ist, können Sie sicherheitshalber alle Feld Namen noch einmal in der Übersicht abgleichen oder gegebenenfalls sogar per Copy-and-paste nutzen.

Screenshot 3

Bild 16.3: Übersicht aller Felder mit Feld Name, Feld Typ, Feld Titel und Speicherort.

 

16.1.2    Erstellen der Mailfunktion

Nun kommen wir endlich zum Herzstück unseres Kontaktformulars, denn alle Felder haben wenig Sinn, wenn sie nicht auch per Mail an uns übertragen werden, um auf das Anliegen des Kunden eingehen zu können.

Auch dafür gibt es in SEBLOD bereits ein vordefiniertes Feld, das eine Mailfunktion beinhaltet. Natürlich ist es unabdingbar, dass wir auch diese Mailfunktion erst konfigurieren und unseren Wünschen anpassen.

Erstellen Sie also ein neues Feld, benennen Sie den Titel mit Kunde Mailfunktion und vergeben Sie natürlich auch einen aussagekräftigen Alias, wenn Sie nicht auf den automatisch generierten Alias bzw. Namen zurückgreifen möchten. Wählen Sie als App Ordner wieder den bereits erstellten Ordner des Kontaktformulars aus und wählen Sie den Typ Email aus der Hauptgruppe Formular.

Es stehen Ihnen zahlreiche Optionen zur Verfügung, die auf den ersten Blick etwas verwirrend wirken. Aber keine Sorge, wir gehen auf alle diese Punkte ein.

16.1.3    Feldtyp Email

Wie bei allen anderen Feldtypen ist auch beim Typ Email die Konstruktion das A und O. Hier legen wir eindeutig fest, wie unser Feld bearbeitet wird bzw. welche Funktionen es hat.

Wir vergeben zuerst eine Bezeichnung, die an dieser Stelle jedoch nicht so wichtig ist. Es handelt sich um das sogenannte Label. Da die Mailfunktion für den User später jedoch auf unsichtbar geschaltet wird, ist eigentlich auch das Label egal. Denken Sie jedoch daran, dass Sie trotzdem stringent und sinnvoll benennen sollten, auch wenn man darauf verzichten könnte. Wie schon zuvor erwähnt, werden Sie sich vor allem bei komplexen Formularen freuen, wenn Sie nach monatelanger Untätigkeit an diesem Formular wieder hineinschauen und alles sauber benannt haben.

Bevor ich Ihnen weitere Details erkläre, schauen Sie sich erst einmal den nachfolgenden Screenshot an, damit Sie einen Überblick darüber bekommen, welche Optionen Ihnen an dieser Stelle zur Verfügung stehen.

Screenshot 4

Bild 16.4: Der Feldtyp Email im Überblick.

Nachdem Sie eine Bezeichnung festgelegt haben, müssen Sie entscheiden, wie und wann die Mail versendet wird. Dazu stehen Ihnen unter Schicke E-Mail insgesamt vier verschiedene Optionen zur Verfügung, die ich Ihnen kurz erläutern möchte. Bedenken Sie: Die Mailfunktion dient nicht nur der Erstellung simpler Kontaktformulare, sondern wird auch benutzt, um das Redaktionssystem zu steuern.

SEBLOD arbeitet in den meisten Fällen auf Artikelbasis, das heißt, dass üblicherweise auch ein Artikel erstellt wird. In unserem Fall verzichten wir darauf jedoch. Trotzdem ist es wichtig, sich dies ins Gedächtnis zu rufen, denn nur dann haben die vier folgenden Auswahloptionen tatsächlich Sinn.

  • Niemals (Never): Es wird in keinem Fall eine Mail verschickt, auch nicht, wenn ein neuer Artikel erstellt wird.
  • Einreichen (Submission): Eine Mail wird versendet, wenn der User einen neuen Artikel erstellt bzw. einreicht. Diese Funktion ist auch bei unserem Formular sinnvoll, denn nun wird in jedem Fall eine Mail versendet, wenn der User das Formular mit dem Sende-Button verschickt.
  • Edition (Edition): Bei Edition wird immer dann eine Mail versendet, wenn ein Beitrag editiert wird. Dies hat im Fall unseres Formulars jedoch keinen Sinn.
  • Immer (Always): Immer erklärt sich von selbst. Es wird immer eine Mail versendet, egal ob man einen Artikel editiert, neu erstellt etc. Auch diese Möglichkeit können wir für unser Formular benutzen.

Zusätzlich finden Sie dahinter eine Eingabemöglichkeit, in der Sie einen Feldnamen hinterlegen können. Benötigt wird das für unser simples Formular nicht. Jedoch möchte ich es nicht unerwähnt lassen. Dieses Feld dient der dynamischen Weiterleitung unserer Mail.

Sie können einen Feldnamen eintragen, und in diesem Feld muss eine Nummer/ein Integer übergeben werden. Dabei steht:

  • Never/Niemals = 0
  • Submission/Einreichen = 1
  • Edition = 2
  • Always/Immer = 3

Sie müssen also in diesem Feld immer eine Nummer hinterlegen, die dafür sorgt, dass eine Sendemethode gewählt wird.

16.1.4     Absender des Formulars festlegen

Im nächsten Schritt legen wir den Absender des Mailformulars fest. Dazu stehen Ihnen insgesamt drei Auswahlmöglichkeiten zur Verfügung.

  • Standard: Als Absender-E-Mail-Adresse wird die Adresse genommen, die Sie in der Joomla!-Konfiguration hinterlegt haben. Sie können sie unter System/Konfiguration/Server im Register Mailing selbst verändern.
  • E-Mail: Sie können die Mailadresse im Format Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! selbst eingeben. Dies ist sicherlich die einfachste Variante.
  • Feld (Formular): Hier haben Sie die Möglichkeit, eine Mailadresse aus einem Feld auszulesen. Haben Sie zuvor zum Beispiel ein Feld definiert, in dem der User seine Mailadresse eingeben muss, können Sie hier den Namen des Feldes eintragen, und Sie bekommen die Kontaktmail von der Mailadresse des Kunden geschickt.

Beispiel:

Der Kunde trägt seine Mailadresse in das Feld kunde_mail ein, und Sie nutzen diese eingegebene Adresse, um sie per Formular direkt zu übermitteln.

    Feldtyp »Text« -> Feldname »kunde_email«

   Feldtyp »Email« -> Einstellungen -> »Von« Feld (Formular) : kunde_email

Bitte beachten Sie, dass der Mailversand natürlich über Ihren Server läuft und die Joomla!-interne Mailingfunktion genutzt wird. Der Mailversand läuft also nicht über den Computer des Kunden.

Ein Vorteil dieser Methode ist unter anderem, dass Sie in Ihrem Mailprogramm direkt auf die Kontaktmail des Kunden antworten können, ohne zuvor seine Mailadresse noch einmal gesondert zu erfassen.

Ähnlich arbeitet Absender, hierbei handelt es sich schlicht um den angezeigten Namen, der Ihnen per Formular übermittelt wird. Auch die Optionen sind recht ähnlich:

  • Standard: Als Name wird der Name verwendet, den Sie in der Joomla!-Konfiguration hinterlegt haben. Sie können ihn unter System/Konfiguration – Server im Register Mailing selbst verändern.
  • Name: Sie können an dieser Stelle selber einen Namen vergeben, z. B. »Webseite XY Kontaktmailer«. Somit können Sie Mails in Ihren Mailprogrammen ganz genau dem Absender zuordnen und sie danach sortieren lassen.
  • Feld (Formular): Wie bei Von haben Sie hier die Möglichkeit, den Namen aus einem Feld auszulesen. Eine ausführliche Erklärung dazu habe ich Ihnen ja schon beim vorangegangenen Feld geliefert. Beide sind deckungsgleich.
  • Kommen wir zum Objekt, bei dem es sich um nichts anderes handelt als den Betreff. Hier haben Sie wiederum die Möglichkeit selbst, einen statischen Text einzugeben, Sie können aber auch den Inhalt eines einzelnen Feldes auslesen. Hierbei muss beachtet werden, dass der Feldname in Rauten (#) gesetzt wird. Wollen wir das Feld Kunde Anliegen als Betreff übermitteln, muss bei Objekt #kunde_anliegen# eingetragen werden.

 

16.1.5    Das Feintuning

So langsam kommen wir ans Eingemachte. Daher will ich Ihnen vorab noch einmal ein Bild an die Hand geben, denn tatsächlich sind die nachfolgenden Optionen etwas willkürlich verteilt, sodass teilweise falsche Eindrücke entstehen könnten.

Screenshot 5

Bild 16.5: Das Feintuning des Mailfeldes.

Bisher haben wir jeweils zur Auswahl auf der linken Seite eine Entsprechung auf der rechten Seite finden können. Nun aber ist der Inhalt ein wenig durchmischt. Das hängt vor allem damit zusammen, dass uns SEBLOD nun mehrere Möglichkeiten bietet, an wen die Mail verschickt werden soll.

Es ist wichtig, dass die Mail tatsächlich an alle Empfänger verschickt werden kann. Sie können also problemlos alle An-Felder befüllen. Sie haben dabei die Wahl, die Mailadresse direkt statisch als Text einzugeben, sie an eine Mailadresse zu senden, die Sie via Feld abgreifen, oder sogar an diverse hinterlegte Administratoren. Wir bleiben also erst einmal auf der rechten Seite des Fensters und schauen uns die verschiedenen Optionen an.

Im Feld An haben Sie die Möglichkeit, statisch Mailadressen einzutragen. Die Mailadressen werden dabei nach der üblichen Schreibweise eingetragen, Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!, und Sie können mehrere Mailadressen durch Kommata trennen.

Bei An (Felder) können Sie verschiedene Felder, ebenfalls durch Kommata getrennt, eingeben. Hier werden dann die Mailadressen aus den Feldern ausgelesen. Das ist zum Beispiel dann sinnvoll, wenn man das Kontaktformular zur Bestätigung noch einmal an den Kunden senden möchte.

Sehr eindeutig ist die letzte Option An (administratoren). In dem nebenstehenden Feld werden Ihnen alle Administratoren aus der Benutzerverwaltung angezeigt. Per Klick können Sie auswählen, welchem Administrator eine Mail geschickt werden soll. Eine Mehrfachauswahl ist natürlich möglich.

Die Mailadresse der einzelnen Administratoren ändern Sie problemlos in der Joomla!internen Nutzerverwaltung.

Bevor wir uns mit dem eigentlichen Inhalt, der sogenannten Nachricht oder Message, befassen, wollen wir uns die restlichen Einstellungen ansehen, die von Relevanz sein können.

Da ist zum einen der Anhang. Kunden haben die Möglichkeit, über das Feld Schicke Anhang (Feld), auch Attachment genannt, Anhänge an uns zu übermitteln.

Dabei haben wir die Auswahl, entweder mehrere Felder zu übertragen, siehe auf der rechten Seite Anhang (Felder), oder nur ein einzelnes Feld.

Anhänge können Grafiken, Dokumente und vieles mehr sein. Beachten Sie, dass die Mailfunktion nach wie vor von Joomla! bzw. Ihrem Server bereitgestellt wird. Je nach Größe des Dateianhangs kann das also zu Problemen führen. Bei Time-outs empfiehlt sich ein Anruf bei Ihrem Hoster.

Die Felder Kopie an und Blindkopie an dürften Ihnen bekannt sein. Sie haben an dieser Stelle die Möglichkeit, die Mail per Kopie oder Blindkopie an weitere Empfänger zu versenden. Sie haben wiederum drei Auswahlmöglichkeiten, die ich Ihnen bereits erläutert habe. Dazu zählen Kein, E-Mail und Feld (Formular). Sie können also dort entweder eine feste, statische Mailadresse eintragen oder die Mailadresse aus einem vordefinierten Feld auslesen.

Kurzer Zwischenruf

Auch wenn ich mich an dieser Stelle wiederhole, aber vergessen Sie nicht, dass die Mailfunktion für mehr gedacht ist als »nur« für ein einfaches Kontaktformular. Sie können mit den vorhandenen Feldern und Möglichkeiten Benachrichtigungen für nahezu jeden Fall erstellen, ob Sie dem Administrator eine Meldung schicken wollen, wenn jemand ein neues Bild in eine Galerie eingefügt hat, oder ob ein User eine neue Beschwerde in die Datenbank eingereicht hat. Sie können sogar einen kleinen Onlineshop realisieren und zum Beispiel eine Mail versenden, wenn der Artikelbestand weniger als zehn Artikel beträgt. Sie sehen, es gibt unzählige Möglichkeiten, und wir behandeln nur eine davon.

Ich empfinde diesen Hinweis als sehr wichtig, denn erst dann haben die zahlreichen Felder und ihre Möglichkeiten innerhalb der Mailfunktion auch wirklich Sinn.

16.1.6     Das Erstellen der E-Mail-Nachricht

Kommen wir nun zur Essenz unseres Formulars. Wir haben uns vor allem den Grundlagen gewidmet, Felder erstellt und dafür gesorgt, dass die Inhalte unseres Formulars auch versendet werden. Am wichtigsten ist jedoch, dass wir einen Inhalt übermitteln. Sonst hat die ganze Übung ja keinen Sinn. Daher wollen wir uns nun ganz ausführlich den beiden letzten, offenen Eingabemöglichkeiten widmen:

  • Nachricht (Feld) – In diesem Bereich haben Sie die Möglichkeit, ein einzelnes Feld festzulegen, das übermittelt wird. Dies kann zum Beispiel auch eine Gruppe sein. Außerdem können Sie durch die Eingabe von [fields] alle Felder des Formulars gesammelt rendern.
  • Nachricht (Editor) – Während Nachricht (Feld) vor allem den Inhalt einzelner Felder bzw. alle Felder unformatiert rendert, haben Sie bei Nachricht (Editor) deutlich tiefer greifende Möglichkeiten. Über den Editor können Sie den Inhalt der Mail Ihren Wünschen anpassen. Dabei handelt es sich um eine Version des Ihnen bereits bekannten Tiny Editors, der standardmäßig bei Joomla! dabei ist. Sollten Sie im Backend für Ihren User einen anderen Editor ausgewählt haben, so wird dieser hier angezeigt. Sie haben aber in den SEBLOD-Optionen jederzeit die Möglichkeit, auf einen anderen Editor umzustellen, vorausgesetzt natürlich, dass Sie einen weiteren Editor installiert haben.

Bei der Erstellung des Mailtextes stehen uns diverse Möglichkeiten zur Verfügung. So können Sie mit dem Editor beispielsweise PHP-Code ausführen und sich über die PHP-Date-Funktion das Sendedatum ausgeben lassen. Dies ist nur ein Beispiel, PHP lässt sich hier vortrefflich einsetzen, um noch weit mehr Informationen zu übergeben.

Zudem können Sie auf Joomla!-eigene Werte zugreifen, wie z. B. den Seitennamen [sitename] oder die Seiten-URL [siteurl]. Die Werte können auch via PHP ausgelesen und genutzt werden. Es gibt eine Liste mit nutzbaren Parametern[1]. Dort finden Sie weitere Informationen zu den Konfigurationswerten. Unglücklicherweise findet sich jedoch derzeit keine Liste mit allen nutzbaren Joomla!-Werten.

Neben der Nutzung von PHP-Code oder internen Werten steht Ihnen aber auch die Möglichkeit zur Verfügung, auf SEBLOD-Werte zuzugreifen. Sie können somit z. B. das Label/die Bezeichnung eines Feldes, seinen Wert oder viele weitere Attribute auslesen. Der Aufruf erfolgt dabei jeweils über folgenden Code:

001

$cck->getAttribut('fieldname');

Dabei müssen Sie Attribut durch den Namen des jeweiligen Attributs ersetzen. Wollen Sie also zum Beispiel das Label eines bestimmten Feldes auslesen, müssen Sie den Code anpassen:

001

$cck->getLabel('name_ihres_feldes');

Sie haben so die Möglichkeit, auch Werte auszulesen, die sich nicht direkt auf den Inhalt des Feldes beziehen. Das mag für unser Kontaktformular nun wenig Sinn haben. Es gibt aber bei komplexeren Formularen oder Anwendungen durchaus vielfältig Möglichkeiten, diese Werte sinnvoll zu nutzen.

Zu guter Letzt will ich Ihnen an dieser Stelle noch eine Möglichkeit zeigen, wie Sie die Werte der Felder auslesen und per Mail sauber formatiert ausgeben. Sicherlich ist das an dieser Stelle der wichtigste und auch interessanteste Weg, den Inhalt seiner Mail zu befüllen. Wie Sie schon in den vorangegangenen Abschnitten gemerkt haben, ließen sich auch einfach alle Felder oder ein einzelnes Feld unformatiert auslesen und versenden.

Wollen Sie nun aber eine sauber strukturierte Mail erhalten, müssen Sie den Editor mit einem bestimmten Format füttern.

Einzelne Felder lesen Sie aus, indem Sie den Namen der Felder mit zwei Rauten »einkleiden«. Sie können sich die Rauten wie ein öffnendes und ein schließendes Tag aus dem HTML-Bereich vorstellen. Felder werden also innerhalb des Editors immer in folgendem Format ausgelesen: #name_des_feldes#.

Nicht zu vergessen ist jedoch, dass Sie natürlich auch statischen Text nutzen können, um den Text unserer Mail ansprechend zu gestalten. Im Folgenden möchte ich Ihnen einen Beispieltext vorstellen, den ich Ihnen nachstehend genauer erklären werde.

16.1.7    Der Inhalt im Detail

Mailinhalt im Editor:

001

Sehr geehrter [admin],

002

Sie haben eine Nachricht der Webseite [sitename] erhalten. Der Kunde #kunde_name# möchte Kontakt zu Ihnen aufnehmen. Er hat folgendes

Anliegen #kunde_anliegen#.

003

Der Kunde hat Ihnen folgende Nachricht hinterlassen:

004

#kunde_nachricht#

005

Kontaktdaten des Kunden:

006

Name: #kunde_name#

Adresse, Ort: #kunde_adresse1#, #kunde_adresse2#

Telefonnummer des Kunden: #kunde_telefon#

Mail des Kunden: #kunde_email#

007

Bitte setzen Sie sich umgehend mit dem Kunden in Verbindung.

Screenshot 6

Bild 16.6: Der Inhalt der Mail im Editor.

Sie haben nun eine Mischung diverser verschiedener Werte und Texte vorgenommen. Sie starten mit einem statischen Text und dem Aufruf des Joomla!-Parameters für den Namen des Admins. Dieser wird die Mail gesendet bekommen, wir sprechen ihn somit direkt an. In den folgenden Zeilen teilen wir ihm mit, dass er eine Mail der Webseite bekommen hat. Den Namen der Webseite lesen wir wieder aus den Joomla!-Parametern aus.

Dann folgt das Auslesen der ersten Felder. Wir geben den Inhalt des Feldes kunde_ name weiter. So übermitteln wir das Anliegen des Kunden. Wir erinnern uns: Es handelt sich um eine einfache Drop-down-Auswahl, deren Wert wir als Text per Mail übermitteln. So verhält es sich auch mit den weiteren SEBLOD-Feldern, die wir alle auslesen und in den Inhalt unserer Mail verpacken.

Das Gute an dieser Arbeitsweise mit dem Editor-Feld ist, dass Sie den kompletten Inhalt der Mail nach eigenen Vorstellungen formatieren können.

Bitte denken Sie daran, dass Ihnen neben den hier vorgestellten Möglichkeiten natürlich auch die Formatierungsoptionen des Editors zur Verfügung stehen, denn das Ergebnis ist letztlich reines HTML. Sie können also sogar ein Bild einbauen, Sie können Text fett oder kursiv setzen, Absätze einfügen oder gar Tabellen einbauen, wenn Ihnen der Sinn danach steht.

Wie bei SEBLOD im Allgemeinen gilt: Auch mit der Mailfunktion und dem Editor ist nahezu alles Vorstellbare machbar.

Damit kommen wir dem Ziel schon einen ganz großen Schritt näher. Wir haben alle Felder erstellt, das Formular (Site Form) zusammengesetzt und die Mailfunktion bis ins Detail ausgearbeitet. Nun fehlt eigentlich nur noch die Anzeige auf unserer Webseite, mit der wir uns im letzten Abschnitt beschäftigen wollen.

16.1.8    Darstellung des Formulars

Damit die Kunden unser erstelltes Formular auch nutzen können, müssen wir es natürlich im Frontend aktivieren und darstellen. Das wird vielen von Ihnen wahrscheinlich keinerlei Probleme machen. Ich möchte der Vollständigkeit halber diesen Schritt allerdings kurz erklären.

Erstellen Sie bitte einen neuen Menüpunkt, dem Sie wie üblich einen Namen geben. Wählen Sie als Menütyp SEBLOD/Formular und dann den Namen Ihres Inhalts- bzw. Formulartyps aus. In unserem Fall handelt es sich um den Inhaltstyp Kontaktformular.

Nun haben Sie alle Schritte unternommen, und Ihr Formular sollte auf der Seite zu sehen sein. Wechseln Sie bitte in das Frontend Ihrer Seite und prüfen Sie, ob alles so funktioniert, wie es sollte.

16.1.9    Berechtigungen

Und jetzt stehen Sie vermutlich vor einem Problem: Denn Sie bekommen kein Formular zu sehen, sondern nur eine Fehlermeldung, dass Sie derzeit keine Berechtigung haben, den Inhalt der Seite anzusehen.

Genau so wird es auch Ihren Kunden gehen, die mit einem Gast- oder einem öffentlichen Profil Ihre Seite besuchen. Alle registrierten User bzw. Admins werden das Formular im eingeloggten Zustand sehen. Das hat jedoch bei dieser Variante nur bedingt Sinn, wir wollen den User ja nicht zu einer Registrierung zwingen.

Daher müssen wir uns die Berechtigungen noch einmal anschauen. Diese sorgen dafür, dass die Formularfelder nicht sichtbar sind. Ein kleiner Hinweis an dieser Stelle: Gleiches gilt, wenn Sie dem Kunden die Möglichkeit bieten, einen Text zu übermitteln, zum Beispiel wenn Sie ein kleines Redaktionssystem aufgebaut haben. Sobald Sie dem Kunden Texteingabemöglichkeiten bieten, müssen Sie auch die Berechtigungen anpassen.

Beachten Sie, dass es sich hierbei um die Berechtigungen in SEBLOD selbst handelt. Diese hängen zwar auch mit den Joomla!-Berechtigungen zusammen, jedoch sind beide getrennt steuerbar. Allerdings ist das Berechtigungen-Feld in SEBLOD 3.x sehr gut versteckt, was oftmals zu Irritationen führt.

Schauen Sie sich den unteren Screenshot an, auf dem ich Ihnen zeige, wohin Sie klicken müssen, um die richtige Ansicht zu erhalten

Screenshot 7

Sie müssen nun bei Inhaltserstellung den Wert auf Erlaubt setzen und zudem noch einmal auf den rechten Button Berechtigungen klicken. Dort wählen Sie Öffentlich aus und setzen bei Aktion Erstellen den Wert ebenfalls auf Erlaubt. Jetzt sind die Einstellungen korrekt, und das Formular wird angezeigt.

Erstellen von Inhalt

Ein Hinweis zu diesem Thema, denn es mag etwas missverständlich sein: Wir sollten uns immer ins Gedächtnis rufen, dass das Formular in gewisser Weise Inhalte erstellt, selbst wenn es sich nur um den Versand einer Mail handelt. Für SEBLOD ist das »Erstellen von Inhalt«. Und wenn dazu die Berechtigungen nicht ausreichen, dann ist das Erstellen unmöglich.


Nun haben Sie Ihr eigenes Kontaktformular mit SEBLOD erstellt und gelernt, was Sie mit dem Mailfeld alles anstellen können.

16.2         Erweiterung zum Beschwerdeformular

Nachdem ich Ihnen auf den letzten Seiten vorgestellt habe, wie man ein Kontaktformular aufbaut, möchte ich Ihnen nun näherbringen, wie Sie dieses Formular erweitern und zu einem Beschwerdeformular ausbauen können. Beschwerdeformular ist exemplarisch zu verstehen, um Ihnen weitere Möglichkeiten darzulegen. Natürlich lassen sich auf diesem Wege auch viele andere Anwendungen erstellen. Allerdings sind wir mit dem Beschwerdeformular zumindest thematisch sehr nah an unserer vorangegangenen Anwendung.

Aufgrund der thematischen Nähe und da wir einige Felder, die wir auf den letzten Seiten bereits erstellt haben, wieder benutzen werden, führen wir beide Anwendungen zusammen.

Erstellen Sie also bitte zuerst einen neuen App Ordner, den Sie als Unterordner des bereits vorhandenen Ordners Kontaktformular erstellen. So haben Sie alle Felder beider Formulare gesammelt in einem »großen« Hauptordner. Und nur die zusätzlichen Felder, die wir für unser neues Formular benötigen, werden in den neuen Ordner Beschwerdeformular gespeichert.

Dies hat den Vorteil, dass Sie später – für den Fall, dass Sie Ihre App weitergeben oder anderweitig nutzen wollen – alles sauber und kompakt abgebildet haben und sehr einfach herunterladen und wieder neu installieren können.

16.2.1     Grundlagen des Beschwerdeformulars

Nachdem Sie einen Ordner erstellt haben, benötigen Sie einen neuen Inhaltstyp. Wir beginnen wieder mit dem Erstellen der verschiedenen Felder. Da wir viele Felder schon vorab für unser Kontaktformular erstellt haben, brauchen wir nur noch einige zusätzliche Felder, mit denen der Kunde seine Beschwerde genau kategorisieren kann.

Screenshot 8

Bild 16.8: Das Beschwerdeformular.

Bevor Sie jedoch frei heraus einfach Felder anlegen, möchte ich Sie an dieser Stelle einmal kurz bremsen.

Unser Kontaktformular war eine einfache Sache, wenige Felder, einfach und übersichtlich. Geht es wie jetzt jedoch um ein Beschwerdeformular oder sonstige Formulare, die einen komplexeren Hintergrund haben, kann man schnell die Übersicht verlieren.

Daher ist es sinnvoll, das ganze Vorhaben in Form einer MindMap (siehe Screenshot) oder ganz einfach auf Papier zu skizzieren. So haben Sie einerseits einen Überblick über alle zu erstellenden Felder, zudem ist es gut möglich, dass Ihnen beim Skizzieren oder Notieren Ihres Formulars Unstimmigkeiten auffallen oder Verbesserungen, die Sie direkt einfließen lassen können.

Auch wenn das natürlich zusätzlicher Aufwand ist – Sie werden sich, sobald Sie loslegen und sich verzettelt haben, freuen, wenn Sie alles ganz genau notiert haben.

Daher zeige ich Ihnen an dieser Stelle einen Screenshot, den ich mit dem kostenlosen Tool Mindmeister[2] erstellt habe, damit können Sie einfach solche Maps erstellen, die mir beim Erzeugen meines Formulars geholfen hat oben.

Screenshot 9

Bild 16.9: Der logische Aufbau des Beschwerdeformulars.

Sie können anhand des Screenshots den Aufbau des Formulars erkennen. Wir nutzen jeweils nur einfache Drop-down-Auswahlen, natürlich können Sie Ihr Formular mit eigenen Feldern befüllen. Ihrem Einfallsreichtum sind keinerlei Grenzen gesetzt.

Ich will das oben gezeigte Schema noch einmal in Worte fassen, um Ihnen die Funktionsweise des Formulars zu verdeutlichen:

Der Kunde startet zuerst mit einem einzigen Drop-down-Feld, in dem er auswählen kann, ob es sich um eine Beschwerde, einen Kontakt oder eine Störungsmeldung handelt. Je nachdem, wofür er sich entscheidet, werden – davon abhängig – neue Felder angezeigt.

Wählt der Kunde beispielsweise »Beschwerde« aus, erscheint ein weiteres Dropdown-Feld mit den Auswahlmöglichkeiten »Mitarbeiterbeschwerde«, »Beschwerde Service« und »Beschwerde Preis«. Und auch hier ergeben sich später neue Möglichkeiten, je nachdem, was der Kunde auswählt.

Damit wird schon an dieser Stelle deutlich, was bei dieser Art von Formular am wichtigsten ist: die Abhängigkeit verschiedener Felder voneinander.

Erstellen wir zuerst unsere Felder. Im Fall des Beschwerdeformulars müssen dafür mindestens sechs neue Felder erstellt werden.

Es handelt sich dabei jeweils immer um eine simple Einfachauswahl. Da wir den Rahmen an dieser Stelle nicht sprengen wollen, erläutere ich nur für ein einzelnes Feld den Aufbau.

Bei allen anderen Feldern ist der Aufbau ähnlich, da es sich ja jeweils um den gleichen Feldtyp handelt, nur der Inhalt der Auswahl ist bei jedem Feld anders.

Wir vergeben also zuerst einen Namen bzw. einen Titel für das Feld, woraus dann passend unser Alias entsteht. Auch an dieser Stelle will ich noch einmal mahnend eingreifen: Bitte vergeben Sie vor allem bei komplexen Formularen sinnvolle Feldtitel, denn vor allem wenn Sie später die Abhängigkeiten der Felder festlegen müssen, werden Sie froh sein, wenn Sie erkennen können, welches Feld mit einem anderen Feld verbunden ist.

Unser erstes Feld lautet Anliegen Level 1, es wird gespeichert im Ordner Beschwerdeformular. Als Typ wählen Sie an dieser Stelle bitte Wählen –> Einfach.

Im Bereich Konstruktion legen Sie die Feldinhalte fest, also das, was dem Kunden zur Auswahl stehen soll.

In unserem Fall sind das die Werte Beschwerde, Kontakt und Störung. Natürlich vergeben wir auch bei der Bezeichnung einen aussagekräftigen Titel: Anliegen des Kunden. Im Feld Wähle Bezeichnung legen Sie fest, was in Ihrem Feld zu sehen sein soll, wenn der Kunde noch keine Auswahl getroffen hat.

Im Bereich Standard Wert brauchen wir aktuell keinerlei Angaben zu machen. Wir hätten hier aber die Möglichkeit, eine Vorauswahl für den Kunden zu treffen.

16.2.2 Speichern oder nicht?

Der nächste Punkt ist essenziell. Sie erinnern sich sicherlich, dass wir bei unserem Kontaktformular keine Inhalte gespeichert haben. Es hat ja keinen Sinn, Kontaktanfragen in der Joomla!-Datenbank zu speichern. Etwas anders könnte es sich bei Beschwerden gestalten.

Denn einerseits könnten wir die Beschwerden ganz simpel per Mail versenden (was wir auch auf jeden Fall tun werden). Zusätzlich hätten wir auch die Möglichkeit, alle eingehenden Beschwerden in Beiträgen zu speichern und diese zum Beispiel im Listenformat wieder auszugeben. Das wäre vor allem dann sinnvoll, wenn man Joomla! bzw. seine Webseite auch als Beschwerdedatenbank benutzen möchte.

Das würde in diesem Fall den Rahmen der Erklärung sprengen, trotzdem will ich es nicht ganz unerwähnt lassen.

Sie können beispielsweise alle Beschwerden in einer Kategorie speichern, diese Kategorie nur den Beschwerdebearbeitern sichtbar machen (Berechtigungen!) und genau diese Kategorie dann im Blog- oder einem speziell erstellten Listenformat zugänglich machen.

All dies ist problemlos möglich, erfordert aber zusätzliche Bearbeitung, die wir uns an dieser Stelle ersparen wollen. Ich gehe davon aus, dass Sie mit dem bereits erworbenen Grundwissen in diesem Buch selbst in der Lage sind, derlei Listenansichten zu erstellen.

Um es also kurz zu machen: Auch im Fall des Beschwerdeformulars speichern wir unsere Inhalte nicht, sondern übermitteln sie ganz einfach per Mail.

Wählen Sie also im Bereich Speicher unter Format/Position Kein aus. Somit werden die übermittelten Inhalte nicht in der Datenbank gespeichert.

16.2.3 Der Grundaufbau des Formulars

Erstellen Sie zuerst die weiteren benötigten Felder nach dem bereits bekannten Schema. Natürlich können Sie dieses Formular nach Belieben erweitern oder vereinfachen.

Wir erstellen also zunächst einen neuen Inhaltstyp, den wir Beschwerdeformular nennen, und können dort damit beginnen, die einzelnen Felder dem Seitenformular zuzuweisen.

Wie ich schon eingangs erwähnte, nutzen wir einige Felder aus dem Kontaktformular mit. Denn den Namen des Kunden und seine Telefonnummer haben wir als Feld bereits erstellt, und wir wollen unsere Arbeit so einfach wie möglich halten.

Auch dabei stehen uns mehrere Möglichkeiten zur Verfügung, denn wir könnten an dieser Stelle auch mit Gruppen arbeiten und die bereits bekannten Felder in eine Gruppe auslagern. Aber auch das will ich hier nur erwähnen, damit Sie es nicht vergessen. Im Rahmen dieses Kapitels bleiben wir beim konventionellen Weg und ziehen die Felder alle händisch in das Seitenformular.

Damit ist unsere Hauptaufgabe an dieser Stelle eigentlich erledigt. Wie schon beim Kontaktformular wird Ihnen aber auffallen, dass Sie das neue Beschwerdeformular nicht sehen können, sobald Sie es mit einem Menüpunkt verknüpft haben.

Das liegt an den Berechtigungen, die tatsächlich für jeden neuen Inhaltstyp neu definiert werden müssen.

16.2.4 Abhängigkeiten von Feldern

Unser Formular ist nun erstellt, aber wie Sie nach dem Festlegen der Berechtigungen wohl festgestellt haben, werden alle unsere eingebundenen Drop-down-Felder angezeigt. Und genau so soll unser Formular ja nicht sein. Wenn wir uns an den Screenshot erinnern, den ich Ihnen zu Beginn gezeigt habe, dann wird deutlich, dass einige Felder erst erscheinen sollen, wenn in einem Feld davor ein bestimmter Wert festgelegt wurde. Das bedeutet: Die verschiedenen Felder in den verschiedenen Ebenen müssen voneinander abhängig gemacht werden.

Zum Glück bietet SEBLOD auch diese großartige Funktion, die es uns ermöglicht, sehr komplexe Formulare sehr übersichtlich für den Kunden darzustellen.

Wir begeben uns an dieser Stelle wieder in das Joomla!-Backend und rufen dort über Konstruktion und Formulare & Inhaltstypen unseren Inhaltstyp Beschwerdeformular auf.

Wechseln Sie in das Register Seitenformular und klicken Sie anschließend auf die Nummer 5. Nun erscheinen im Bereich der Felder Verweise, die Sie anklicken können. Wenn Sie noch keine Abhängigkeit festgelegt haben, erscheint dort zuerst Hinzufügen, später findet sich der Verweis Bearbeiten, wenn Sie bereits Abhängigkeiten festgelegt haben.

16.2.5 Abhängigkeiten im Detail

Das Abhängigkeiten-Feld ist auf den ersten Blick etwas irreführend, denn tatsächlich müssen Sie »das Pferd von hinten aufzäumen«. Soll heißen, der hintere, rechte Bereich ist der Trigger oder Auslöser, der dafür sorgt, dass etwas passiert.

Wenn der Kunde im Feld Anliegen den Wert Beschwerde auswählt, soll ein neues Drop-down-Feld mit dem Titel Anliegen Level 2 erscheinen.

Somit ist die Auswahl des Wertes Beschwerde der Trigger oder Auslöser, der dafür sorgt, dass etwas passiert. Getriggert wird jedoch, und das ist im ersten Moment noch etwas verwirrend, das neu erscheinende Feld. Das bedeutet, Sie müssen den Trigger natürlich im Feld Anliegen Level 2 festlegen.

Dieser Trigger findet sich im Abhängigkeiten-Feld auf der rechten Seite. Schauen Sie sich dazu einfach den nachfolgenden Screenshot an, der das Ganze noch besser illustriert.

Screenshot 10

Bild 16.10: Abhängigkeiten von Feldern in SEBLOD.

Im ersten Drop-down-Feld legen Sie fest, welches der erstellten Felder als Trigger dienen soll. Wir erinnern uns: Wir möchten, um das zweite Level bzw. die zweite Ebene freizuschalten, die erste Ebene als Trigger benutzen. Wählen Sie also nun das Feld Anliegen Level1 aus.

Als Nächstes legen Sie im Feld danach die Bedingung fest. Die Felder sind zum Teil nicht sauber oder gar nicht übersetzt, lassen Sie sich davon jedoch nicht irritieren. Derzeit arbeitet ein größeres Team der SEBLOD-Developer an einer sauberen deutschen Übersetzung, damit werden auch die etwas kryptischen Bezeichnungen durch sauberen Text ersetzt.

Mit ein wenig Englischkenntnissen oder notfalls einem Übersetzungstool lässt sich dies jedoch leicht nachvollziehen.

In unserem Fall nutzen wir die Vergleichsfunktion is equal, was so viel bedeutet wie ist gleich. Bevor wir alles zusammensetzen, kommen wir zum letzten Feld. Das befüllen Sie, indem Sie auf die kleinen orangefarbenen Pfeile klicken, worauf sich ein Pop-upFenster öffnet, das Ihnen die Werte aus Ihrem Feld Anliegen Level1 anzeigt. Wir wählen hier Beschwerde aus. Um auch das noch einmal deutlich zu zeigen, habe ich einen weiteren Screenshot hinzugefügt.

Screenshot 11

Bild 16.11: Bedingungen von Feldern.

Damit haben wir eine erste Bedingung erstellt. Wenn also der Wert im Feld Anliegen Level 1 gleich Beschwerde ist, passiert etwas. Was dann passiert, legen Sie auf der linken Seite unter Status fest. Dort haben Sie die Möglichkeit, aus verschiedenen vorgegebenen Werten auszuwählen. Auch dazu zeige ich Ihnen ein Bild.

Screenshot 12

Bild 16.12: Bedingungen von Feldern 2.

Größtenteils sind die Status selbsterklärend. Um das noch einmal auf unser Beispiel zu beziehen: Unsere Bedingung ist, dass im Feld Anliegen Level 1 der Wert gleich Beschwerde sein muss. Dann kann man auswählen, dass das Feld (nur zur Erinnerung, wir befinden uns gerade im Feld Anliegen Level 2) sichtbar ist, verborgen wird etc.

Logischerweise sorgen wir an dieser Stelle dafür, dass der Wert ist sichtbar ausgewählt wird. Somit ist dieses Feld auch nur dann sichtbar, wenn die entsprechende Bedingung erfüllt ist.

Nur am Rande und zur Vertiefung: Wenn Sie mit Textfeldern arbeiten würden, dann könnte so eine Abhängigkeit zum Beispiel auch so genutzt werden, dass bei Eintragen eines bestimmten Wertes in ein Textfeld in einem anderen Textfeld ein anderer Wert angezeigt wird. Wie so oft haben Sie mit SEBLOD einfach unzählige Möglichkeiten.

 

16.2.6 Das Beschwerdeformular fertigstellen

Sie haben auf den letzten Seiten so viel Wissen angehäuft, dass ich Ihnen nun bei den letzten Schritten des Beschwerdeformulars nicht mehr auf der Schulter sitzen muss, oder?

Legen Sie die Abhängigkeiten für alle weiteren Felder nach dem Beispiel fest, das ich Ihnen erläutert habe. Vermutlich werden Sie jetzt auch verstehen, warum ich die ganze Zeit darauf gepocht habe, dass Sie Ihre Feldnamen sauber vergeben, denn jetzt wird es unter Umständen kompliziert, wenn Sie mehrere Level bzw. Ebenen miteinander verknüpfen wollen.

Zum Abschluss möchte ich ein weiteres Mal darauf hinweisen, dass sowohl das Kontaktformular als auch das Beschwerdeformular jeweils sehr einfache Beispiele sind, die sich massiv erweitern lassen.

Sie haben nun die ersten Schritte gelernt und haben mit diesem Wissen die Möglichkeit, nahezu alle Arten von Formularen problemlos umzusetzen. Ab sofort brauchen Sie dafür sicherlich keine eigene Komponente mehr, alles lässt sich mit SEBLOD bauen.

Viel Spaß dabei …

 


[1] http://docs.joomla.org/JApplication/getCfg

[2] http://www.mindmeister.com/de


webdesign von time4mambo

www.time4joomla.de is not affiliated with or endorsed by the Joomla! Project or Open Source Matters. The Joomla! name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.