Auslesen des Document Identifieres (Dokumententitel)

  • Hallo Zusammen,
    Ich möchte eine bestehende Datenbank um ein Feld und eine Funktion erweitern.


    In dem Feld soll der Link zu dem aktuellen Dokument stehen. Den man unter den Eigenschaften als Identifier findet.


    Daneben soll ein Button vorhanden sein der den Inhalt des Feldes in die Zwischenablage kopiert.
    Is das möglich?


    Da ich selbst keine Erfahrung beim Programmieren von Datenbanken habe bitte ich um eine Antwort die leicht verständlich ist. :)
    Vielen Dank
    Denis

  • Dieser besteht aus drei Elementen:


    Replik ID der DB
    UNID der Ansicht
    UNID des Dokumentes


    Alle drei kannst du aus den jeweiligen Script Objekten auslesen


    [color=FF0000]Bitte auch aufs Themenpräfix achten[/color]

  • Vielen Dank für die schnelle Antwort.
    wie kann ich den diesen Identifier abrufen?
    Identifier: Notes:///C125766A0055E038/85255E01001356A8852554C200753106/7C4D854503B523FDC125766A00564414


    Grüße
    Denis

  • Dann solltest du dir zumindest mal die Grundlagen zur Script und Formelprogrammierung anschauen.
    Ohne diese wirst du nicht sehr weit kommen und wenn du die hast, dann ist es mit den gegebenen Infos kein Problem mehr.


    Etwas Bereitschaft zum Lernen sollte schon da sein

  • Ich finde leider die Variablen nicht, hier kann ich wohl keine Hilfe erwarten.
    Der Befehlt den ich suche ist sicher nur ein einzeiler was ist den bitte so schwer daran den hier zu hinterlegen?

    • Offizieller Beitrag

    1. Replik-ID der DB ... NotesDatabase.ReplicaID
    2. Ansichtsid ... NotesView.UniversalID
    3. DokumentuniqueID des Dokumentes ... NotesDocument.UniversalID


    Anstelle der ID für die Ansicht kannst Du auch eine 0 verwenden. Ob dies für Dich funktioniert ist allerdings von verschiedenen Faktoren (Vorgabeansicht, Maskenformel usw.) abhängig.
    Alternativ geht auch der Ansichtsname. Achtung hier müssen Sonderzeichen konvertiert werden (@URLEncode).


    Das Dokument kann auch über einen eindeutigen Schlüssel gesucht werden - siehe dazu die Client-Hilfe.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Was ist bitte so schwer daran, einfach mal das Hirn einzuschalten? Es geht um 3 Teilstrings. Wie man ganz klar sieht, besteht der vollständige String aus dem Protokoll (notes:///), dann irgendwas, dann einem Slash, nochmal irgendwas, noch ein Slash und schon wieder irgendwas. Was die irgendwasse sind, hat taurec dir schon gesagt. So, und nun darfst du dreimal raten, was du willst. Richtig: du willst "splitten". Und jetzt frag bitte nicht, wie man splittet. Das ist glasklar in der Hilfe beschrieben. Und nein: hier wird dir garantiert nicht noch der entsprechende Part aus der Hilfe gepostet.


    Hilfe kannst du jederzeit erwarten, aber nicht unter der Bedingung, dass wir dir alles schnabeltassenfertig vorkauen.

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Da dieser Thread offenbar noch nicht erledigt ist, hier noch meine Hinweise dazu:


    Der Notes-Link besteht eigentlich aus 4 statt aus 3 Teilen:


    notes://@Name([CN]; NotesDatabase.Server)/NotesDatabase.ReplicaID/NotesView.UniversalID/Document.UniversalID


    Die ID der Ansicht kann man weglassen (es muss auch keine 0 eingetragen werden), aber die Anzahl der Slash muss passen.



    Das Ganze in die Zwischenablage bekommen, geht sicherlich mit der Windows-API. U.U. ist es auch eine Alternative, ein bearbeitbares Feld in der Maske zu haben, das nicht verborgen aber trotzdem für den Anwender nicht wirklich zu sehen ist, z.B. ein Feld mit weißer Schrift auf weißem Grund, ohne Feldbegrenzer und eventuell noch mit 1 Punkt Schriftgröße. Dann kann man per Formel oder Script das Feld ansteuern, alles Markieren und kopieren.

    • Offizieller Beitrag

    also lasse ich die 0 für die Vorgabeansicht weg, dann kommt ein Error 500 - HTTP Web Server: Invalid URL Exception
    .../database.nsf/0/DocumentuniqueID ... funktioniert
    .../database.nsf//DocumentuniqueID ... Error 500
    .../database.nsf/DocumentuniqueID ... Error 500


    Mit dem Kopieren in die Zwischenablage würde ich die BS-API ebenfalls nicht mehr benutzen (Grund verschiedene BS - Mac, Win, Linux).
    Aber über ein neues Dokument, den Text in ein Feld einfügen, dann den Inhalt des Feldes in die Zwischenablage kopieren und das Dokumente wieder schließen funktioniert. Das Dokument bekommt noch ein Feld Saveoptions mit dem Inhalt "0", damit es nicht gespeichert werden kann.


    Die URL/ den Code hast Du irgend woher kopiert, der stimmt so nicht.


    Gruß
    Dirk

  • Zitat


    Diali schrieb:
    also lasse ich die 0 für die Vorgabeansicht weg, dann kommt ein Error 500 - HTTP Web Server: Invalid URL Exception


    Da ein Notes-Link im Normalfall mit dem Notesclient verbunden ist, kann eigentlich keine Fehlermeldung vom HTTP Web Server kommen. Meinen wir hier verschiedene Links?


    Wenn die Funktionalität mit Noteslinks grundsätzlich funktioniert, dann habe ich noch nie einen Fehler erhalten. Ich benutze solche Links allerdings auch nur in Windows-Programmen, die damit natürlich unter Windows laufen. Könnten Deine Fehlermeldungen mit Mac oder Linux zusammenhängen?


    Gruß
    Mapper

    • Offizieller Beitrag

    stimmt bei Notes-Links kann die 0 weggelassen werden.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein