Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: rar am 28.09.04 - 08:28:03
-
Morgen,
ich habe zur Zeit ein blödes Problem.
Ich bin in Script und möchte die lokale Replik einer Db mit konsistenter Acl (Autorenrecht) replizieren. Es funktioniert aber nicht richtig. Nur wenn man vorher das Cutoffdate und das Replizierprotokoll löscht gehts. Das Cutoffdate hab ich hinbekommen, aber bei
(Set rep = dbLokal.ReplicationInfo)
Call rep.ClearHistory()
kommt die Fehlermeldung
"Sie sind zur Durchführung dieser Operation nicht berechtigt!"
Warum ist das so? Händisch läßt sich das Protokoll nämlich löschen. Das Recht hab ich also.
lg
-daniel
-
Zu dieser "klassischen" Meldung kann ich auch nur die klassische Nachfrage stellen, ob das vielleicht ein serverseitiger Agent ist und der Unterzeichner eben zu wenig Rechte hat.
Ausserdem würde ich per Error-Handling genau die Zeile im Skript ermitteln, wo dieser Fehler auftritt.
Ob übersieht man da Sachen. Hatte letztens mal einen Fall, wo das deshalb kam, weil der Unterzeichner vom Agenten zu wenig Rechte auf eine Log-Datenbank hatte und zwar auf Grund von Gruppeneditierungen seitens der Systemadministration. Sowas passiert einfach, ich hätte aber dies ohne vernünftiges Errorhandling vermutlich niemals herausgefunden (oder wesentlich später).
Gruß Axel
-
Es ist kein Agent. Der Code ist in einem Hotspot in einer Seite und
die Fehlermeldung kommt an der Stelle
Call rep.ClearHistory()
Genauer kann ich da nicht rein schauen.. :-\ Ich hab auch keine Ahnung was Notes da im Hintergrund macht. (Wegen Rechten auf anderen DBs und so). Wo muß ich da nachschauen?
-
Falls es von Interesse ist...
Wenn man Manager ist funktioniert es. >Manager nicht. Obwohl es sollte. --> Feature
Mit dem Code geht es aber trotzdem.
Declare Function NSFDbOpen Lib APIModule Alias "NSFDbOpen" ( Byval P As String, H As Long) As Integer
Declare Function NSFDbClose Lib APIModule Alias "NSFDbClose" ( Byval H As Long) As Integer
Declare Function NSFDbClearReplHistory Lib "nnotes.dll" Alias "NSFDbClearReplHistory" (Byval hdb As Long, flags As Integer) As Integer
Sub ClearReplHistory( server As String, filename As String )
Dim hdb As Long
Dim rc As Integer
If Server = "" Then
rc = NSFDbOpen(FileName, hDb)
Else
rc = NSFDbOpen( Server & "!!" & FileName, hDb)
End If
rc = NSFDbClearReplHistory( hDb ,0 )
rc = NSFDbClose(hDb)
End Sub
-
Ich bekomme lokal nach Ausführung des obigen Codes dann aber ein "Eintrag im Index nicht gefunden" auf der Replikatorseite und er repliziert nicht mehr, genauso als ob ich die entsprechende LS-Funktion bemühe.
(Client 5.0.12)
Gibts eine Lösung?
-
Falls es von Interesse ist...
>Manager nicht.
Grösser als Manager? Wie geht denn das ? ::)
-
Aufsichtsrat ;)
Kandesbunzler :D :D
-
Da macht man vor fast einem halben Jahr ein falsches Zeichen, und grad heute wird es einem auf die Nase gerieben... :)
Wegen der Lösung des Problems kann ich dir leider nicht helfen.
Ich hab die APISachen irgendwo gefunden. Bei mir hats damals funktioniert... Sorry...
-
Na ja, es war einfach zu verlockend, als dass man es unerwähnt hätte lassen können ......... dafür hast Du ja heute in einem anderen Thread ein schönes Geburtstagsgeschenk bekommen .... ;D
-
Ich bekomme lokal nach Ausführung des obigen Codes dann aber ein "Eintrag im Index nicht gefunden" auf der Replikatorseite und er repliziert nicht mehr, genauso als ob ich die entsprechende LS-Funktion bemühe.
Sorry das ich den alten Fred nochmals hole. Habe genau das selber probelm. (Client 5.0.13)
IBM behauptet, sie haben das Problem in "SPR# RADS49BJNB" ab 5.0.4 gefixt. Ich merk aber nichts davon :o
Im ND6 funktioniert genau die selbe Funktion einwandfrei...
Hat jemand nähere Informationen?? Wäre sehr froh!
Grüsse
Untitled
Crossposting auf http://www-10.lotus.com/ldd/46dom.nsf/DateAllThreadedweb/c7ba898707edd5688525710a002c4cad?OpenDocument
-
Stelle gerade fest, wenn ich ReplicationInfo.ClearHistory benutze, entsteht genau das selbe Problem :-\
EDIT: Problem hier gelöst: http://atnotes.de/index.php?topic=28610.msg180893#msg180893
Grüsse
Untitled