Hallo Forumsgemeinde,
folgendes Problem:
Ich habe eine Datenbank erstellt, in der Zeichnungsdaten und Dokumente zwischen verschiedenen Standorten ausgetauscht werden soll. In den Dokumenten soll in einem Leserfeld vom "Ersteller" des Dokumentes definiert werden, wer dieses Dokument lesen darf. Hierfür habe ich ein Leserfeld mit folgenden Eigenschaften erstellt:
csaccuessuser: Vorgabewert @Username;Eingabeumsetzung: @UpperCase(@Name([Abbreviate];csaccessuser)); Eigenschaften Typ:Leser, bearbeitbar, Mehrfachwerte zulassen. Auswahl aus dem Adressbuch. Um den Admin nicht auszusperren, gibt es ein zweites Leserfeld:
ReadAll Typ: Leser; Berechnet:@If(@Elements(csaccessuser) != 0; "[Admin]"; "");Mehrfachwerte zulassen Die Rolle [Admin] ist in der Datenbank vorhanden.
Dargestellt werden soll das in der Ansicht Products:
1. Spalte Customer
2. Spalte Product
3. Spalte Subject
Die ersten beiden Spalten sind kategorisiert, Ansichtsauswahlkriterium:
SELECT Form = "fmprod" & @UpperCase(@Name([Abbreviate];@UserName)) = (@Name([Abbreviate];csaccessuser))
Eigentlich sollte das ganze mit einem Autorenfeld versehen werden, um auch noch per Eingabe Schreibrechte auf die einzelnen Dokumente zu verteilen.
Um meinen Fehler einzugrenzen, habe ich meinen "Author" in ein normales Namenfeld umgewandelt, um einen Nachweis zu haben, wer das Dokument erstellt hat.
Jetzt passiert folgendes:
Mein Testuser (das ganze läuft in einer VM) hat Autorrechte in der ACL.
Ich erstelle ein Dokument mit diesem User, Fülle das Feld csaccessuser über die Adressauswahl, speicher ab, aber ich sehe in meiner Ansicht aber nur die Spalten Customer und Product, das eigentliche Dokument sehe ich nicht.
Gebe ich dem User jetzt aber die Rolle "Admin", dann sehe ich die Dokumente in denen er als Leser eingetragen ist.
Lt allem was ich jetzt die letzten Tage gelesen habe, werden doch die Leserfelder zusammen gerechnet:
http://atnotes.de/index.php/topic,51215.0.htmlHab ich noch einen Denkfehler drin oder passt meine Ansichtsauswahl nicht?
Sollte die DB eigentlich schon lange fertig haben, aber das kostet mich hier grad den letzten Nerv
Jemand ne Idee? Hoffe mein Problem ist klar verständlich.