Beiträge von RockWilder

    Ein Dokument weiß nicht, ob es repliziert wurde. Kann es nicht wissen.


    Du kannst bspw. im Post-/QueryOpen-Event ein Flag im Dokument setzen: "isOpenForEditing = 1". Das kannst du beim Öffnen des Dokumentes im Bearbeiten-Modus abfragen und beim Speichern die Aktion dann blocken (an erneute Prüfung des Flags im QuerySave denken, für den Fall dass sich der Status des Dokuments zwischenzeitlich geändert hat!). Das zum Grundsätzlichen.


    Wenn dein Kunde "in letzter Zeit" vermehrt Probleme damit hat, sollte erst einmal untersucht werden, was sich zu dem Zeitpunkt an der Umgebung und/oder der Arbeitsweise des Kunden geändert hat. Irgendwelche Gründe muss das ja haben und ob sie ursächlich auf Serverseite liegen, halte ich wenn Layer 8 mit im Spiel ist, grundsätzlich für fragwürdig.

    Im einfachsten Fall: Agent = Trigger "Vor/Nach Eingang neuer Mail",Simple Action = "Send Mail". Schlägt dann aber auch bei unerwünschtem Spam an.


    Im zweiteinfachsten Fall: Out-of-Office Agent. Schlägt dann halt auch auf Spam an. (Warum hast du den eigentlich eingangs ausgeschlossen?)


    Nach oben hin sind der Komplexität kaum Grenzen gesetzt, wenn der Agent in bestimmten Situationen nicht, oder in unterschiedlichen Situationen unterschiedlich reagieren soll. Das läuft dann aber auf LotusScript oder Java hinaus und kann nicht mit "drück hier, klick da, programmier dort das" abgehandelt werden.


    Nachtrag: Behandelt das nicht eigentlich das, was du hier schon fragest?

    Ganz ehrlich? Bei "Notes 4" habe ich aufgehört zu lesen. Das ist so historisch, das wird nur noch von der Bahn und ihrer Suche nach Win3.11-Admins getoppt.


    Wenn es ~10 Leute betrifft, die hauptsächlich Mail nutzen, gäbe es dafür sicher bessere und leichtgewichtigere Alternativen. Mal eben einen Postfix oder Sendmail in einem Docker Container hochgefahren und gut ist.

    Gleiches gilt für die 2 DBs mit Kundeninformationen: basieren die auf der Adressbuchschablone, ist eine Migration in ein neues System kein Aufwand. Stellen die beiden zusammengenommen ein vollwertiges CMS dar, gibt es auch dafür Alternativen.


    Für reines Mailing und evtl. noch Groupware-Funktionalität wäre nextCloud denkbar; fürs CMS (je nach Art und Umfang) wären die Platzhirsche Drupal oder Typo3 denkbar (andere, bedeutend "leichtere", Tools ebenfalls). Und selbstverständlich lassen sich auch die genannten Produkte containerisieren.


    Insbesondere, wenn der Skill fehlt die Umgebung zu fixen, ist zu überlegen, ob das angedachte Vorgehen wirklich die beste Lösung ist. Wenn du eh schon vor dem Problem stehst, an die eher unbekannte Umgebung ran zu müssen: warum machst du sie nicht von Anfang an neu und schick? Ich stelle mal die Theorie in den Raum, die selbe Antwort wirst du bekommen, wenn du dir externe Dienstleister dafür holst.

    Wenn es bei Notes/Domino bleiben soll: eine neue Umgebung aufzusetzen geht wenigstens ebenso schnell, wie die alte zu flicken. Befolgst du die Anleitungen zum Aufsetzen der Umgebung und Registrierung der User Schritt für Schritt, bist du in 2 Stunden durch, kannst sicherstellen, dass in weiteren 25 Jahren das Geraffel noch tut und hast noch den Lerneffekt, wie eine Notes-/Domino-Umgebung zu betreuen ist.

    Erstens: Sei doch bitte so gut und sprich nicht von "Briefkästen". Es mag ja sein, dass die Bundeswehr tatächlich noch im vorletzten Jahrhundert feststeckt; der Rest der Welt hat sich aber weitergedreht und in dieser Welt gibt es allenthalben bekannte und gebräuchliche Fachtermini.


    Zweitens: ist die Frage ernst gemeint, was "UI" bedeutet? Wirklich? Kann ich kaum glauben! :/ Das ist die Abkürzung eines weiteren Fachterminus': User Interfrace.


    Drittens:

    Empfänger und zusätzlich eingefügter Text sind immer gleich und werden ggf. etwas abgeändert

    Ist das militärisch präzise Ausdrucksweise? Immer gleich, aber manchmal doch nicht? Was denn nun? Ist der Text variabel, sprich nicht von "immer". Ist er immer gleich, kann nichts geändert werden und somit stünde einer automatischen Weiterleitung nichts im Wege. Was Du unter "ggf." und "etwas" verstehen magst, lasse ich Dir.


    Viertens: Aufgrund Deiner Nachfragen zu den geposteten code snippets im Atnotes Forum nehme ich an, Du bist weder Entwickler, noch Admin. Gut, macht ja nix. In dem Falle aber schlage ich vor: Du schließt dich mit den Kollegen in der Entwicklung kurz, um dein Anliegen umgesetzt zu bekommen. Für mich macht das eher den Eindruck, als würde ein Anwender versuchen, ein nichtnotwendiges Feature dranbasteln zu wollen, um sich (vermeintlich) Arbeit zu ersparen.

    Zitat aus dem benachbarten Forum:

    Zitat

    Ich baue mir nur mit den Befehlen einen Button, der das macht was ich gern hätte.

    Nun: was Du gerne hättest und was etwaigen Entwicklungsaufwand rechtfertigt, das solltest Du mit der Entwicklungsabteilung klären.

    Dass Deine (private) Änderung mit dem nächsten Schablonenupdate sehr wahrscheinlich eh wieder raus wäre, sollte Dir auch bewusst sein.


    Fünftens: Deine Antworten im benachbarten Forum lassen darauf schließen, dass eure Mailboxen entweder nicht auf dem Standard Mailtemplate basieren, dass sie Eigenentwicklungen sind oder das Standardtemplate zumindest teilweise angepasst wurde.

    Zitat aus dem benachbarten Forum:

    Zitat

    Beim manuellen Weiterleiten ist die Mail weiterhin ausschließlich im OBK zu finden. Man sieht sie dann da im "Gesendet" Ordner.

    Das ist nicht das normale Verhalten von Notes. Und dass "Gesendet" kein Ordner ist: geschenkt!


    Um es von meiner Seite aus abzuschließen:

    • wenn Du neu in der Entwicklung und/oder Administration bist, empfehle ich entsprechende Grundlagenschulungen. Ohne Basiskenntnisse sich daran zu machen halte ich für semioptimal.
    • bist Du nur User: gib das Thema in die korrekten internen Kanäle. Deine Kollegen werden a) dafür bezahlt und b) nur begrenzt erfreut sein, wenn jeder an ihrer Infrastruktur rumschraubt, nur weil er "das gern hätte". Jeder von uns kennt diese User, die ohne tieferes Verständnis einfach mal eben so "was aus dem Internet rauskopiert" haben und in die Produktivumgebung kippen!

    Eine Mail, die aus dem UI versendet wird, landet grundsätzlich immer in der Mailbox des sendenden Users. Willst du sie in der Teammailbox haben, müsstest du das gesendete Dokument da hineinkopieren. Aber warum würde man das so umständlich tun wollen?

    Zumal deine Anforderung eben nichts mit einer automatisierten Weiterleitung zu tun hat: muss manuell eingegriffen werden -und sei es nur, den "Senden" Knopf zu drücken- ist das keine Automation mehr. Automatisiert wäre es, wenn auf dem Server ein Agent liefe, der bei einkommender Mail losläuft und die Mail weiterleitet. Das wird aber mit deinem Code nicht funktionieren.


    Du solltest entweder deine Anforderung überdenken, oder aber deinen Code ändern.

    Da diese Funktion durchaus vorgesehen ist, oder wofür ist die Aktion "In persönliches Adressbuch kopieren", verwenden wir das.

    Vom ganz Offensichtlichen einmal abgesehen, warum das eine bestenfalls halbdurchdachte Idee ist, hier ein paar offizielle Aussagen von IBM dazu:

    LO38791: "COPY TO PERSONAL ADDRESS BOOK" WILL REPLACE THE EXISTS GROUP DO CUMENT THOUGH THE NAME IS NOT EXACT MATCH.

    Address Book entries are duplicated after a Lotus Domino Web Access (iNotes) user is added to BlackBerry Enterprise Server

    LO41905: RESTRICT FIELD ACCESS IN XACL, COPY TO PERSONAL ADDRESS BOOK AGE NT TRUNCATES DOCUMENTS

    LO70094: MAIL ENCRYPTION FAILURE IF OLD NAME IS IN DOMINO DIRECTORY

    Insbesondere letzteren Artikel möge man sich bitte bis zum Ende sinnentnehmend durchlesen: wie zu erwarten PEBKAC.


    Aber hey, warum mal nachprüfen, was der Agent so tut und warum bloß drüber nachdenken, ob das wirklich eine weise Entscheidung ist? Die Funktion ist ja immerhin existent, das muss als Entscheidungsgrundlage reichen. Also hauen wir fleißig drauf. Top! :thumbup:


    Schießt du dir freiwillig ins Knie oder hälst die Griffel in eine Bandsäge einfach nur, weil du es kannst? Und wofür sonst wäre ne Säge gut?

    "Exportierte ID"? ... Von wo exportiert? Ich dachte, wir reden vom ID-File, das auf dem neu eingerichteten Laptop zur Anmeldung nicht taugt und das du auf deine Maschine kopiert hast?


    "öffne sie z.B. in meinem Notes" ... "öffnen" != "zur Anmeldung verwenden". Bitte korrekte Termini verwenden, sonst redet jeder am anderen vorbei.


    "zur ID-Wahl komme ich erst gar nicht" ... doch, selbstverständlich! Hat man mehrere AUs eingerichtet, hat man im Login-Fenster ein Dropdown-Feld, aus dem man die zu verwendende ID (genauer: das zu verwendende AU-Dokument) auswählen kann; angezeigt wird der Notesname ("Dein Name/Certifier/DE" und "Der Andere/Certifier/DE").


    Weiters hast du gesagt, dass du mittels "Switch ID" die ID wechselst: deiner Beschriebung nach kann das nicht hinkommen. Nach der ID wirst du nur dann nicht gefragt, wenn die ID im Arbeitsumgebungsdokument korrekt hinterlegt ist. Soweit, so richtig. Gehst du über "Switch ID", wird dir ein Dateiauswahldialog präsentiert, mittels dessen du eine andere ID auswählen kannst.


    "Sonst zieht er sich die Daten vom Domino" ... falsch! Das AU-Dokument wird nur aktualisiert, bzw. fehlende Werte nachgetragen, wenn das Dokument nicht korrekt ausgefüllt ist (bspw. Mailserver o.ä.). Ist es das (sprich: alle Angaben entsprechen dem korrespondierendem Personendokument im DD), wird sich nix von nirgendwo gezogen.


    Bitte lies in der Hilfe und/oder in der IBM-Knowledgebase nach, wie man seinen Client so einrichtet, dass mit mehreren Arbeitsumgebungen geschafft werden kann. Dort ist auch beschrieben, wie man

    a) ID wechselt

    b) IDs auf ihre Gültigkeit prüft

    c) IDs rezertifiziert

    Ich wußte nicht, daß bei "From" der Name komplett so wie er im From-Feld steht, angegeben werden muß:

    Bsp:

    @If (From = "CN=Hans Dampf/O=Test/C=DE";

    Das wurdest du aber schon von Andreas gefragt.

    Es gibt zwei Felder: "From" und "displayFrom". Oder so ähnlich, hab keinen Notesclient zur Hand (kann grad jemand nachschauen? Danke!). "displayFrom" ist das, was "Hans Dampf/Cert/DE" anzeigt,indem es mittels "@Name([CN]; ...)" die Werte aus "From" abgreift und präsentiert.


    Auf das Feld "From" zu gehen, kann auch in die Hose gehen! Hier greifst du den Notesnamen ab, das ist auch OK, da eine NRPC-Mail dieses Feld enthält. Das muss bei SMTP-Mails nicht zwingend der Fall sein:

    Zitat

    Some SMTP applications will create a Sender field using a Sender and/or From field in the message body .

    Soll heißen: je nach Quell-Mailsystem kann entweder die gewünschte Information drin stehen, oder Bullshit, oder auch gar nichts. In allen Fällen hast du aber das Item "Principal"; das dürfte failsafe sein.

    Siehe dazu auch Ronkas Hinweis

    So weit, so klar. Da sind wir uns ja auch einig.;)


    Da ich den Produktivcode nicht kenne, gehe ich in meinem jugendlichen Leichtsinn einfach mal davon aus, dass im wahren Leben "hans.dampf@dom.tld" oder was in der Richtung drin stehen wird.

    Oder sowas wie @Contains(From; "hans.dampf").

    Oder auch @Like(From; "hans.dampf@dom.tld").

    Oder man verwendet eben doch eine Regel (dort ist im Übrigen eine funktionierende Syntax einsehbar, nur mal so am Rande).

    Oder man verwendet stattdessen LotusScript.

    Oder man verwendet die Teammailbox, die absenderabhängige Replies rausschicken kann. Schade nur, dass das Projekt offenbar nicht weiter gepflegt wird. Allerdings kann man diese spezielle Funktionalität ins default Mailtemplate backporten.


    Es geht wohl nur um einen speziellen Absender, da kann man theoretisch den Namen hart reinkodieren. Obwohl gefühlt ein Profildokument zwecks späterer Erweiterbarkeit vermutlich die flexiblere Option wäre (wie es in der Teammailbox auch getan wird).:/


    /Nachtrag:

    Nur um noch eine Option zu nennen: server mail rules. Ist zwar ziemlich das Selbe, wie mail rules im Mailfile, aber nur der Vollständigkeit halber und um die Liste weiter aufzublähen, wie man das Problem gelöst bekommt :D


    Der Möglichkeiten gibt es viele, aber ich komme grad vom Hölzchen aufs Stöckchen und sprenge den Scope der AnfrageX/

    Habt ihr überhaupt eine CA eingerichtet? Den Task zu starten ist nur die halbe Wahrheit.

    Wenn du in der admin4.nsf siehst, dass die ID noch nicht verlängert wurde (wann und wie hast du den Renew Request überhaupt angestoßen?), dann wäre der adminp eigentlich die erste Anlaufstelle und nicht die CA (so sie denn eingerichtet ist). In der admin4.nsf siehst du auch etwaige Fehler, die beim Renew aufgetreten sein können.


    Du sagst: "Wenn ich über Switch ID gehe, gehts...". Auf welcher Maschine switcht du welche ID? Wirklich sicher, dass es das selbe File ist und nicht nur eines mit gleichem Namen? Weil: es macht keinen Sinn, dass ein abgelaufenes Zertifikat bei einer Neuanmeldung nicht tut (so soll es sein) und auf einer anderen Maschine eben doch (das darf nicht sein!).


    /Nachtrag:

    was passiert, wenn du die ID, zu der du switcht, auf die neu eingerichtete Maschine kopierst und ein Login versuchst?

    ascabg: er sagte ja, im Produktivbetrieb steht da nicht "Hans Dampf" drin. Gehen wir mal davon aus, dass der Code hier im Forum also zwecks Anonymisierung so geschrieben wurde.


    Das grundsätzliche Problem bei "Nach Eingang neuer Mail" ist halt, dass der AMgr nicht sofort loslegt, sondern dass es eine Verzögerung geben kann. Diese Verzögerung kann im Test so aussehen, als würde "nichts" passieren.


    Wie dem auch sei: unterm Strich beinhaltet das Gesamtkonstrukt so viele logische Fehler, dass es sinniger wäre, es komplett zu überdenken, anstatt noch mehr Zeit und Energie da reinzuversenken.

    Zitat

    Die Mail bleibt einfach im Maileingang und sonst passiert nichts mehr....

    Was sagt das Agent Log dazu? Dass "nichts" passiert, bezweifle ich. Ist das Logging eingeschaltet, sieht man darin zumindest, an welcher Stelle und mglw. auch warum der AMgr abbricht.


    Im verlinkten Hilfedokument ist auch die Rede von LotusScript, nicht von Formelsprache. LS bietet ein paar Größenordnungen mehr Möglichkeiten zum Debuggen und zum anderen eben auch die Property "UnprocessedDocuments", die in diesem Kontext nicht ganz unerheblich ist.


    Warum willst du überhaupt einen Mechanismus nachbauen, der seit Version 4 existiert und sauber tut? Versucht man das Rad neu zu erfinden, besteht die Gefahr, dass man es hinterher doch nur eckig anstatt runder als rund gemacht hat => q.e.d.

    Zudem hat der Agent noch ein logisches Problem, siehe Hilfe:

    Zitat

    If the agent trigger is "After new mail has arrives," then a few minutes can pass between the time the agent gets triggered to run and the time the agent actually runs. In this time, the database in question may have received multiple messages. Therefore, use the UnprocessedDocuments property of the NotesDatabase class (for LotusScript) or the getUnprocessedDocuments property of the AgentContext class (for Java) to process the collection of documents that have not been processed by the agent yet.


    The key point is that "Before new mail arrives" agents process one document at a time, and "After new mail has arrived" agents can process multiple documents delivered between the time the agent is scheduled to when it runs.


    Weiters sollte der Agent Signer auch passen.

    Eine ID, die bereits im November letzten Jahres abgelaufen sein soll, lässt sich einmal zur Anmeldung am Server benutzen und ein anderes Mal nicht? Kommt mir spanisch vor. Wirklich sicher, dass du immer mit der selben ID schaffst und nicht mit mehreren? Was sagen die ID-Properties bzgl. Ablaufdatum bei den verschiedenen ID, die du verwendest?


    Zitat

    Ich habe den Benutzer neu zertifiziert, ohne Erfolg.

    Und der adminp ist auch schon durch? Fehlerfrei, selbstverständlich!

    Dass die Loganalyse nicht weiterhelfen soll, das sagst du so. Ich bezweifle das ja. Sagen tust du nicht, warum sie für dich unbrauchbar sein soll, bzw. was darüber hinaus du davon erwartest.

    Wie hoch "jede Menge" an Mails sein soll, das verschweigst du geflissentlich. Alles unterhalb einer dick 5-stelligen Anzahl pro Tag ist kaum der Rede wert. Geschweige denn: "voll".


    Du wirst sicherlich schonmal was von Volltextindizes gehört haben? Du hast dir auch ganz bestimmt schon sämtliche Views in der log.nsf angeschaut? Und nach eingehender Überlegung und dem ernsthaften Versuch, dich selbst schlauzumachen, bist du zum Schluss gekommen, dass die log.nsf für dich unbrauchbar ist? Ebenso ist das (temporäre) Mailjournaling oder das Message Tracking keine Option, die wiederum nochmal eigene Auswertungsmöglichkeiten bieten? Na dann....


    Das Wissen, wie man eine View um eine Spalte erweitert, oder die View Selection Formula ("Ansichtsauswahlformel" oder so ähnlich im Deutschen), muss man nicht zwingend haben. Es reicht völlig, dass man weiß, wo das Wissen ist und ein wenig Eigenantrieb, sich das Wissen draufzuschaffen. Das alles ist weder Hexenwerk noch ein Projekt mit mehreren Mannjahren und zigtausenden Euros Budget. Ein simpler Druck auf Admin's Lil' Helper (der sagenumwobene Hotkey "F1") und die Hälfte ist schonmal geschafft.


    Was Agenten und/oder externe Programme damit zu tun haben sollen, erschließt sich mir gerade nicht: davon habe ich nichts gesagt und davon steht auch nichts im verlinkten Hilfe-Dokument.


    Um es deutlich zu machen: hier geht es nicht darum, die eigene Arbeit von anderen erledigen zu lassen und eine fertige Lösung in einem Rundum-sorglos-Paket in mundgerechten Stücken zu erhalten. Hier geht es um Hilfe zur Selbsthilfe. Was mich angeht: ich werde diese Hilfestellung nur leisten, wenn ich den ernsthaften Versuch erkennen kann, dass sich vorher eingehend mit dem Thema auseinander gesetzt wurde und wenn zu exakt beschriebenen Auffälligkeiten ebenso exakt beschriebene Lösungswege genannt werden, sowie die Stelle, an denen sie dann versagen und mit welcher Meldung sie versagen.

    Einfach nur "Hömma, ich muss da was tun, worauf ich keinen Bock habt, also hal' druff, ich mach dann Middach" ... das läuft bei mir nicht. Gut möglich, dass es so nicht gemeint ist (davon gehe ich gern aus), aber dein Request kommt bei mir so an. Anders jedenfalls kann ich mir nicht erklären, wie Mechanismen und Tools, die von Ein-Mann-Servern bis hin zu Umgebungen mit 6-stelligen Userzahlen erstklassig funktionieren, für dich pauschal, durch die Bank weg und ohne jede Erläuterung der Gründe dafür, unbrauchbar sein sollen. Für Aufklärung wäre ich dankbar.

    Code
    If tmpquelldocdat <> tmpquelldocdat3 Then
        Do While tmpquelldocdat = tmpquelldocdat3
            (...)
    
        Loop  
    
    (...)
    End If


    => Wenn die beiden Datumswerte unterschiedlich sind, iteriere über die Schleife, solange die Werte identisch sind? Bist du sicher, dass das so gewollt ist?

    Searching and viewing the Domino server log file (LOG.NSF)

    IBM bietet einige Artikel an, die (Mail-)Migrationen beschreiben. Diesen Artikel habe ich in wenigen Sekunden finden können; ich bin zuversichtlich, das hättest du auch geschafft.


    Was verstehst du unter "das (...) Log ist (...) voll und unübersichtlich"? Einmal davon ab, dass die log.nsf nicht "voll" sein kann.

    Maximale Datenbankgröße (je nach drunterliegendem OS) ~ 64Gig. In Abhängigkeit des ini Parameters "Log=" und den Repliziereinstellungen der DB werden alle X Tage Dokumente gelöscht. Dass allein Drucker und Scanner so viel senden und empfangen, dass in weniger als X Tagen mehr als 64 Gig geschrieben werden und somit die Restriktionen des OS gesprengt werden, würde mich sehr wundern. Sollte dem so sein und in Zusammenhang mit "das (...) Log ist (...) unübersichtlich", solltet ihr den Loglevel runterdrehen und/oder den ini Parameter anpassen und definitiv solltet ihr Ordnung schaffen. Sich darüber Gedanken zu machen und entsprechende Kontroll-/Auswertungsmöglichkeiten zu schaffen wäre schon im Vorfeld der Migration sinnig gewesen und nicht erst hinterher.


    Holzhammer-Methode: ausnahmslos alle fraglichen Gruppen aus dem DD (und ggf. reinkaskadierten Directories) entfernen und drauf warten, ob wer schreit. Dann weißt du, wer was noch braucht und kannst nachhaken, ob diese Gruppe(n) wirklich gebraucht oder einfach nur gewollt werden.

    Oder man rechtsklickt einfach im Admin-Client (den man ja eh offen hat, also: wo ist der zusätzliche Aufwand, eben diesen zu benutzen?) auf fragliche Datenbank und geht den Weg, den IBM vorgesehen hat...

    Oder man schaut erst, ob die over-quota settings des Routers nicht auch ausreichend sind, die Mailfilegrößen einzuhalten...

    Oder man erzieht seine User einfach mal, anstatt Settings vorzunehmen, die hinterher dann doch für die Tonne sind...


    Und wenn man schon an Systemdatenbanken Änderungen vornimmt, sollte dieser Artikel im Hinterkopf behalten werden.