Domino 9 und frühere Versionen > ND8: Entwicklung

SUMMARY READ/WRITE-ACCESS NAMES PROTECTED

<< < (3/3)

ascabg:
Ok.
Nachdem jetzt geklaert ist, was es mit diesem Item auf sich hat, stellt sich dennoch die Frage,
ob es eine Fehlermeldung/Meldung gibt, bevor der Agent beim Zugriff auf dieses Item
seinen Dienst einstellt.

Egal ob es nun PROTECTED ist oder nicht, wen ich Leserechte auf die Db und das Dokument habe, muesste ich doch auch an die Werte problemlos herankommen.

Schon mal den Debugger bemueht?


Andreas

Axel:

--- Zitat von: Peter Klett am 09.08.12 - 08:42:35 ---Ein reines Autorenfeld wird mit SUMMARY READ/WRITE-ACCESS NAMES dargestellt, PROTECTED habe ich noch nie gesehen und auch keine Ahnung, wo das herkommt, bzw. wie man das einstellt.

Primär würde ich versuchen, herauszubekommen, wie das PROTECTED da reinkommt, ....

--- Ende Zitat ---

Das PROTECTED kommt wahrscheinlich aus den Feldeigenschaften. Hier ist mit Sicherheit die entsprechende Sicherheits-Option "Must have at least Editor access to use" gesetzt.

Das verhindert, dass jemand mit Autorenrechten das entsprechende Feld ändern kann.

Axel

Glombi:
Interessant wäre mal den Code zu sehen, wie auf das Item "Owner" zugegriffen wird.

Owner ist ja bspw. auch eine Property beim NotesAgent. Vielleicht kommt sich das was ins Gehege.

DAU-in:
@Glombi:  Es handelt sich nicht um das Feld 'Owner'.

Es ist ein wohl nachträglich eingefügtes Personenfeld, das bei einigen Dokumenten auf protected steht.

@Bernhard:  Genau bei diesen Dokumenten hat der Agent abgebrochen. (7 von ca. 4000 Dokumenten)

@ascab: ja, siehe Post 3. keine Fehlermeldung, nur kein Array sichtbar

@Peter: ich habe den Agenten von Hand gestartet, er läuft mit meinen Rechten.


@all:
Da es sich nur um einzelne Dokumente handelt und die DB nicht in unserem Einfluß liegt, umgehe ich diese 'special documents' mit dem Tip von Peter.
Nur hasItem hat nicht gewirkt, das Item hat er ja gesehen, nur den Inhalt nicht.



--- Code: ---
ForAll x In listFields
             
                If docA.hasItem(ListTag(x)) Then
                        If IsArray(docA.getItemValue(ListTag(x))) then             '<--- Peters Tip
                                  If docB.HasItem(X) Then
                                            If CStr(docB.Getitemvalue(x)(0)) <> CStr(docA.getItemValue(ListTag(x))(0)) Then
                                                        Call docB.replaceItemValue( x, docA.getItemValue(ListTag(x)))
                                                        flagSave = true
                                             End If
                                  Else
                                                 Call docB.replaceItemValue( x,docA.getItemValue(ListTag(x)))
                                                flagSave = True                                       
                                End If
                        End If
                End If
End ForAll

--- Ende Code ---
             

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln