Beiträge von helmie

    So, hat etwas länger gedauert, aber dafür hab ich sogar schon einen Test gemacht. :)
    Zumindest den ersten Teil, das kopieren in Deine MailIn-DB kriegen wir hin. Den rest hab ich mir noch nicht so genau angeschaut...
    Setz mal folgenden Code in den QueryClose Event:
    Sub Queryclose(Source As Notesuidocument, Continue As Variant)
    Dim session As New NotesSession
    Dim doc As NotesDocument
    Dim id As String
    Dim doc_kopie As NotesDocument

    pfad = "Mail/test.nsf"
    Dim db_neu As New NotesDatabase("Servername/bla/bla", pfad)

    Set doc = Source.Document
    id = doc.UniversalID
    Set copydoc = doc.ParentDatabase.GetDocumentByunID(id)
    Call copydoc.CopyToDatabase(db_neu)
    End Sub


    Du musst natürlich noch den Servernamen und die Pfadangabe anpassen. Damit haben wir das Dokument auf jeden Fall in der anderen DB. Danach kannst Du ja mal weiterschauen. Ich muss jetzt leider zu nem Kunden. Sorry und viel Glück!

    Hallo,
    wenn ich das richtig verstanden habe hast Du den Code im Querysafe eingefügt. Damit wird der auch jedesmal beim speichern ausgeführt. Das aber nur mal nebenbei.
    Wenn dieser Code aber bei einem neuen Dokument ausgeführt wird kann er nicht funktionieren! Mit
    Set doc = Source.Document
    versuchst Du über das FrontEnd-Dokument (welches auf dem Bildschirm ist) auf das BackEnd-Dokument (auf dem Server) zuzugreifen. Das gibt es aber noch gar nicht, da es noch nicht gespeichert wurde! :nono:
    Versuch doch mal den Code in das Event "Postsave" zu setzen. Dort sollte es funktionieren

    Am simpelsten über den Admin-Client.
    Register Dateien, DB auswählen und aus der "Werkzeugleiste" unter Datenbanken "Signieren" wählen. Am sinnvollsten mit der ID des aktiven Servers. Der sollte für eure ECL vertrauenswürdig genug sein. :D

    Hallo,
    kommen diese neuen Dokumente denn wirklich als Mail an?

    Zitat


    (Habe eine Datenbank in die ich über ein anderes Programm Dokumente einschieben kann.


    Wenn die Dokumente in der DB angekommen sind, steht da dann auch gleich der zuständige Mitarbeiter drin? Wenn ja ist Dein Agent recht einfach.
    Im Designer: Erstellen, neuer Agent.
    Laufzeit: Wenn neues Mail ankommt
    Den Rest kannst Du sogar mit einfachen Aktionen machen. Aktion hinzufügen, "Mail senden" auswählen und entsprechend den Rest noch bearbeiten

    Hallo an alle!


    Ich habe mal wieder ein kleines Problem: In einer Maske definiere ich mehrere Felder vom Typ Kombinationsfeld.
    Diese werden über die Auswahlliste gefüllt. Für diesen Feldtyp kann ich auch eine Schriftfarbe (wie immer halt) und aber auch die Hintergrundfarbe festlegen. Im Bearbeiten-Modus funktioniert das ganze auch wunderbar. Nur, wenn ich in den Lese-Modus umschalte werden meine Vorgaben alle wieder missachtet. Da ist das Feld dann auf einmal dunkelgrau hinterlegt und mit der Schriftfarbe Schwarz. Ist so natürlich ziemlich schlecht lesbar.
    Kennt einer von euch noch eine Option, mit der ich den Feldern dieses merkwürdige Verhalten abgewöhnen kann? Oder wie ich wenigstens einstelle, das auch zum lesen meine vorgegebenen Farben verwendet werden?


    System ist ND 6.02 auf WinNT

    Klar kannst Du im Script auch eine Entsprechung zum @DBLookup machen. Schau Dir mal die Methode "GetAllDocumentsbyKey" der Klasse "NotesView" an. Hierzu aber auch noch der untenstehende Auszug aus der Designer-Hilfe:


    Normally you wouldn't use an Evaluate statement to improve the performance of your application. A call to an Evaluate uses extra overhead to invoke the formula language compute engine in addition to the LotusScript interpreter. The performance degradation wouldn't normally be noticeable, but if an Evaluate call was executed while looping through thousands of documents, you might be able to measure a difference. However, there is one example of where using an Evaluate statement can actually make your code run faster -- a lot faster: using an Evaluate ({@Dblookup...}) in place of the NotesDatabase method GetAllDocumentsByKey.


    The reason the Evaluate is faster is because the @DbLookup gets values from a view index, without having to loop through and access each document. In contrast, pulling values using GetAllDocumentsByKey requires you to loop through and access each document.



    Ich hoffe, das hilft Dir weiter

    @devileye1:
    Nicht das Du da was falsch verstehst:
    Auf die Art wie oben beschrieben ist das Dokument nicht über ein Leserfeld geschützt. Das was lono007 da gemacht hat ist nur, das dieses Dokument nicht mehr von Usern geöffnet werden kann wenn sie diese Rolle nicht haben.
    Wäre dieses Feld ein echtes Feld vom Typ "Leser", dann würde das Dokument nicht-berechtigten Usern gar nicht angezeigt.


    Bei der obigen Methode wird den Usern nur die Möglichkeit gegeben, bestimmten (anderen) Personen das öffnen des Dokuments zu verbieten. In den Ansichten ist es aber trotzdem noch vorhanden! (was bei lesegeschützten Dokumenten nicht der Fall ist!)

    Wenn Du umgehen willst, das das Dokument überhaupt angezeigt wird, dann setz den Code mit kleinen Änderungen einfach in den QueryOpen.


    Dim db As NotesDatabase
    Dim session As New NotesSession
    Dim doc As Notesdocument
    Dim acl As NotesACL
    Dim entry As NotesACLEntry
    Set db = session.CurrentDatabase
    Set doc = source.document
    Set acl = db.ACL
    Set entry = acl.GetEntry(session.UserName)
    If (entry.IsRoleEnabled("externeMitarbeiter")And doc.Hidden(0)="gesperrt") Then
    Messagebox("Sie besitzen nicht die nötige Rolle, um diese Dokument zu lesen.")
    continue = False
    End If



    Damit wird das ganze Dokument gar nicht erst geöffnet.

    tomthecat


    Ich bin zwar auch nur ein Sklave mit der Pflicht weiter zu leben damit ich mehr arbeiten kann (Geld, was ist denn das???)
    Aber da mein Sklaventreiber heute auswärts ist, plane ich die Revolte und verschwinde. Und zwar genau jetzt *FREU*



    snork
    Ich würde auch mal die komplette View neu machen.
    Ich drück Dir die Daumen das sich das Problem damit löst!


    Schönes Wochenende euch allen.

    tomthecat


    Schee wärs wenn ich nur Halbtags ran müsste.
    Aber wenn ich sonst jeden Tag knapp 10 Stunden schaff, dann kann ich mir auch mal ein paar Rechte rausnehmen find ich :D


    snork


    wenn das von tom nicht funzt, schmeiß doch einfach mal die ganze Aktion weg und schreib sie neu. Vielleicht hat das Ding einfach ne Macke...