Autor Thema: NotesSQL - Document Link / ID  (Gelesen 3132 mal)

Offline olaf77

  • Frischling
  • *
  • Beiträge: 6
NotesSQL - Document Link / ID
« am: 23.07.12 - 11:54:20 »
Hallo zusammen,

zunächst einmal muss ich sagen, dass ich hier neu bin und auch mit Notes noch nicht sehr viel Erfahrung habe. Nachdem ich mich aber durch Dokumentationen gekämpft habe und das Prinzip von Lotus Notes inkl. Domino-Server einigermaßen verstanden habe, konnte ich dann endlich mit der "Entwicklung" anfangen. Die Suchfunktion habe ich im Übrigen auch schon verwendet ;)

Was soll erreicht werden?

Aus einer Notes-Datenbank sollen über ODBC Dokumentenlinks ermittelt werden.


Ich hoffe jetzt mal nicht, dass diese Überlegung an sich schon unsinnig ist, doch wenn ich mir die NotesSQL-Dokumentation so anschaue, sollte das doch irgendwie möglich sein. Meine ODBC-Verbindung funktioniert jedenfalls einwandfrei und ich kann auf Tabellen meiner Wahl mit SQL-Querys zugreifen. Leider finde ich die Dokumentenlinks schlichtweg nicht.

Ein Beispiel:

Ich habe eine neue Datenbank namens "Dokumente.nsf" angelegt, dies ist eine Dokumentenbibliothek. Wenn ich mir über ODBC die Tabellen anschaue, finde ich jedes einzelne Dokument mit Titel, Text, etc. Aber nirgens ist auch nur eine Spur von einer Dokumenten-ID, geschweige denn von einem Dokumentenlink.

Wo kann ich diese Information finden? Ist diese in der Datenbank nicht existent oder mach ich grundlegend etwas falsch?

Ich bräuchte halt entweder die ID, einen Hyperlink mit "notes://"-Notation oder als gewöhnlichen "http://"-Link.


In .NET habe ich mir alternativ mal ein kleines Programm über den COM-Verweis "Lotus Domino Objects" geschrieben. Damit bekomme ich schon wesentlich mehr Daten raus, aber über ODBC gestaltet sich die Sache dann doch irgendwie wesentlich leichter.



Es wäre echt spitze, wenn mir jemand weiterhelfen könnte.

Vielen Dank schon einmal für Eure Mühe.


Schönen Gruß!



Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: NotesSQL - Document Link / ID
« Antwort #1 am: 23.07.12 - 11:59:49 »
Hallo,

Im Moment blicke ich es noch nicht so ganz.

Du hast eine LN-Db. In dieser moechtest Du auf Dokumente in einer zweiten Db zugreifen (Dein Dokumentenlink) und das Ganze ueber NotesSQL (ODBC).

Wenn dem so ist, dann stellt sich die Frage nach dem Warum denn auf diesem Wege.


Andreas

Offline olaf77

  • Frischling
  • *
  • Beiträge: 6
Re: NotesSQL - Document Link / ID
« Antwort #2 am: 23.07.12 - 12:19:51 »
Ok, ich hätte es vielleicht doch etwas weiter ausführen sollen....


Ich will nicht in einer zweiten DB über Dokumentenlinks auf die Dokumente der ersten Datenbank zugreifen, sondern eher über eine Fremdsoftware, vielleicht sogar über eine Webanwendung.

