Autor Thema: dynamische Berechtigung im Workflow  (Gelesen 2466 mal)

Offline wuschel

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
dynamische Berechtigung im Workflow
« am: 29.10.03 - 15:54:58 »
Hallo,
ich habe eine Datenbank, in der die Dokumente nacheinander von verschiedenen Personen bearbeitet werden sollen. Die einzelnen Personen sollen dabei nur innerhalb ihrer Workflow-Stufe das Dokument bearbeiten können (wird über Autoren-Felder geregelt). Die Information, dass eine Bearbeitung für den jeweils nächsten Bearbeiter ansteht erfolgt über Mail.
Also: Wer vom derzeitigen Bearbeiter als jeweils nächster Bearbeiter ausgewählt wird (Namensadressfeld), wird ins Autorenfeld eingetragen und an den wird die Benachrichtigung geschickt.
Bei Personen klappt das gut, bei Verteilerlisten (Gruppen im Adressbuch) auch noch, problematisch wird das aber bei der Adressauswahl, wenn statt einer Person ein Gruppenbriefkasten (MAIL-IN-DB) ausgewählt wird. Hier müsste ich ermitteln, wer auf den Gruppenbriefkasten zugreifen darf und diese Personen dann ins Autorenfeld übernehmen.
ACL auslesen ist verboten, für alle anderen Lösungshilfen, auch organisatorische, wäre ich dankbar. Oder auch für Beschreibungen, wie andere das gelöst haben (gerne auch im direkten Kontakt, wenn es den Rahmen hier sprengt)
Danke erstmal

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:dynamische Berechtigung im Workflow
« Antwort #1 am: 29.10.03 - 16:37:50 »
Was steht denn an Programmiermitteln zur Verfügung? LotusScript ? Nur Formelsprache ?
Und wozu in diesem Zusammenhang Gruppenbriefkästen ? Vielleicht liegt ja hier der organisatorische Ansatz.

Sag' mal an.

Bernhard

Offline wuschel

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
Re:dynamische Berechtigung im Workflow
« Antwort #2 am: 30.10.03 - 09:08:52 »
Hallo,
hier also eine etwas umfänglichere Beschreibung:
Über die  Datenbank wird ein Teil unseres Formularwesens abgefackelt. Neben dem Formularabsender (logisch) gibt es ggf. Zwischeninstanzen (Prüfung, Genehmigung, Info, Teilbearbeitung...) und immer eine Zielinstanz, bei die Endbearbeitung/Erledigung durchgeführt wird. Bei den meisten Prozessen sind Zwischen- und Zielinstanz von vornherein definiert und damit fest, bei einigen wird teil- oder volldynamisch während der Bearbeitung der weitere Workflow-Weg festgelegt. Teildynamisch, wenn aufgrund bestimmter Feldinhalte zugeordnete, feste Folgebearbeitungen zugeordnet werden (die wären dann auch vorher bekannt) oder volldynamisch, wenn die Folgeinstanz (Person oder Personenkreis) durch die Eingabe in ein Namensfeld erfolgt.
Wie gesagt, die einzelnen Formulare (=Dokumente) bleiben also in der Datenbank, nur ändert sich je nach Bearbeitungsstufe der Status (entsprechendes Feld). Außerdem müssen je nach Bearbeitungsstufe unterschiedliche Personen Lese- bzw. Schreibzugriff auf das Dokument bekommen. Geregelt wird das über Aktionen (Senden, Genehmigen, Erledigen...), die einerseits den Status verändern und andererseits eine Benachrichtigungsmail mit Doclink an die jeweils nächste Instanz schicken. Diese Instanz muss also zu diesem Zeitpunkt auch den Zugriff auf das Dokument bekommen (Aufnahme in Leser-/Autorenfeld).
Selten ist es aber so, dass eine solche Bearbeitungsinstanz nur eine einzelne Person ist (das wäre dann insgesamt völlig unproblematisch da diese Person sowohl ins sento- als auch ins Leser-/Autorenfeld eingestellt werden könnte), denn häufig stellen diese Instanzen einen Personenkreis dar. Hier könnte man also evtl. mit Verteilerlisten (Gruppen im Adressbuch) arbeiten. Das wäre zwar für den Mailversand und auch die Berechtigungsvergabe unproblematisch, da die Gruppe als sendto-Adresse eingestellt werden kann und ich die Gruppe über das Namensadressbuch auflösen kann und die Member ins Leser-/Autorenfeld einstellen kann. Von der Bearbeitung innerhalb der Gruppe hat dies aber den Nachteil, dass alle Mitglieder der Gruppe die Benachrichtigungsmail bekommen und damit alle aufgerufen wären, diesen Vorgang zu bearbeiten (Bearbeitungsaufwand, Traffic...). Noch schlimmer ist, dass es für die anderen Mitglieder nicht transparent zu machen ist, wenn ein Mitglied diesen Vorgang bearbeitet hat, es sei denn, es würde innerhalb der Gruppe einer erneute Mail geschickt werden ...
Wir haben uns also entschieden, Mail-IN-Datenbanken als Gruppenbriefkästen einzurichten, auf die eine bestimmte Gruppe von Personen Zugriff hat. In diesen Gruppenbriefkästen landen also die Benachrichtigungsmails. Organisatorisch ist geregelt, dass, nachdem ein Mitglied der Gruppe die Mail gelesen und den Vorgang bearbeitet hat, er diese Mail entweder in einem Ordner ablegt oder löscht. Damit ist einigermaßen gewährleistet, dass möglichst keine Doppeltaufrufe der Mail stattfinden. Das Senden der Mail stellt also kein Problem dar, allerdings kommt jetzt hier das Problem der dynamischen Berechtigungszuordnung zum Tragen. Denn ich müsste jetzt ermitteln, welche Personen oder Gruppen Zugriff auf die Mail-IN-Datenbank haben (Gruppen evtl. noch auflösen) und den so ermittelten Personenkreis zum Auslösezeitpunkt der Aktion ermitteln. Dies steht zwar schön alles in der ACL, ist jedoch tabu, da ich hier nicht zugreifen darf.

Und so steh ich armer Wicht nun hier....

Nein, also einen Lösungsansatz habe ich, weiss aber nicht so recht, ob der so geschickt ist, und, ob es nicht andere Lösungen gibt, denn ich denke, dass viele derartige Formularworkflows realisiert haben:
Für jede Mail-IN-Datenbank, die im Rahmen des Formularwesens genutzt wird, müsste dazu (mindestens) eine Berechtigungsgruppe im Namensadressbuch geschaffen werden, die gemäß einer Konvention über gleichartige Namensbestandteile identifizierbar ist (also Mail-IN: Betriebsrat; Gruppe: XYZ_Betriebsrat...). Ich müsste jetzt das sendto-Feld für die nächste Bearbeitungsinstanz gegen das Namenadressbuch ($Users; Feld Type oder Form) prüfen: wenn Person, kein Problem; wenn Group, auflösen, kein Problem; wenn Database, Präfix (XYZ_)vor den sendto-Wert einfügen und mit dem so ermittelten Gruppennamen erneut gegen das Namensadressbuch prüfen: wenn gefunden, auflösen, kein Problem; wenn nicht gefunden, Fehler (nicht für das Formularwesen gültige Mail-IN-DB ausgewählt...).
Würde also gehen, ist auch nicht so richtig aufwändig, aber ich bin gespannt auf Eure Erfahrungen.
Gruß Matthias






Offline wuschel

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
Re:dynamische Berechtigung im Workflow
« Antwort #3 am: 30.10.03 - 09:11:47 »
Zusatz:
ich verwende überwiegend Formelsprache und auch ein bischen Lotus Script.

Offline wuschel

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
Re:dynamische Berechtigung im Workflow
« Antwort #4 am: 03.11.03 - 11:09:23 »
Habe ich Euch jetzt irgendwie textumfangsmäßig erschlagen ?
Oder gibts keine Lösung ?
Oder hat keiner derartige Fragestellungen ?
(nur noch mal ein kleiner Versuch, die Fragestellung zur Diskussion zu stellen bzw. Diskussionspartner mit ähnlichen Fragestellungen zu finden)
Danke und Gruß
Matthias

Glombi

  • Gast
Re:dynamische Berechtigung im Workflow
« Antwort #5 am: 03.11.03 - 11:14:34 »
Schreib doch einfach hardcoremäßig das Autorfeld so:

@If(
 SendTo != "";
   @Unique(SendTo : ("XYZ_"+ SendTo));
 ""
)

Dann steht der Empfänger drin und IMMER noch der Eintrag XYZ...

Das Autorfeld muss dann Mehrfachwerte zulassen.

Wenn es die Gruppe nicht gibt, macht's nichts.

Andreas
« Letzte Änderung: 03.11.03 - 11:16:56 von Glombi »

Offline wuschel

  • Junior Mitglied
  • **
  • Beiträge: 71
  • Geschlecht: Männlich
Re:dynamische Berechtigung im Workflow
« Antwort #6 am: 03.11.03 - 15:10:42 »
@ glombi, danke für die Antwort, aber hilft mir das weiter wenn ich wirklich den Gruppennamen aus dem Sendto- ins Autorenfeld stelle. Haben dann wirklich alle Member der Gruppe Autorenberechtigung. Und noch weiter: wenn der sendto-Eintrag eine Mail-IN-Datenbank darstellt, haben dann, wenn ich den Namen der Mail-IN-Datenbank ins Autorenfeld stelle, alle lt. ACL Mail-IN-DB berechtigungen Personen Autorenberechtigung auf das Dokument? Nach meinen bisherigen Tests klappt das nicht und ich muss alles manuell, also per Prozedur (!) auf Personenebene auflösen. Oder ...?
Gruß Matthias

Glombi

  • Gast
Re:dynamische Berechtigung im Workflow
« Antwort #7 am: 03.11.03 - 15:14:43 »
Für jede Mail-In-Datenbank musst Du eine Gruppe XYZ_<Mail-In-DB> machen, so wie Du es beschrieben hast.

Wenn es keine Mail-In-DB ist, sondern eine Gruppe, funktioniert das Autorfeld immer.

Andreas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz