FantasticNET

Sie befinden sich hier: Startseite | SEBLOD® List&Search Datenbank Tabellenspalte berechnen

Datenbank-Tabellenspalte berechnen in der SEBLOD®-Listenansicht

Grundlagen-Anleitung zur Berechnung einer Tabellenspalte in der SEBLOD®-Listenansicht mit Hilfe einer rudimentären APP zur Erfassung von Arbeitszeit.

Autor: Torsten Morling | publiziert: 22. Mai 2020 | Kategorie: Bildung | Anleitung: V 1.0 | Vorwissen: Fortgeschritten | Aufwand: 20-30 min

INHALT ANLEITUNG

Am Beispiel der Demo-App wird erklärt wie man die Grundstruktur der App einrichtet, den Content-Typ erstellt, und die Ausgabe-Liste konfiguriert. Mit Hilfe des SQL-Packs und der SQL SUM () Funktion wird die Arbeitszeit berechnet und die kumulierten Stunden in der Search-Form der Listenansicht ausgegeben. Auf den Grundlagen aufbauend, lassen sich komplexe Apps mit umfassender Spaltenberechnungen und vielfältigen Filterfunktionen erstellen.

VORWISSEN & VORBEREITUNG

Diese Anleitung setzt den routinierten Umgang mit dem Joomla!® CMS voraus. Ebenso sollte die Grundlagen und die Funktionsweise vom CCK SEBLOD® bekannt sein.

Für die Anleitung wurde installiert: Joomla! CMS 3.9.18 | CCK SEBLOD® 3.19.0 | SQL-Pack 1.2.0

ARBEITSZEIT-APP DIE ANLEITUNG

#1 Die App anlegen
#1-1

Im App Folder erstellen Sie eine neue App mit einem Namen Ihrer Wahl, in diesem Beispiel bezeichnen wir die App mit Arbeitsnachweis. Unter den Permissions geben Sie der Benutzergruppe "Öffentlich" die Gelegenheit eigene Einträge für die Arbeitszeit anzulegen.

#2 Den Contenttyp erstellen
#2-1

Erstellen Sie jetzt einen neuen Contentypen und benennen Sie Ihn nach Ihrer Wahl. In der Demo-App vergeben wir den Titel "Arbeitszeiten".

#2-2

Für die Eingabeform benötigen wir drei Felder. Das Feld für den Articel Title und das Feld für den Speicherbutton müssen nicht neu angelegt werden und können 1:1 aus dem Conten Typ "Article" übernommen werden.

Das 3. Feld zur Speicherung der Arbeitszeit in Stunden muss neu angelegt werden. Es kommt ein einfaches Textfeld zum Einsatz.

#3 Der LIST & Search Typ
#3-1

Erstellen Sie einen neuen LIST & Search Typ vom Form & Content Typ "Arbeitszeiten". In der Demo-App nennen wir den List & Search Typ "Arbeitszeiten Manager"

#3-2

Um die App nutzen zu können, benötigen wir noch ein Button zum hinzufügen von Tätigkeit und Arbeitszeit. Erstellen Sie ein neues Feld vom Typ "Button Free" in der Search Form.

#3-3

Wechseln Sie jetzt zum Reiter "List" und bestücken Sie das Ausgabetemplate "seb_table" mit den Feldern "Article Title" und "Arbeit Stunden".

#4 Der Link zur App
#4-1

Erstellen sie im Joomla!® Menümanager auf gewohnte Art einen Link zur SEBLOD® Liste "Arbeitszeiten Manager" im Hauptmenü Ihrer Joomla!-Installation.

#5 Neue Einträge in der App
#5-1

Kontrollieren Sie das Ergebniss und rufen Sie im Frontend Ihrer Testumgebung den Arbeitszeiten Manager auf.

#5-2

Erstellen Sie jetzt über die Eingabeform 2-3 neue Einträge mit Tätigkeit und Arbeitszeit. Füllen Sie die Felder aus. Beachten Sie, das bei der Eingabe der Stunden einen "Punkt" verwendet wird und kein Komma!

Bei erneuten Aufruf der App sollten die von Ihnen erstellten Einträge zu sehen sein.

#6 Die Berechnung - SQL SUM () Funktion
#6-1

Rufen Sie den List & Search Typ "Arbeitszeit Manager" auf und erstellen ein neues Feld vom Typ "SQL Query" zur Berechnung des Feldes "arbeit_stunden" auf.

#6-2

Konfigurieren Sie das "SQL Feld" und wechseln dazu in der "Search Form" zu Punkt 2 "Live & Live Value". Stellen Sie das "SQL Feld" unter "Live" auf "SQL Query". Danach ist es möglich unter "Live Value" -> "Configure" die SQL Query einzugeben.

#6-3

Kopieren Sie die SQL SUM () Funktion in das SQL Query Feld und ersetzen Sie ggf. den Spalten/Feldname. Gleiches gilt für den Präffix und Namen der Tabelle.

SELECT SUM(`arbeit_stunden`)
FROM `uwxq3_cck_store_form_arbeitszeiten`

#6-4

Kontrollieren Sie die Ausgabe im Frontend Ihrer App, das SQL-Feld zeigt jetzt die Summe der Arbeitstunden der einzelnen Tabellen-Einträge an.

#7 Der Abschluss
#7-1

Zum Abschluss rufen Sie den List & Search Typen "Arbeitszeiten Manager" erneut auf und setzen Sie das SQL-Feld in der Search Form unter den Variation wahlweise auf "Value" oder "Read-only". Unterbinden Sie so die Möglichkeit der Dateneingabe in das SQL-Feld im Frontend der App.

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.