Ich habe also eine x-beliebige Datenbank...in meinem Beispiel "Dokumente.nsf". Die Dokumente in der Datenbank haben bestimmte Namen oder bestimmte Tags über die ich sie mit anderen Daten (der Fremdsoftware) matchen kann. Angenommen, es gibt in der "Dokumente.nsf" ein Dokument namens "Dokument 0815", dann will ich über den Namen "Dokument 0815" eine ID oder ein Dokumentenlink erzeugen, der auf genau dieses Dokument der Datenbank "Dokumente.nsf" zeigt. Ziel ist es dann letztlich, in der Fremdsoftware einen Link (notes:// oder http://) bereitzustellen, der direkt aufs passende Dokument zeigt. Zum Beispiel gibt es in der Fremdsoftware pro Kunde/Artikel ein Notes-Dokument, welches dann dynamisch über ODBC ermittelt werden soll.

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: NotesSQL - Document Link / ID
« Antwort #3 am: 23.07.12 - 12:41:27 »
Ich habe noch nie über ODBC auf Notes zugegriffen, habe deshalb also keine Ahnung, wie das aussieht.

Um den Link zusammen zu bauen, benötigst Du die DokumentenID, in Notes heißt die UniversalID, findest Du die über ODBC? Wenn nicht, könntest Du in die Notes-Dokumente (z.B. über die Maske) den Link oder auch nur die ID in ein separates Feld / Item rechnen, da müsstest Du dann drauf zugreifen können.

Wenn Du ein (berechnetes) Feld in die Maske setzt, benötigst Du die Formel @DocumentUniqueID, um an die UniversalID heranzukommen, i.d.R. mit einem @Text darum, um nicht einen Link zu bekommen, also

@Text (@DocumentUniqueID)

Vielleicht hilft Dir das etwas weiter ...

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: NotesSQL - Document Link / ID
« Antwort #4 am: 23.07.12 - 12:46:14 »
Hallo,

Und wenn er schon einmal ueber .NET Gehversuche unternommen hat, dan hat er doch die Objekt-Klassen zur Verfuegung.

Und da hat er doch das Document-Objekt und hier NotesURL und HTTPUrl.


Andreas

Offline olaf77

  • Frischling
  • *
  • Beiträge: 6
Re: NotesSQL - Document Link / ID
« Antwort #5 am: 23.07.12 - 16:56:29 »
Erst einmal herzlichen Dank für Eure Antworten!

Der Gehversuch über .NET war mehr ein Test, ob in meiner Testdatenbank "Dokumente.nsf" überhaupt irgendwelche IDs oder Links direkt enthalten sind. Ich habe den Inhalt dieser Notes-Datenbank mal als XML exportiert und dort finde ich alles, was ich brauche.

Leider sieht es in meinem Fall so aus, dass ich nur im Notfall auf ein .NET-Programm zugreifen kann/darf. Meine eigentliche Anwendung wird in C++ geschrieben und da lässt sich eine ODBC-Datenquelle sehr einfach ansprechen. Zur Not müsste ich mich mal in die C++ API einlesen.

Aber noch einmal zu NotesSQL, irgendwie muss das ja möglich sein. Ich habe in meiner Testdatenbank "Dokumente.nsf" 18 Tabellen, davon haben erst einmal 11 Tabellen gar keine Spalten und weitere 6 Tabellen haben entweder keinen oder nichtigen Inhalt (jedenfalls keine IDs oder ähnliches).

Einzig die Tabelle "Document" sieht so aus, als würde sie meine Daten beinhalten. In dieser Tabelle findet man jedenfalls den Plain Text der Dokumente samt Titel, Beschreibung, Zusatz, etc... Es fehlt lediglich die ID. Die Spalten in der Tabelle heissen z.B. "From", "AltFrom", "AltLang", .... , "Subject", "Categories", "Body", "ViewList"

Gibt es denn keine gescheite Tabellenbeschreibung für Notes-Datenbanken? :)  Gefunden habe ich bislang jedenfalls keine...

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: NotesSQL - Document Link / ID
« Antwort #6 am: 23.07.12 - 17:19:38 »
Gibt es denn keine gescheite Tabellenbeschreibung für Notes-Datenbanken? :)
Notes-Datenbanken haben mit SQL-Datenbanken nichts gemeinsam. Notes ist Dokumenten- und nicht Tabellen-orientiert. Der Gang über die Notes-Objekte ist da sicherlich zielführender.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: NotesSQL - Document Link / ID
« Antwort #7 am: 23.07.12 - 18:57:54 »
SQL und RDMS werden sich immer schwer tun mit (obendrein proprietären) rich text items. Und wenn Du in einem Notes-Dokument eine "tabelle" siehst: Das sieht nur so aus, das ist auch rich text-"Verhau".

Ich sage es mal brutal: *Diesen* Weg kannst Du vergessen. Du versucht, mit "harten Mitteln" (relationalen eben) aus einer "weichen Masse" etwas herauszuholen. Dafür ist weder SQL noch ODBC gedacht.

Was soll da eigentlich herauskommen? Was ist der eigentlich Sinn der Übung? Wenn wir den kennen, können wir auch mitdiskutieren.

Bernhard

Offline olaf77

  • Frischling
  • *
  • Beiträge: 6
Re: NotesSQL - Document Link / ID
« Antwort #8 am: 25.07.12 - 16:55:44 »
Zitat
Was soll da eigentlich herauskommen? Was ist der eigentlich Sinn der Übung? Wenn wir den kennen, können wir auch mitdiskutieren.

Das hatte ich in meinem zweiten Post beschrieben. Es geht letztlich darum, aus einer Notes-Datenbank über ODBC eine Dokumenten-ID bzw. Note-ID zu extrahieren - sofern es Dokumente in der Datenbank gibt. Dies ist mir bis heute nicht gelungen, ich finde die verdammte ID bzw. UID einfach nicht. Der Sinn der Übung ist, dass ich aus einer eigenen Software dynamisch Notes-Links erzeugen möchte. In meiner eigenen Software habe ich Daten, die ich mit bestimmten Attributen/Schlagwörten/oder sogar mit dem Dokumentennamnen matchen kann, daraus hätte ich gerne einen Notes-Link (notes:// oder http://) erzeugt.

Aber ich merke auch schon, dass ich mit .NET und den Notes-Objekten wesentlich schneller vorran komme. Ich werde dann evtl einen Webservice o.ä. schreiben, um mit meinem Programm zu kommunizieren.

Sollte doch noch jemand Hinweise zur Nutzung von NotesSQL in Bezug auf Dokumentenlinks haben, wäre ich trotzdem sehr dankbar.


Danke an alle und schönen Gruß,
Olaf

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz