next up previous contents index
Next: Zusammensetzung des Parameter-Array $modul_param Up: Submodule für die Steuerung Previous: Submodule für die Steuerung

Einleitung

Es gibt verschiedenen Situationen, in denen ein Zugriff auf Teilbereiche der Datenbank auch von außerhalb der Workflowanwendung nötig ist. Beispiele sind die Anmeldung zu einer Vorlesung oder die Korrektur einer Klausur. Dabei sollten für die Studenten bzw. Tutoren nur die Bereiche der Datenbank zugänglich sein, die für diese Tätigkeiten notwendig sind. Dies wird durch Views oder temporäre Tabellen und entsprechende Zugriffsrechte darauf erreicht. Das Erzeugen und Löschen der Views bzw. temporären Tabellen, einschließlich Zuweisung und Entzug der Rechte, kann aus der Workflowanwendung heraus gesteuert werden.

Die Namen der erzeugten Views bzw. temporären Tabellen werden in der Datenbank in der Relation workflow_extmod_param gespeichert. Diese können dann von einem externen Modul, das z. B. für die Anmeldung zu einer Vorlesung geschrieben wurde, ausgelesen werden. Unter einem externen Modul wird ein PHP-Skript verstanden, das unabhängig von der Workflowanwendung existiert, aber trotzdem die Libraries und Konzepte der Anwendung benutzt. Natürlich kann auch jede andere Anwendung auf die Relation zugreifen. Damit das Auslesen der Werte gelingt, muss ein allgemeines Leserecht auf die Relation workflow_extmod_param existieren. Bei der Erzeugung der Views und temporären Tabellen können neben deren Namen auch noch andere Werte über die Relation an das externe Modul übergeben werden. Beim Löschen der Views wird die Relation von allen diesen Einträgen gereinigt.

Wie bei den anderen Submodulen steht auch hier eine Funktion zur Verfügung, der man in einem Parameter-Array alle nötigen Informationen übergibt, und die das übrige erledigt. Diese Funktion heißt hier ``modul_extmod ($modul_param)'' und wird von der Library lib-extmodul-control.inc.php zur Verfügung gestellt. Die von der Funktion erzeugte HTML-Ausgabe ist nicht besonders umfangreich und besteht nur aus Buttons. Wird eine Workflow-Seite mit einem solchen Modul zum ersten Mal aufgerufen, erscheint ein Button mit der Beschriftung ``Freischalten''. Nach Betätigen des Knopfes werden die Views und temporären Tabellen erzeugt, die Rechte werden gesetzt und die Einträge in workflow_extmod_param vorgenommen. Daraufhin erscheint ein Knopf ``Sperren'', mit dessen Hilfe die Views, die Rechte und die Einträge in der Relation wieder gelöscht werden können. Die temporäre Tabelle, sofern eine angelegt wurde, bleibt aber erhalten, damit sie später vom Workflow-Anwender bearbeitet werden kann. Daraufhin erscheint wieder der Freischalten-Button und zusätzlich ein Löschen-Button, wenn eine temporäre Tabelle existiert. Diese wird erst nach Benutzen des Buttons gelöscht.

Die Funktion modul_extmod stützt sich neben den zusätzlich in lib-extmodul-control.inc.php enthaltenen Funktionen im wesentlichen auf Funktionen aus folgenden Bibliotheken:


next up previous contents index
Next: Zusammensetzung des Parameter-Array $modul_param Up: Submodule für die Steuerung Previous: Submodule für die Steuerung
Copyright Munich Network Management Team