Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Kadlec am 09.03.07 - 14:04:53
-
Tchuldigung erstmal für den sehr aussagekräftigen Betreff.
Ich brauche wieder mal nen Anstoss.
Ein User wählt anhand eines/mehrerer Werte Dokumente aus diese sollen dann in einer Ansicht/Ordner dargestellt werden.
Die gleichen Doks kann auch ein zweiter/dritter User auswählen es können aber auch andere sein.
Auf alle Fälle soll jeder User nur seine Auswahl in der entsprechenden Ansicht/Ordner sehen.
Gruss
Boris
-
Hierfür gibt es die Ordner "Gemeinsam, privat bei Erstbenutzung". Für die Forumssuche würde ich den Begriff SPOFU (die engl. Abkürzung) verwenden.
Bernhard
-
Hi Bernhard,
erstmal Danke.
Auf die SPOFU's würde ich gerne verzichten.
Ich bekomms jetzt nicht mehr genau zusammen, auf alle Fälle hatte ich damit in einer anderen DB immens Probleme.
Boris
-
Da Du das gewünschte nur über Ordner hinbekommst, wirst Du Dich wohl oder übel mit Deinen damaligen Problemen auseinandersetzen müssen.
Eine Alternative wären nur noch Reports, die ggf. "ansichtsähnlich" die gefundenen Dokumente darstellen.
Ich selbst setze auch SPOFU-Verfahren in einigen Apps ein - ohne Probleme.
Bernhard
-
Auf die SPOFU's würde ich gerne verzichten.
Ich bekomms jetzt nicht mehr genau zusammen, auf alle Fälle hatte ich damit in einer anderen DB immens Probleme.
Wie Bernhard schon geschrieben hat, kommst du bei deinen Anforderungen nicht um die SPOFU-Ordner drumrum.
Ich selbst setze dieses Verfahren auch in zwei größeren Datenbanken mit ca. 250 Usern ohne Probleme ein.
Was waren denn das für Probleme?
Axel
-
Ja wenn ich dass noch genau wüsste??
Habe jetzt mal das ausgegraben.
http://atnotes.de/index.php?topic=17515.0
Wie schon erwähnt wird bei uns die ganze Zugriffskontrolle über eine Datenbank gemacht. Bin mir jetzt nicht ganz sicher aber ich meine zu wissen dass es keine Manager Rechte gibt.
Ja und das ist der Grund es können keine Agenten etc. erstellt werden.
Gruss
Boris
-
Tja, was soll man da sagen: Ihr verbietet, was Ihr braucht. So wird das natürlich nix.
Bernhard
-
Tja so ists halt bei uns. ???
Was währe wenn jeder User eine Private Ansicht erstellt??(Das geht noch)
Boris
-
Was nun? Können die User doch private Ansichten / Ordner erstellen? Dann hast Du doch kein Problem ... Ausser den bekannten Nebeneffekten natürlich.
Bernhard
-
Private Ansichten über das Menü "Erstellen" "Ansicht" geht.
Werde dann eine "Dummy" Ansicht erstellen die meine User als Vorlage nehmen können.
So jetzt gehts in die Kiste habe heute nochmal das Vergnügen zu arbeiten.
Boris
-
Eine Ansicht taugt für Dein Anliegen nichts, wenn Du in #1 alles korrekt beschrieben hast. Was die zuletzt angeschnittenen Probleme angeht, gilt aber "Ansicht verhält sich wie Ordner" (vulgo: Wer private Ansichten erstellen darf, kann immer auch private Ordner erstellen).
Gute Nacht.
Bernhard
-
Hi Bernhard,
in 1# wusste ich noch nicht genau wie ichs angehe.
Nun habe ich noch folgendes:
User A wählt Dokumente.
User B wählt die gleichen (er sucht aber nur zwei des Selektions Kriteriums)
User C wählt die gleichen Dokumente teilt sich aber die Arbeit mit User A
In allen Fällen soll eine Meldung kommen ...."die gleiche Auswahl hat schon User A".
Damit kann sich dann User C etwas anderes suchen.
Ich würde also mit dem "Selektions" Agent ein Feld mit dem @UserNamen setzen und könnte dann allen Usern anzeigen wer diese Selektion schon gemacht hat.
Deshalb die Ansicht.
Mit dem Erstellen ansich hast Du natürlich recht.
Ich habe mir die ganze Sache nochmal durch den Kopf gehen lassen, dass Erstellen der SPOFU' s ging ja eigentlich, halt nur auf dem Desktop.
Das Problem war dann aber das die ganzen Aktionen (Script) in einer Fehlermeldung endeten. Weiss aber leider nicht mehr welche.
Boris
-
Wenn du es mit Ordner probiert hast, die auf dem Desktop erstellt wurden und nicht in der DB, dann wundern mich die Fehlermeldungen im Script nicht. Mit den Destop-Ordnern ist einiges nicht möglich, was in den Ordnern in der DB funktioniert.
Ich kann dir aber im Einzelnen nicht mehr sagen was das konkret für Punkte sind. Es ist schon sehr lange her, dass ich mich damit beschäftigt habe. Seit dem wird bei uns das ERstellen von privaten Ansichten/Ordnern bei jeder DB zugelassen.
Axel
-
Also ich habe nun mal ein paar Versuche gemacht dadurch ist jetzt auch klar was/warum es nicht funktioniert. Es waren die Aktionen die sich immer auf die view bezogen haben. (Set view = db.getview("Test SPOFU")
1. SPOFU in der DB
In der NotesDatabase sind alle views enthalten, entsprechend wird die view richtig gesetzt.
SPOFU' s sind auf dem Test Server erlaubt. Also hatte ich in der Test Db nie Probleme.
2. SPOFU auf Desktop
Auch hier sind in der NotesDatabase alle views enthalten, die view wird aber nicht gesetzt (kann ich mir noch erklären NotesDatabase sieht ja nicht was auf dem Desktop ist??).
3. Eine persönliche Ansicht.
Hier ists wie unter 1. alles OK (warum kennt aber die NotesDatabase die Ansicht hier, ist doch auch nur auf dem Desktop??)
Anyway habe dann nach <Set view = db.getview("Test SPOFU")>
dies hier eingeschoben
If view Is Nothing Then
Dim ws As New NotesUIWorkspace
Dim uiview As NotesUIView
Set uiview = ws.CurrentView
Set view = uiview.view
End If
Die uiview wird auch gesetzt wenn ich dann aber die Zeile im Debugger erweitern will, oder ich mache den nächsten Schritt (Set view = uiview.view) knallts und ich bekomme eine Fehlermeldung (s. angehängte Datei).
Boris
-
Die Fehlermeldung ist allerdings für den Normalsterblichen nicht gerade sehr aussagekräftig.
1. SPOFU in der DB
In der NotesDatabase sind alle views enthalten, entsprechend wird die view richtig gesetzt.
SPOFU' s sind auf dem Test Server erlaubt. Also hatte ich in der Test Db nie Probleme.
Das liegt mit Sicherheit daran, dass der Ordner/die Ansicht auf dem Desktop angelegt wird.
Was spricht den gegen die priv. Ordner/Ansichten in der DB?
Axel
-
Eigentlich spricht nichts dagegen.
Ich muss aber für meine Kollegen eine kleine Hilfe schreiben wie ein Eigener Ordner/Ansicht angelegt werden muss. Und hier gibt es dann die Probleme wie genau dieses Umgesetzt wird. Alleine der Name der Ansicht (z.B. 1. Meine Auswahl). Dabei hat ein Kollege einfach das Leerzeichen nach 1. ignoriert usw.
Boris
-
Warum legst du die Ordner nicht automatisiert an?
Axel
-
Ja warum wohl??
Ganz einfach, auf die Idee bin ich noch gar nicht gekommen.
Werde mir das also mal aus der Sicht anschauen.
Danke für den Hinweis.
Boris
-
Ich mach's mit den folgenden beiden Formelzeilen im Postopen-Event im Database-Script.
@Command([OpenView]; "Name des privaten Ordners");
@Command([FileCloseWindow]);
Damit wird beim Öffnen der DB der Odrner geöffnet und gleich wieder geschlossen. Wenn es den Ordner nicht gibt, wird er angelegt. Der User sieht davon, wenn überhaupt, nur ein kurzes Zucken. In den meisten Fällen sieht man nichts.
Axel
-
Axel,
jetzt versteh ich Dich nicht mehr.
Die User brauchen eine Private Ansicht.
Da sich in der Ansicht auch Aktionen befinden muss die Ansicht bei jedem also gleich heissen, das Layout soll das gleiche sein und die Aktionen sollen verfügbar sein.
Also habe ich eine Dummy Ansicht die alle Vorgaben erfüllt und der User
diese unter "Kopieren von" anwählen kann.
Mit deinem Hinweis auf Automation dachte ich an Script und sowas wie ...CreateView wo ich dann den Namen etc. vorgeben kann.
Irgendwie sprechen wir aneinander vorbei??
Boris
-
Deine Dummy-Ansicht ist vom Typ SPOFU (Gemeinsam, privat bei erster Benutzung). Das sehe ich doch richtig, oder?
In diesem reicht ein simples Öffnen durch den User um eine private Ansicht zu erstellen und das genau macht @Command([OpenView]; ... Die somit erstellte Ansicht entspricht vom Layout genau deiner Dummy-Ansicht.
Axel
-
Nö ist sie nicht.
Dann hätte ich ja keine Probleme.
Bei uns gibt es nur SPOFUS auf dem Desktop.
Boris
-
Womit wir wieder beim Thema der ersten Antworten wären.
Was spricht dagegen SPOFU's in der Datenbank zuzulassen? Ihr macht euch das Leben unnötig schwer.
Schau dir in der Designer-Hilfe mal die Methode CreateView aus der Klasse NotesDatabase an.
Ob sich damit aber private Ansichten erstellen lassen und dass noch ohne Entwicklerrechte in der ACL kann ich dir im Moment nicht sagen, da ich mit dieser Art von Ansichtenerstellung noch nicht gearbeitet habe.
Axel