Autor Thema: openByReplicaID  (Gelesen 4692 mal)

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
openByReplicaID
« am: 06.11.06 - 15:16:00 »
Hallo,

es gibt seit notes 6.x ja die schöne Möglichkeit mit Doclinks/DBLinks zu arbeiten. Wenn ich einen DBLink nun auslese und mit openByReplicaID versuche die DB zu öffen, funzt das, solage die DB irgendwo unter Data steht, wenn die DB aber außerhalb steht, geht das nicht mehr.

Ist das so. Habe ich bei dem DBLink noch eine andere Möglichkeit, oder muss ich wie bisher die DB über den Dateidialog auswählen, damit ich dateiname und pfad habe.

Witzigerweise funktioniert der Link ja trotzdem, also enthält er noch mehr Informationen als mir hier Notes (Dcript) zur Verfügung stellt.

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: openByReplicaID
« Antwort #1 am: 06.11.06 - 17:13:10 »
NotesDatabase.OpenByReplicaID funktioniert prinzipiell nur mit Datenbanken inner- oder unterhalb vom NotesDataDirectory. Ich kann mir jetzt auch nicht vorstellen, unter welchen Umständen ein Link zu einer DB funktioniert, wenn diese DB nicht in den o.g. Verzeichnissen liegt. Es sei denn, diese DB wurde bereits im entsprechenden Client / Arbeitsbereich geöffnet - dann sind diese Angaben gecached.
Auf dem Server wird dies auch nicht funktionieren. Und wo sollte eine Speicherung ausserhalb des DataDirs auch Sinn machen: Der Client kümmert sich nicht um diese Dateien, der Server sowieso nicht.

Kannst Du uns genaueres sagen, was Du da erreichen willst?

Bernhard

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #2 am: 06.11.06 - 17:31:07 »
Hallo,

es werden bei uns rücksicherungen von Notes-DBs auf Netzlaufwerken gemacht. Da ich hier gerade eine kleine Sync-Anwendung schreibe, wollte ich die Auswahl über DB-Links machen (da ich dies für den Anwender für einfacher halte).
Aber ich hab es mir schon abgeschminkt (ich mach die Auswahl wieder über den Dateiexplorer). Wobei ich das verhalten von Notes hier nicht für stimmig halte, da ich hier zwei DBs habe, beide sind auf dem Desktop (und das witzige ist, das es bei einer der beiden DBs funktioniert). Der DBLink funktioniert auch, wenn ich die kachel lösche (auch die cache.ndk)....

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: openByReplicaID
« Antwort #3 am: 06.11.06 - 17:37:52 »
CACHE.NDK und DB-Icon sind da nicht so kriegsentscheidend, vielmehr die BOOKMARKS.NSF und die DESKTOPx.NDK - da wird sowas zwischengespeichert.

Das Verhalten ist schon stimmig, denn prinzipiell gilt, dass die Notes-Datenbanken für einen ordnungsmässigen Betrieb im Notes DataDirectory sein müssen. Vorhandene Behelfe, auch auf DBs von "ausserhalb" zuzugreifen, sollten einen nicht in die Versuchung bringen, dieses Prinzip in Frage zu stellen  ;) Das Prinzip ist ja ganz einfach ...

Bernhard

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #4 am: 06.11.06 - 19:39:04 »
.... das Prinzip ist das eine, Richtlinien sind das andere  ;)

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: openByReplicaID
« Antwort #5 am: 06.11.06 - 22:52:15 »
.... das Prinzip ist das eine, Richtlinien sind das andere  ;)

Das ist wohl wahr, Armin. Das Prinzip sagt "Ich garantiere, dass dieses und jenes unter bestimmten Voraussetzungen passieren wird.". Die Richtlinie ist darin nicht gebunden.

Ich werde morgen bei uns die Richtlinie erlassen, dass auch die Benziner mit Diesel betankt werden. Ist ja auch Kraftstoff, und meine Tests haben gezeigt: Bis zu 30% (Beimischung) funktionierts.

Spass beiseite: Würde man das "OpenByReplicaID"-Prinzip aushebeln wie von der Richtlinie gewünscht, würde das allein schon in vielen Umgebungen etliche Anwendungen performancemässig völlig aus dem Tritt bringen.

