Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: watschn am 14.05.08 - 10:24:12

Titel: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 10:24:12
Hallo, ich weiß dieses Thema wurde hier schon zigfach behandelt. Dennoch habe ich Probleme.

Ich benötige eine User-Bezogene Ansicht. Der Benutzer soll in der Ansicht nur die Dokumente sehen, bei denen sein Username in einem Feld eingetragen ist. Meine Ansichtsauswahl ist SELECT @IsMember(@UserName;vErledigung)

Wie hier im Forum gelesen, habe ich das ganze als eingebettet Ansicht in eine Maske gepackt. Jetzt sollten doch, je nachdem welcher User gerade angemeldet ist, die passenden Dokumente angezeigt werden? Bei mir funktioniert das leider nicht, ich sehe immer die gleichen Dokumente. Die Ansicht wird scheinbar nur beim ersten Öffnen aufgebaut und ändert sich dann nicht mehr. Genau dies wollte ich doch durch die Eingebettete Ansicht veranlassen.

Hab ich nen Denkfehler oder was kann das Problem sein?

Ich muss noch anmerken, ich habe eine Testdatenbank erstellt, dort funktioniert es wie erwartet. Sprich - jeder angemeldete User sieht nur seine Dokumente. Beide DBs - Testdatenbank und Original - laufen auf dem Server.

Langsam bin ich echt am verzweifeln mit den Eigenheiten von Notes ???

Michael
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: koehlerbv am 14.05.08 - 10:35:25
Du hast da tatsächlich einen Denkfehler: Liegt eine DB auf dem Server, wird auch dort der Ansichtsindex gebildet. Damit fehlt - wie auch in der DesignerHelp steht - die Möglichkeit, eine Ansichtsauswahl basierend auf userbezogenen Daten wie @UserNae oder @UserRoles zu verwenden.

Da Ansicht gleich Ansicht ist, kann das also auch nicht in einer eingebetteten Ansicht funktionieren - dies ist ja nur eine andere Darstellungsform.

Was aber funktioniert - und da findest Du nun auch Deinen Bezug zur eingebetteten Ansicht: Eine single category embedded view ist das, was Du möchtest: Deine Ansicht ist kategorisiert nach den Namen in vErledigung, der aktuelle Username bestimmt dann die darzustellende einzelne Kategorie.

HTH,
Bernhard
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: Thomas Schulte am 14.05.08 - 10:38:04
Um Gottes willen. Das ist komplett durch den Wind.

Bau deine Ansicht so auf das in der ersten Spalte als Kategorie der Username drin steht.

Dein Select in der Ansicht hat mit der Auswahl in der Embedded View nichts zu tun.

Das was du als Select eingetragen hast musst du dann in die Auswahl beim Embedded View eintragen.
Und dann funktioniert das auch sauber.
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 12:55:36
Das hab ich dann wirklich etwas falsch verstanden. Wusste auch nicht, dass ich in einer Embedded View ebefalls eine Auswahl eintragen kann.

Dann wird das ganze aber doch zum Problem. Der Username kann in mehr als nur einem Feld stehen. Der Code war nur als Beispiel. So ist es richtig:
SELECT @IsMember(@UserName;vKenntnis) | @IsMember(@UserName;vLeser_alle) | @IsMember(@UserName;vBerechtigt)

Muss ich dann nach allen diesen Feldern kategorisieren, geht das überhaupt?

Wenn ich das SELECT @IsMember(@UserName;vErledigung) (oder auch die vollständige Auswahl-Formel) in die Embedded View eintrage, so zeigt es mir nur "Ansicht: 0" an. Das ist ja dann auch falsch!
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: Werner Götz am 14.05.08 - 13:03:28
In diesem Fall solltest Du also die erste Spalte in der Ansicht nach
@Unique(vKenntnis : vLeser_alle : vBerechtigt)
kategorisieren und dann bei der eingebetteten Ansicht @Username als einschränkende Kategorie angeben.

Eventuell noch darauf achten, dass in den Feldern auch die richtige Schreibweise steht (CN= ...) oder in der Spaltenformel noch eine entsprechende Konvertierung mittels @Name([Canonicalize]; ...) durchführen.
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: koehlerbv am 14.05.08 - 13:04:48
Du hast das Prinzip noch nicht verstanden.
Die Ansicht, die Du einbetten willst, muss kategorisiert sein nach
vKenntnis : vLeser_alle : vBerechtigt

Dein Auswahlkriterium für die embedded view ist dann @UserName.

Bernhard
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 13:41:49
Danke, langsam fällt der Groschen.

Allerdings zeigt mir die Embedded View nun immer noch nicht die Dokumente an. Jetzt erhalte ich "Ansicht: CN=Hans Muster/O=BV_BY". Steht also nur der Name des angemeldeten User drin.

Ich stell mich vermutlich recht blöd an - sorry
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: koehlerbv am 14.05.08 - 13:49:31
Was steht in der zweiten Spalte der Ansicht?

Bernhard
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: Thomas Schulte am 14.05.08 - 13:51:02
Du gibst deine Selektionsformel im falschen Bereich an.

Das muss in "einzelne Kategorie anzeigen" (show single category) rein. Nicht in die Ansichtsauswahl!!!
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 14:11:06
Das mit "Show Single Category" hab ich  geändert. Mit dem Ergebnis, dass jetzt nur noch "Ansicht" angezeigt wird.

Die zweite Spalte "Mitgliedsnummer" bezieht sich auf das Dokument und die weiteren Felder beziehen sich dann auf die Antwortdokumente. Das ganze wird hierarchisch angezeigt.
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: Thomas Schulte am 14.05.08 - 14:26:24
OK also noch mal zum Mitschreiben ....
Was steht bei dir in der Maske in der eingebetteten Ansicht unter ....
1. eingebettete Auswahl ...
2. einzelne Kategorie anzeigen
Was hast du in der Ansicht die du ziehen willst in der ersten Spalte als
1. Spaltenwert eingetragen
2. als Sortierung der Spalte eingetragen

Und bitte entweder exakt das hier reinschreiben was du da stehen hast, oder Screenshots davon machen.
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: klaussal am 14.05.08 - 14:32:14
... oder sich diese DB mal als Beispiel ansehen (Dank an ata !).
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 16:03:05
Jetzt scheint´s zu passen. Vielen herzlichen Dank für die große Hilfe  :knuddel:

Viel Zeit verbraucht, aber dafür auch was gelernt.

Gruß Michael
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: Thomas Schulte am 14.05.08 - 16:28:29
Wenn du jetzt noch schilderst woran das bei dir gelegen hat, dann können andere aus deinem Fehler, so dumm er vielleicht gewesen sein sollte, lernen.
Titel: Re: Eingebettete Anicht mit @UserName aktualisiert sich nicht
Beitrag von: watschn am 14.05.08 - 16:49:30
Das ist wohl so ein typischer Anfängerfehler. Man hat halt vieles schonmal irgendwo gehört, kann´s aber ned konkret umsetzen.

Mir hat zum einen der Hinweis mit den kategorisierten Usernamen in der ersten Spalte meiner Ansicht geholfen. Das hatte ich noch nicht drin.

Dann in meiner Embedded View bei "Einzelne Kategorie anzeigen" @username reinsetzen UND bei "Eingebettete Auswahl" die zuvor angelegte Ansicht auswählen. Ich hatte dort ebenfalls eine Formel drinstehen. Habe das anhand der Beispiel DB dann gemerkt.

Also nochmal danke an alle und schönen Tag noch!