Probs bei versteckten Feldern

  • Siehe meine Anmerkung zur NotesItem Klasse und der Property IsReaders


    Ohne diese Eigenschaft ist das danach nur ein normales Textfeld und damit nicht mehr ausschlaggebend für die Sichtbarkeit.


    Ein anderes Problem könnte die Form des Benutzernamens sein. Dieser muss immer der kanonischen Form entsprechen

  • Mit dem geposteten Code würde ich eher darauf tippen, dass dann überhaupt kein Readers item mehr da ist - die direkte Zuweisung macht das ja kaputt. Dann sollte es aber jeder sehen können - genau, wie Mathias schon schrieb. Daher könnte der Fehler noch ganz woanders liegen.


    Wenn schon so herumgestochert wird (unter permanenter Strafung der DesignerHelp mit Missachtung) und wir nicht sehen können, *was* Du da treibst: Gebe Dir in der ACL die Rolle "[ReadAll]" (oder welche auch immer) und füge in Deine Maske ein Leserfeld "berechnet beim Anlegen" mit diesem Inhalt ein. Damit behältst Du immer Zugriff auf die Dokumente - und dann kannst Du nachsehen, was nach Deiner Aktion wirklich in dem Item steht.


    Bernhard

  • So, habe jetzt noch ein Leserfeld eingefügt und mich darein, um nachzuschauen was ad rein kommt und was dort so abläuft.


    Also nach dem ausführen des Codes, sind die kanonischen Namen in diesem leserfeld drin. Klicke ich auf das Pfeil um welche auszuwählen, dann sehe ich dass die zwei richtigen User drin sind.


    Eigentlich so wie es auch sein muß. Entferne ich jedoch das zweite Leserfeld (zum testen), dann kann ich auf das Document nicht zugreifen.


    Also liegt das daran dass man auf das Feld klicken muß damit er den Inhalt auch übernimmt.


    Jetzt die Fragem:
    Dieses Leserfeld ist bei mir Bearbeitbar, hat das irgendwelche auswirkungen?


    Wenn das jetzt an einem Aktualisierungsproblem des Feldes (des Documentes) liegt, gibt es da eine "refresh" oder aktualiseirungs funktion für das Document?


    Danke

  • Ein Leserfeld funktioniert nur wenn die folgenden zwei Bedingungen erfüllt sind:


    - Kanonische Namen bzw Kanonische Namensliste ohne anghänbgte Notes-Domäne
    ==> Prüf hier mal ob die Werte vor dem Öffnen des Dokumentes auch tatsächlich als Liste drinstehen und nicht als ein Wert, der mit irgendeinem Trennzeichen getrennt ist
    - Feld muss das Field Flag SUMMARY READ-ACCESS NAMES haben
    ==> Ebenfalls vor dem Öffnen des Dokumentes zu prüfen


    Nur wenn beides erfüllt ist greift ein Leserfeld

  • Die Kanonischen Namen stehen in dem Leserfeld wie foglt:
    Max Musterman; Mina Musterfrau


    Laut deiner Ausssage wäre das dann falsch.
    Aber ich füge die doch richtig ein, mit dem Array.
    //Hier weise ich das String Array dem Leserfeld zu
    maindoc.leser = newReaders


    Wie soll ich dennn dann das Feld füllen?


    O man....

  • Natürlich ist das falsch, denn da stehen erstens nicht die kanonischen Namen sondern nur der allgemeine Name drin und zweitens eben nicht als Textliste sondern als einzelner String


    Und wie sollst du sie füllen ?


    Anscheinend ist dann eben newReaders keine Textliste sondern nur ein String.


    Ohne daß du uns endlich mal vollständige Infos gibst, können wir dir nicht helfen

  • Ja ich hatte auch davor die Kanon.Namen "CN=Max Mustermann/O=Firma".


    Ja aber eine Textliste ist doch ein String Array.


    In der Hilfe finde ich unter Textliste nur Beispiele wo man eine Stringzeile mit Trennzeichen sieht.
    Also: "rot, gelb, grün..."


    Oder gibt es einen speziellen Datentyp?

  • hier die Eigenschaften:


    Typ: Leser
    Bearbeitbar
    Auswahl: Adressdialog für Auswahl verwenden.


    Ja aber es funktioniert ja wenn ich nur einen User eingebe, sobald ich zwei eingebe komm ich an das Dokuement nicht mehr ran.


    hm....


    wenn ich das Feld dann abfrage was drin steht.
    z.B. so
    doc.leserfeld(0)
    doc.leserfeld(1)


    Dann kommen auch die Richtigen User raus.


    ich verstehe nicht an was es liegen könte.


    Hat einer schon mal Leserfelder mit mehreren Usern dynamisch gefüllt?

  • Mache ich regelmäßig, so daß es eigentlich nur daran liegen kann, daß es eben nicht als Multivaluefeld definiert ist und somit bei einem Compute zu einem String wird.


    Ich vermute mal du gibst die Feldelemente direkt nach dem zuweisen, aber vor dem Speichern aus

  • Also ... es funktioniert, aber nur teilweise.


    Habe das jetzt so gemacht.Über das Item.AppendToTextItem


    Set leseritem = doc.GetFirstItem("LESER")
    While zaehler >0 leseritem.AppendToTextList(newReaders(tmp_z)
    zaehler = zaehler -1
    tmp_z = tmp_z +1
    Wend



    Also es funktioniert, aber nur dann wenn ich das Dokument wo ich diese mehrere User setze nicht Offen habe.


    Das ist echt verrückt, ich habe mehrmals getestet.


    Also habe ein Parentdocument und zwei Antwortdokumente.
    Ich kann über eine Ansicht auf die Antw.docs zugreifen oder über das parentdokument über dessen eingebetete Ansicht.


    Habe ich das Antwortdokument nicht offen dann funktioniert alles, habe ich die Maske offen dann geht das Dokument irgendwo verloren.


    Ich speichere auch das Parentdokument nicht ab wenn ich es schließe.


    Komisch.
    Weiß einer warum dies so ist?

  • So, ich habe jetzt es soweit gebracht dass es fast funktioniert.


    Das Problem aber ist folgendes.


    Es funktioniert nur dann nicht wenn ich zuvor das Parentdokument geöffnet habe. Obwohl ich das Dokument danach schließe gehts trotzdem nicht.


    Jetzt hier die Frage, laufen da irgendwelche Hintergrundprozesse oder sind da irgendwelche Zeiger die auf das Dokument verweisen, wenn ich ein Dokument geöffnet habe.


    Wenn ja, wie kann ich dann diese löschen oder auf default setzen.


    Danke