Bernhard

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #6 am: 07.11.06 - 13:16:32 »
Hallo Bernhard,

.... da kann ich nur sagen "Welcome to the real world".  Ich weiss nicht in was für einer Umgebung tätig bist, aber hier bei uns in der realen Welt ist nun mal nicht alles so wie man es gerne hätte.
Hier z.B. sind nun halt mal ab und an DBs nicht in Verzeichnissen die man sich wünscht (das liegt nicht nur an den Notes'sern sondern auch an den Admin's anderer Systeme). Dies ist in diesem Fall auch nicht kritisch, da es sich ja um ausnahmen handelt (welche nun mal die Regele bestätigen).

Ich denke es macht nicht immer Sinn zu hinterfragen, warum etwas so gemacht wird (man kann es oder will es auch nicht immer ändern). Es geht/ging hier einzig allein um die Frage, ob es mit der ReplicaID möglich ist (genauer gesagt einem DBLink) eine DB außerhalb eines Notes-Verzeichnisse zu öffnen). Da dies Notes auch kann, sollte dies ja in irgendeiner weisse ja auch programmatisch funktionieren!
Dies scheint wohl nicht wirklich der Fall zu sein....
.... so shit happens, Notes bleibt trotzdem goil  ;D

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #7 am: 07.11.06 - 15:37:48 »
... So, noch kurz die Auflösung

In der Bookmark.nsf wird zum link (in den entsprechenden Dokumenten) auch noch der Pfad gespeichert (in den Feldern $ReplicaFilePaths und $SourceDbPath).

Es ist nun einfach schade, das ich über Script nicht alle die Informationen mitbekomme (ob ich nun hierzu "kurz" den Umweg über die Bookmark gehe, bleibt dahingestellt). Aber wieder einiges gelernt bei der Analyse der Bookmark  O0

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: openByReplicaID
« Antwort #8 am: 07.11.06 - 18:09:03 »
Hallo Armin,

ich bin ausschliesslich in der realen Welt tätig. Dem entsprang ja auch meine Einlassung. Es funktioniert nicht alles, was irgendjemand kraft seiner Wassersuppe festlegt - das allein genügt eben nicht. Ich mache notfalls auch Unmöglich möglich - wenn nur irgendwie machbar. Aber das kostet dann halt extra.

Das mit der Bookmark hatte ich ja auch bereits geschrieben. Du musst auch überlegen, wann und wie der DocLink in die Bookmark kommt - das passiert über das FrontEnd. Vulgo: Du musst die DB vorher schon mal selbst manuell geöffnet haben. Erzeugst Du einen DocLink und versendest Du diesen an eine andere Person (mit anderer Bookmark), dann funktioniert auch der Link nicht mehr - dessen Bookmark kennt diese DB "abroad" eben nicht bzw. hat sie noch nie anderweitig kennengelernt.

Bernhard

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #9 am: 07.11.06 - 20:30:59 »
 ::) jetzt hab ich meinen fall schon beschrieben (ich möchte zwei DBs synchronisieren, also nichts mit verschicken). Es sollte für einen Dau (welcher mit dem suchen von Pfaden meist überfordert ist) ein einfaches Frontend zur Auswahl seiner beiden DBs geschaffen werden.....

Und selbst Du machst auch nicht für viel Geld ALLES möglich (mir reicht da schon weniger).

Und wenn der Kunde Wassersuppe hat oder will, so rede ich ihm dies nur im begrenztem Umfang aus (da dieser auch die Spielregeln bestimmt)....

Ich wollte eigentlich nur eine Möglichkeit hier in Erfahrung bringen wie ich etwas lösen kann und ich wollte nicht wirklich über die Sinnhaftigkeit debatieren  :-: (aber irgendwie müssen die > 10000 posts ja zustande kommen).

Gruß
Armin
Wer Notes hat braucht kein Sudoku

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: openByReplicaID
« Antwort #10 am: 07.11.06 - 21:10:21 »
Hallo Armin,

