Autor Thema: Authorenfeld per Skript setzen...  (Gelesen 1418 mal)

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Authorenfeld per Skript setzen...
« am: 19.05.05 - 18:47:38 »
hallo zusammen

Habe ein Form mit einem Authorenfeld, in welches ich Defaultmässig den Wert "[Editor]" (also ne Rolle, die ich vorher in der ACL definiert hatte) setzte....Nun erstelle ich als normalen User XY  mit Authorenrechte und dieser Rolle das Dokument und kann es mit einem beliebigen User YZ mit denselben Rechten editieren...ganz den Wünschen entsprechend...ABER

Nun wird allerdings die DB nicht von Hand, sondern per Import aus einem CVS abgefüllt....dies funktioniert auch prima. Die Dokumente haben natürlich den Wert [Editor] im Authorenfeld....nur leider kann ich diese mit einem normalen User wie XY nicht mehr editieren, obwohl ihnen diese Rolle zugeteilt wurde...
Also setze ich den Wert im Authorenfeld auch noch im Import-Skript....doc.author = "[Editor]"....ohne Änderung...

Wenn ich nun einen @Command([ToolsRefreshSelectedDocs]) laufen lasse, ändert sich zwar am Authorenfeld nichts, trotzdem kann ich die Doks wieder ändern ??

Kann mir jemand erklären warum ?

« Letzte Änderung: 20.05.05 - 12:49:02 von boemitsu »
Gruss

Michael

Offline rar

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 856
  • Geschlecht: Männlich
  • Des passt scho
    • click
Re: Authorenfeld per Skript setzen...
« Antwort #1 am: 19.05.05 - 19:18:24 »
Hi,
wenn du in den Eigenschaften des Dokumentes das Autorenfeld anschaust, muss rechts READ WRITE ACCESS stehen. Nur dann ist das Autorenfeld ein richtiges Autorenfeld.
In der Notesitem-Klasse kannst du einem Item mit der Propperty item.IsAuthors = true (glaub ich) die Autoreneigenschaft zuweisen.

HTH
-daniel
†090620141300

Offline stefke

  • Frischling
  • *
  • Beiträge: 7
  • Geschlecht: Männlich
  • Schon wieder zuviel
Re: Authorenfeld per Skript setzen...
« Antwort #2 am: 19.05.05 - 19:19:25 »
Hallo.

Ich glaube im Script kann man das mit

success = doc.ComputeWithForm( False, False )

oder

Dim item As NotesItem
Set item =  doc.GetFirstItem( "Feldname" )
item.IsAuthors = True

machen.

Gruß
Stefan

Ich war zu langsam
Domino 6.52 auf Linux SLES9
Notes 5.0.8 - 6.52 auf Win NT 4.0, 2000 u. XP

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Authorenfeld per Skript setzen...
« Antwort #3 am: 19.05.05 - 20:52:22 »
Hi,

ich setze meine Leser- und Autorenfelder beim Anöegen eines Dokumentes so:

...
Set item = New NotesItem( newdoc, "xRead", "[Public]", READERS )
item.IsReaders= True
Set item = New NotesItem( newdoc, "xWrite", "[Name der Rolle]", AUTHORS )
item.IsAuthors= True
...

Anstatt der Rollen kannst du natürlich auch Usernamen oder Gruppen eintragen.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline boemitsu

  • Aktives Mitglied
  • ***
  • Beiträge: 190
  • What goes around comes around
Re: Authorenfeld per Skript setzen...
« Antwort #4 am: 20.05.05 - 10:28:49 »
hallo zusammen

Besten Dank für Eure Antworten !

Mein Authorenfeld ist bereits im Form drauf, in den Dokumenten ist bei den Feldeigenschaften "READ WRITE ACCESS" gesetzt....deswegen will ich nur den Wert "[Editor]" setzen...

Durch Eure Anregungen bin ich auf folgendes gekommen:

doc.author = "[Editor]"
Set item =doc.GetFirstItem("author")
item.IsAuthors=True

...und nun klappts !

Falls jemand noch Verbesserungsvorschläge hat, wäre ich ihm dankbar.

gruss und schönen Tag noch
Michael
Gruss

Michael

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz