Beiträge von Tode

    Ja, das funktioniert auch mich Gruppen. ABER: Die Gruppe wird -zumindest war das früher so- beim Speichern in ihre Mitglieder zerlegt und in einem versteckten Feld gespeichert... wenn sich im Nachhinein die Gruppenmitgliedschaft ändert, wird das nicht nachgezogen, dann muss man die Ressource neu speichern... Wie gesagt: So war es früher, ob sich das in den letzten Versionen geändert hat, weiss ich nicht.

    Ich vermute schwer, die Dame verwendet die Volltextsuche mit bestimmten Parametern...

    Es gibt die Möglichkeit zu suchen, und als Ergebnis werden die Mails nur markiert und nicht die Ansicht gefiltert.

    Wenn man das nicht merkt, und man möchte z.B. die Mail unter dem Cursor löschen, dann löscht man stattdessen die selektierten Dokumente. Wenn das markierte Dokument dann noch eins der selektierten ist, dann verschwindet es sauber aus der Ansicht, aber halt nicht alleine...

    Also ich würde bei den Suchoptionen der Volltextsuche ansetzen...

    Zur Gruppenauflösung und Reihenfolge der Adressierung gibt es so viele Parameter, dass sicher eine Kombination dabei ist, die in Deinem Fall helfen würde.

    Aber warum verwendet jemand den SELBEN Gruppennamen, wenn schon im Vorfeld klar ist, dass die Inhalte unterschiedlich sind lokal und auf dem Server... Das MUSS ja zur Verwirrung beim User führen...


    Das Problem mit den ganzen Parametern / Einstellungen in der Arbeitsumgebung: diese werden oft per Policy vorgegeben, und dann würde man plötzlich das Verhalten bei ALLEN Usern ändern, wenn man die Policy ändert (und nicht ein komplett neues Set an Policies erstellen will).


    Typischerweise ist die Anforderung nämlich genau umgekehrt: Wie VERHINDERE ich, dass die Lokale Gruppe verwendet wird, weil die ja immer gegenüber der Serverversion veraltet ist....


    Um nicht komplett eine "Nicht"- Antwort zu geben: Schau Dir den Mail- Tab in der Arbeitsumgebung an, und stell den Speicherort der Maildatei auf "Lokal", dann gibt es bei der Mailadressierung "Server dann Lokal".... sonst nur "Lokal dann Server". Das Ganze kann aber auch über notes.ini- Parameter gesteuert werden:


    $ServerMailAddressing=1

    TypeaheadShowServerFirstDefault=1
    $locDD=1
    TypeaheadShowServerFirst=1
    $locCB=


    Müsste jetzt aber nachschauen, was welcher Parameter genau tut und in welcher Kombination was funktioniert.

    Sehe ich es richtig, dass [10.165.77.6] im Konfigurationsdokument rechts oben unter "Exclude these connecting hosts from anti-relay checks:" eingetragen wurde?


    Wenn dem so ist: Beim cachen dieser Einstellungen ist der Server ziemlich nervig. Ich mache dann immer Shift + Strg + F9 im Adressbuch, mehrfaches dbcache flush auf der Console und tell router update config. Und wenn ich schreibe "Router .... neu konfigurieren", dann meine ich nicht "smtp neu starten", obwohl das sicher auch nicht geschadet hat.


    Ich hatte aber auch schon Fälle, wo der Router die Einstellungen erst nach einem restart server gezogen hat, speziell wenn die Liste vorher leer war.

    Selbes Dokument, selber Tab, rechts oben: "Inbound Relay Enforcement", "Exclude these connecting hosts from anti-relay checks". Da das Gerät einfügen, das alles darf. Router per tell router update config oder restart neu konfigurieren, ggf. noch kurz warten, dann sollte es gehen (spätestens aber nach einem Serverneustart)

    Beide Listen gehen (vom Informationsgehalt) ohne eine Zeile LotusScript Code:


    Erste Liste:


    1. Erstellen - Ansicht im Menu anklicken, während man im Adressbuch ist.

    2. Name: Gruppen mit Mitgliedern

    3. "Kopieren von" anklicken und "Gruppen" bzw. "Groups" anklicken (je nach Sprache des Adressbuchs)

    4. Speichern & Anpassen klicken

    5. Neue Spalte hinzufügen

    6. Members als Formel in der neuen Spalte

    7. Eigenschaften der Spalte öffnen durch doppelklick auf Spaltenheader

    8. Tab "Sortierung" (Pfeil hoch / runter) Häkchen bei "Mehrfachwerte getrennt anzeigen"

    9. Speichern

    10. die Gruppen markieren, die Dich interessieren und per rechte Maustaste "Als Tabelle kopieren": In Excel kannst du die dann verfeinern


    Zweite Liste:

    Schritte 1 - 5 wiederholen, aber die neue Spalte als erste Spalte der Ansicht definieren

    6 und 7 wiederholen

    8. Tab "Sortierung": Sortierung: Aufsteigend, Typ: Kategorien

    9. 1. Tab: Häkchen bei "Pfeilsymbol anzeigen..." setzen

    10. Speichern

    Grundsätzlich 1: Warum postest Du den Code nicht direkt hier, dann muss niemand Dein PDF runterladen, um den Code zu betrachten.

    Grundsätzlich 2: Man schreibt keine Zeile Code ohne Errorhandling. MIT Errorhandling hättest Du die Zeile, in der der Fehler passiert.


    Und nun zum Fehler: Er erwartet einen String, erhält aber eine Zahl.


    Ich würde vermuten, der Fehler kommt in der Zeile "Print #fnr, doc.CreatedBy(0) + ";" + doc.StartDateTime(0)", weil entweder CreatedBy oder StartDateTime kein Textfeld ist.


    In Deinem Code verknüpfst Du übrigens einmal Strings mit einem "&" und einmal mit einem "+". Beides funktioniert, ich würde aber für Texte immer & verwenden und zumindest überall das Selbe verwenden.


    SO würde ich das mit minimalstem ErrorHandler machen:


    Das kannst Du entweder ganz Einfach als @MailSend im QuerySave- Event der Maske umsetzen oder als Agenten mit @Mailsend, der auf neue Dokumente schaut, oder als Script- Agent, der reglmässig läuft und Flags setzt (damit keine Mails mehrfach versendet werden).


    Also: Das geht vom einfachen Einzeiler (@Mailsend) bis zu hochkomplexer Anwendungslogik.

    Herzlich willkommen in der Welt der Domino- Entwicklung.

    Nachdem Du im Serverdokument die DA eingebunden hast, MUSST Du den Server neustarten, vorher liest er die nicht ein. ABER: Du verwechselst hier permanent die "Verzeichnisverwaltung" (=Directory Assistance = DA) und den Verzeichniskatalog (=Directory Catalog = dircat). Das sind zwei völlig unterschiedliche paar Schuhe, die eigentlich nichts miteinander zu tun haben (auch wenn man in einer DA eine durch dircat befüllte Datenbank einbinden kann).


    Du brauchst KEINE DA, sondern nur einen Dircat. Der muss im Serverdokument aktiviert sein, ausserdem brauchst Du eine Datenbank auf Basis der pubnames.ntf (NICHT Directory Assistance), die eine Directory Catalog Configuration hinterlegt hat...

    Ja, das ist eine bekannte Limitierung:


    Mail documents only appear in one folder.

    The IBM Notes Client allows a single mail document to be in multiple folders or views, but the mail application on the device only allows a single mail document in a single folder. Therefore, the device will only show the mail document in the most recent folder. If you are using the IBM Notes Client Send and File feature or a rule with a Copy to Folder action, the mail message will only appear in one folder on the device even though it may appear in multiple folders/views in the IBM Notes client. Sent and Drafts are special in that they are always the most recent if the document appears in either one of them.

    Der performanteste Weg ist eine Liste, die musst Du nicht immer Redimmen und die Abfrage mit Iselement ist wahnsinnig schnell. Also so:


    Per Default werden in LotusScript Variablen IMMER per Referenz übergeben.


    und diese Zeile:

    Code
    orgStr=Replace(orgStr,me.replaceStr,me.replaceWithStr)

    ändert dann die übergebene Variable.


    Du kannst das ändern, indem Du die Übergabeparameter als "byVal" definierst, das funktioniert aber nur bei Primitiven, nicht bei Klasseninstanzen.


    Code
    Public Function TauscheRaumzeichen (ByVal orgStr As String) As Variant


    prinzipiell ist es schlechter Stil, eine übergebene Variable zu manipulieren, es sei denn, das ist genau das, was Du im aufrufenden Code erwartest. Dann bräuchtest Du auch keine Funktion, dann würde eine Sub reichen, die Du so aufrufst:


    Code
    call dlorgadoczimmernrtausch.TauscheRaumzeichen(dlorgadoczimmernr)


    und dadurch würde automatisch dlorgadoczimmernr geändert... Ist aber nicht wirklich schön.


    Im übrigen ist Dein Code so auch nicht wirklich viel "schöner" oder "performanter". Du müsstest die Zeile "Set dlorgadoczimmernrtausch = New TauscheRaumPrefix()" ganz oben außerhalb der While- Schleife setzen, damit Du das Objekt wirklich nur einmal instanziierst, und nicht für jedes neue Dokument erneut...


    Zur Performance allgemein: String- Concatenations sind wahnsinnig "kostspielige" Operationen bezüglich Zeitaufwand. Du könntest Deinen Code um ein vielfaches beschleunigen, wenn Du auf die ganzen a + b + c + d verzichten würdest, und stattdessen die StringBuffer- Klasse von Julian Robichaux (siehe hier) benutzen würdest.