ich habe mich bemüht, konstruktive Beiträge zu Deinem Problem zu liefern - siehe oben. Mit "Richtlinien" bin ich nicht gekommen, das Thema will ich jetzt auch nicht nochmals durchkauen.

Für die  10.000+ Postings bitte ich um Entschuldigung. Ich verspreche auch, in Zukunft die Anzahl meiner Repliken weiter zu begrenzen.

Bernhard

Glombi

  • Gast
Re: openByReplicaID
« Antwort #11 am: 08.11.06 - 09:33:22 »
Ich habe den Threasd überflogen und denke, dass ihr die ganze aneinander vorbei geredet habt.

Was ich aber nicht verstehe, ist die Aussage
Zitat
es gibt seit notes 6.x ja die schöne Möglichkeit mit Doclinks/DBLinks zu arbeiten
gleich im ersten Post. Was meinst Du denn damit? Mit Dirlinks habe ich schon seit Notes 2 gearbeitet. DB-Links funktionieren auch seit mehreren Notes-Versionen.

"Doklinks" macht doch in diesem Zusammenhang keinen Sinn.
DB-Links und Dirlinks liegen per Definition immer im Datenverzeichnis, also besteht das Problem gar nicht über das ihr diskutiert habt.

Andreas
« Letzte Änderung: 08.11.06 - 09:36:29 von Glombi »

Offline S2000

  • Junior Mitglied
  • **
  • Beiträge: 89
Re: openByReplicaID
« Antwort #12 am: 08.11.06 - 09:59:40 »
.... auf Doclinks und DBLinks in RT-Feldern kann programmatisch per Script wohl erst seit Version 6 zugegriffen werden!

.... Da ich Datenbanken auch außerhalb des Dataverzeichnisses ablegen kann (definition hin o. her) und diese Doclinks zumindest Local ja auch funktionieren (da hier die bookmark zuhilfe genommen wird), wollte ich (der Benutzerfreundlichkeit wegen), diese feature nutzten. Da die Entwickler sich aber auch an die Definition halten, bekommt man über Script nur die Information der Replik-ID (nicht aber die Pfadangaben, diese würde man über die bookmark bekommen, was ja wiederum nur lokal funktioniert).

.... Wenn man etwas definiert (in diesem falle nur die Verwendung des Data-Verzeichnisses), dann sollte man andere Möglichkeiten komplett ausschliesen (meine Meinung)!

Gruß
Armin

PS: Das Problem ist hiermit (und war es auch schon vorher) gelöst!
Wer Notes hat braucht kein Sudoku

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: openByReplicaID
« Antwort #13 am: 10.11.06 - 08:50:06 »
auch wenn das Problem gelöst ist, möchte ich auch gerne -für jemanden, der mal ein ähnliches Problem haben sollte- eine weitere Lösungsmöglichkeit ansprechen:

Hat man eine Notes- Datenbank, die ausserhalb des Data- Verezcihnisses liegt, und möchte man diese so "anbinden" (wenn auch nur temporär), dass der Client sie behandelt, als wäre sie im Data- Verzeichnis (bzw in einem Unterverzeichnis des Data- Verzeichnisses), dann kann man sich eines Verzeichnis- Links oder aber eines Datenbank- Links bedienen.

Vorgabe:
Datenbank auf X:\Sicherung\datenbank.nsf
soll angesprochen werden, als läge sie direkt im Data- Verzeichnis:

Lösung:
- Man erstelle per Script (oder von Hand) eine Text- Datei namens datenbank.txt im Notes- Data- Verzeichnis.
- man schreibe in diese Text- Datei eine Zeile rein: X:\Sicherung\datenbank.nsf
- man benenne die Datei um: datenbank.txt -> datenbank.nsf

Ab sofort kann man auf datenbank.nsf im Data- Verzeichnis zugreifen, und landet automatisch auf x:

Das gleiche geht auch für verzeichnisse:
Da sähe die Zeile in der Text- Datei so aus:
X:\Sicherung

Der Dateiname ist dann Sicherung.DIR

Danach findet man alle Datenbanken in X:\Sicherung im Datenbank- Öffnen Dialog so, als wären Sie im Verzeichnis Data\Sicherung.

Gruß
Tode

Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz