Autor Thema: Autorenfeld im Parentdokument setzen  (Gelesen 2863 mal)

Offline Alexis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 534
  • Geschlecht: Männlich
  • LotusNotes macht süchtig!
Autorenfeld im Parentdokument setzen
« am: 22.09.04 - 13:58:37 »
Hallo Forum,

kann ich mit folgender Zeile aus einem Antwortdokument die Autorenliste verändern?
 
parentDoc.Authors=userName.Canonical

Zweck ist es, in dem Script im Mutterdokument weitere Einträge vorzunehmen, die natürlich Autorenrechte erfordern.

Alexis
« Letzte Änderung: 22.09.04 - 15:26:37 von Alexis »
wenn ich kein Problem hätte, wär' ich nicht hier ---
wenn ich im Forum eine Lösung gefunden hätte, wär' ich nicht hier ---
wenn ich nicht wüsste, dass mir hier fast immer geholfen wird, wär' ich AUCH nicht hier ---

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Autorenfeld vom Parentdokument aus setzen
« Antwort #1 am: 22.09.04 - 15:27:13 »
Wenn das funktionieren sollte, dann hättest Du einen schweren Sciherheitsbug gefunden, denn so würde man ja den Schreibschutz des Parentdoc umgehen können.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Autorenfeld im Parentdokument setzen
« Antwort #2 am: 22.09.04 - 15:34:16 »
Das war auch mein erster Gedanke, Jens - aber vielleicht steht in username.Canonical ja der Name eines zukünftigen Bearbeiters, der jetzt die Berechtigung bekommen soll, Response- und ParentDoc zu bearbeiten ?

Bernhard

Offline Alexis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 534
  • Geschlecht: Männlich
  • LotusNotes macht süchtig!
Re:Autorenfeld im Parentdokument setzen
« Antwort #3 am: 22.09.04 - 17:04:07 »
Hallo Berhard,

exakt so ist es!

Alexis
wenn ich kein Problem hätte, wär' ich nicht hier ---
wenn ich im Forum eine Lösung gefunden hätte, wär' ich nicht hier ---
wenn ich nicht wüsste, dass mir hier fast immer geholfen wird, wär' ich AUCH nicht hier ---

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Autorenfeld im Parentdokument setzen
« Antwort #4 am: 22.09.04 - 17:12:09 »
kann ich mit folgender Zeile aus einem Antwortdokument die Autorenliste verändern?
parentDoc.Authors=userName.Canonical

Also, so geht es auf jeden Fall, wenn Du parentDoc vorher instantiiert hast:
- Wenn IsResponse, dann
- Set parentDoc = NotesDatabase.GetDocumentByUNID (ParentDocumentUNID)

HTH,
Bernhard


Offline Alexis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 534
  • Geschlecht: Männlich
  • LotusNotes macht süchtig!
Re:Autorenfeld im Parentdokument setzen
« Antwort #5 am: 22.09.04 - 17:25:10 »
Hallo Bernhard,

der Code sieht (naturgegeben) bei mir anders aus:

userAbbr=userName.Abbreviated
key=Source.FieldGetText("ParentID")
Set view=db.GetView("ParentDocID")
Set parentDoc=view.GetDocumentbyKey(Key)
parentDoc.Autoren=source.FieldGetText("AssignedTo")
Call parentDoc.Save(True,False)

Im Feld Autoren steht auch wirklich der Name, jedoch nicht in kanonischer(?) Form. In der ACL ist in der Autorengruppe der User ebenfalls zu finden. Dennoch kommt die Fehlermeldung, nicht autorisiert zu sein, das Parentdokument zu ändern.

Wo ist der Haken?

Alexis
wenn ich kein Problem hätte, wär' ich nicht hier ---
wenn ich im Forum eine Lösung gefunden hätte, wär' ich nicht hier ---
wenn ich nicht wüsste, dass mir hier fast immer geholfen wird, wär' ich AUCH nicht hier ---

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Autorenfeld im Parentdokument setzen
« Antwort #6 am: 22.09.04 - 17:37:31 »
Da ist die Frage, was steht denn bei Dir im Feld "AssignedTo" ? Offensichtlich kein kanonischer Name - dann klappt das auch nicht. Du müsstest doch noch ein anderes Feld haben, in dem der kanonische Name (erforderlich für ein Autorenfeld) zu finden ist ?

Weiterhin:
userAbbr=userName.Abbreviated
Wo wird das gebraucht ?

Set view=db.GetView("ParentDocID")
Wo prüfst Du, ob diese View instantiiert werden kann ?

Set parentDoc=view.GetDocumentbyKey(Key)
Wo prüfst Du, ob dieses Dokumenent instantiiert werden kann ? Was ist, wenn jemand das ParnetDoc gelöscht hat ? -> Run-time error !

HTH,
Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Autorenfeld im Parentdokument setzen
« Antwort #7 am: 22.09.04 - 19:48:29 »
Ok, so macht es natürlich Sinn, wenn das nicht der eigene Name ist, sorry für die Fehlinterpretation. Ansonsten gibt es zu Bernhards Ausführungen nichts hinzuzufügen
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Alexis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 534
  • Geschlecht: Männlich
  • LotusNotes macht süchtig!
Re:Autorenfeld im Parentdokument setzen
« Antwort #8 am: 23.09.04 - 10:23:31 »
Hallo,

den berechtigten Anmerkungen von Bernhard widme ich mich später.

Zunächst stehe ich vor der Fehlermeldung:

Notes error: You cannot update or delete the document(s) since you are not listed as an allowable Author for this document.

Im betreffenden Dokument existiert das Feld - Typ: Names, editierbar, Allow multible values -  "Autoren" korrekt mit dem Usernamen in kanonischem Format, gleicher User ist in der ACL in einer Autorengruppe ebenfalls aufgeführt.

Wo kann der Grund für die fehlende Berechtigung liegen?

Alexis
wenn ich kein Problem hätte, wär' ich nicht hier ---
wenn ich im Forum eine Lösung gefunden hätte, wär' ich nicht hier ---
wenn ich nicht wüsste, dass mir hier fast immer geholfen wird, wär' ich AUCH nicht hier ---

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Autorenfeld im Parentdokument setzen
« Antwort #9 am: 23.09.04 - 10:27:29 »
Wenn der Typ Names ist, dann spielt das Feld für den Autorenzugriff keine Rolle.

Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Autorenfeld im Parentdokument setzen
« Antwort #10 am: 23.09.04 - 10:33:19 »
Einerseits gilt das, was Bernhard schon sagt, das Feld muss vom Typ "Author" sein, andererseits, stehen im Dokument selber oder in der Maske noch irgendwelche Zugriffsbeschränkungen? Tab mit dem Schlüssel unter den Dok-Eigenschaften
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Alexis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 534
  • Geschlecht: Männlich
  • LotusNotes macht süchtig!
Re:Autorenfeld im Parentdokument setzen
« Antwort #11 am: 23.09.04 - 11:43:41 »
Danke für den Hinweis auf meine ESELEI.

Damit klappt's, den Hinweisen von Bernhard werde ich noch nachgehen.

Merci

Alexis
« Letzte Änderung: 24.09.04 - 11:31:18 von Alexis »
wenn ich kein Problem hätte, wär' ich nicht hier ---
wenn ich im Forum eine Lösung gefunden hätte, wär' ich nicht hier ---
wenn ich nicht wüsste, dass mir hier fast immer geholfen wird, wär' ich AUCH nicht hier ---

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz