Beiträge von Bernd99

    Hallo,


    weiß jemand wie ich es per Script steuern kann das man zu jedem Dokument nur genau ein Antwortdokument erzeugen kann?


    Ich habe in einer Anschicht einen Button mit dem das Antwortdok erzeugt wird.


    Ich bitte um ausführliche Hilfe, bitte nicht so eine krytische Antwort von der ich als Anfänger nur die Hälfte verstehe.


    Schon mal vielen Dank im Voraus.


    Bernd

    Hallo,


    ich habe folgendes Problem. Wenn ich mit folgendem Script einen Verteiler auflöse, also mir die darin enthaltenen Namen (Usernamen) anzeigen lasse funktioniert das nur solange Namen im Verteiler stehen. Steht im Verteiler ein anderer Verteiler funktioniert die Auflösung nicht mehr.
    Wie kann ich den Verteiler im Verteiler erkennen und auch auflösen?


    Hier mal das Script:



    Dim GetMembersinGroup As Variant
    Dim GroupName As Variant
    Dim session As New NotesSession
    Dim db As New NotesDatabase("008Noteskal01", "Names.NSF")
    Dim doc As NotesDocument
    Dim view As NotesView
    Dim x As Variant
    Dim gn As Variant

    Dim workspace As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim item As NotesItem
    Set uidoc = workspace.CurrentDocument
    Call uidoc.Refresh
    Set note = uidoc.Document
    Set uidoc = workspace.CurrentDocument

    gn = uidoc.FieldGetText( "VerteilerSchulungsliste" )

    Set view=Db.GetView("($VIMGroups)")
    Set doc=View.GetDocumentByKey(GN)


    If Not(doc Is Nothing) Then

    GetMembersinGroup= Doc.GetItemValue("Members")


    End If

    GroupLowerBound1= Lbound(GetMembersinGroup)
    GroupUpperBound1= Ubound(GetMembersinGroup)

    Dim text As String
    text = "S_Name_"


    For i =GroupLowerBound1 To GroupUpperBound1
    text = text & i
    Set item=note.ReplaceItemValue(text,GetMembersinGroup(i))
    text="S_Name_"
    Next i



    Ich schreibe die Namen aus dem Verteiler in Textfelder einer Tabelle. (S_Name_1 usw)



    Könnt Ihr mir helfen? Bitte aber konkret mit Scriptzeilen.


    Schon mal vielen Dank im Voraus.


    Bernd

    HAllo Notesfreunde,


    ich stehe mal wieder auf der Leitung.


    Wie kann man in Notes Script die Kalenderwoche berechnen.


    Leider hat die Forumssuche nichts erbracht.



    Für Freunde der Formelsprache hier eine Lösung:


    REM {Feld Subject mit der vorhergehenden Kalenderwoche füllen};


    _Test:="Weekly Production Report - Issue " +@Text(@Year(@Today))+" / ";


    REM {Berechnung der Kalenderwoche des Tages >>Datum<<};


    Datum :=@Today;
    Wochenstart := @Adjust(Datum; 0;0; -@Weekday(Datum)+@If(@Weekday(Datum)=1;-5;2); 0;0;0);
    ErsterJanuar := @Date(@Year(Wochenstart); 1; 1);
    ErsterWochentag := @Weekday(ErsterJanuar);
    MinutenProTag := 60 * 60 * 24;
    TagImJahr := (Wochenstart - ErsterJanuar) / MinutenProTag;
    Kalenderwoche := 1 + @Round(TagImJahr / 7);
    KW := @If((ErsterWochenTag *= 2:3:4) & (Kalenderwoche = 53); 1; Kalenderwoche);
    KW:=@If(KW > 1; KW -1;KW);


    @SetField("Subject"; _Test+" KW "+@Text(KW));"";



    Das hätte ich gerne in Script.


    Danke im Voraus


    Bernd99

    Hallo,
    ich stehe mal wieder auf der Leitung.


    Ich habe in einer Maske beim OpenQuery ein Script.


    Das Script soll NICHT laufen wenn ein neues Doc angelegt wird.


    Frei formuliert etwa so


    isNewDoc then
    exit sub


    Doch wie realisiert man das in Script in OueryOpen.


    Ich bin jetzt seit 8 Uhr (morgend) an verschiedenen Baustellen.
    Ich glaub es wird Zeit fürs Bett.


    Schon mal Danke


    Gruss
    Bernd

    Hallo Taurec,


    danke für die Antwort - es funktioniert einwandfrei.


    Hier meine Lösung:



    Dim session As New notessession

    Dim db As NotesDatabase
    Dim view As NotesView
    Dim collection As NotesDocumentCollection
    Dim doc As NotesDocument

    Set db = session.CurrentDatabase
    Set collection = db.UnprocessedDocuments
    Set doc = collection.GetFirstDocument()

    While Not(doc Is Nothing)
    Set item = doc.GetFirstItem( "cAutor" )
    If item.Contains( session.CommonUsername ) Then
    doc.Eintrag_schliessen = "0"
    Call doc.Save( False, True )
    Else
    Messagebox ( "Sie sind nicht der Schichtersteller und haben somit keine Rechte diese Schicht zu editieren! ")
    End If
    Set doc = collection.GetNextDocument(doc)
    Wend



    Gruss Bernd

    Hallo ich habe da ein kleines Problem.


    Ich habe eine View mit einer Schaltfläche -Schicht wieder öffnen


    Wenn die Schaltfläche angeklickt wird läuft folgender Agent:
    +++++++++++++++++++++++++++++++++++++++
    Dim x As Variant
    Dim y As String
    Dim z As String
    Dim session As New notessession

    Dim db As NotesDatabase
    Dim view As NotesView
    Dim doc As NotesDocument

    Set db = session.CurrentDatabase
    Set view = db.GetView("Schi1")
    Set doc = view.GetFirstDocument


    x = doc.GetItemValue("cAutor") 'hier brauche ich den namen aus der ansicht
    y=session.CommonUsername ' ist der Kurzname
    z= x(0)
    If z<> y Then
    Messagebox ( "Sie sind nicht der Schichtersteller und haben somit keine Rechte diese Schicht zu editieren! ")
    continue = False

    Else
    doc.ReplaceItemValue "Eintrag_schliessen",0
    Exit Sub
    End If
    +++++++++++++++++++++++++++++++++++++++++


    Der macht im Prinzip nur einen Vergleich mit dem in Notes angemeldeten User und dem Ersteller des Schichtdokuments.


    Da aber in der View drei Hauptdoks und ein paar Antwortdoks liegen funktioniert der Agent nich wie gewünscht.


    Ich möchte das der Agent nur das ausgewählte Doc bearbeitet,
    leider weis ich jetzt nicht weiter.


    Der Fehler liegt hier: Set doc = view.GetFirstDocument


    Ich stehe aber zur Zeit auf der Leitung und weis nicht was ich machen soll.


    Hoffentlich weiß jemand von euch Rat.


    Gruss Bernd

    Hallo,


    ich habe im Querysave eines Dokumentes eine Berechnung laufen die mir einen Status für ein Dokument erzeugt.


    Das läuft jetzt schon allles so zwei Jahre ohne Probleme.


    Wenn eine Änderung im Dok erfolgt wir beim Querysave wieder ein neuer Status erzeugt usw.


    Heute habe ich gemerkt (da ich eine Änderung machen wollte) das der Querysave nur noch funktioniert wenn ich ein neues Dokument anlege. Beim ersten speichern geht es und danach geht es nicht mehr.
    Selbst der Debugger springt nicht mehr ins Querysave ??????!!


    Hatt jemand eine Idee ????


    Gruss


    Bernd99 :pint:

    LN4ever,


    erstmal vielen Dank für die Antwort. Leider konnte ich mich nicht früher melden.


    Natürlich benutzen wir SMTP, ich wollte nur keine Antworten in diese Richtung.


    Sendmail ist bei uns nicht erlaubt bzw die Firewall blockt die Ports.


    Ich möchte schon eine "saubere" Lösung über VBA oder ähnlich implementieren.



    Gruss


    Bernd :pint:

    Hallo,


    ich habe folgendes Problem:


    In Access werden Arbeitsaufträge abgemeldet. Wenn ein Arbeitsauftrag fertig ist soll über Notes eine Mail an den Auftraggeber versendet werden.
    Wir haben kein SMTP.


    Wie könnte ich daas realisieren?


    In Access habe ich den Benutzernamen = Notesnamen
    und eine ArbeitsauftragsNr.


    Es sollte wie folgt aussehen



    Empfänger: Bernd Schmitz


    Subject: Der Arbeitsauftrag Nr 5555 ist fertiggestellt!



    Das würde mir schon reichen.



    Schon mal Danke im Vorraus :)

    Hallo RockWilder,


    das zu kopierende Doc hat noch ein paar Antwortdocs und eine eindeutige Nr.


    Nach dem duplizieren wird das neue Doc vom Anwender geöffnet und eine neue laufende Nr vergeben(automatisch). Jetzt werden vom Anwender noch ein paar Felder geändert und das wars.


    Damit die Pflichtfelder welche in dem Doc existieren nicht durch das duplizieren schon vorbelegt sind möchte ich diese nach dem duplizieren noch löschen.


    Gruss
    Bernd99 :)

    Hallo Gemeinde,


    wie kann man denn einen Beitrag als "Erledigt" kennzeichnen ?


    Ich hoffe die Frage wurde nicht schon alzu oft gestellt oder irgendwo allgemein geklärt.



    Gruss


    Bernd99

    Hallo,


    ich möchte gerne in einer Ansicht mit Hilfe der Formelsprache folgendes verwirklichen:


    Ich markiere eine Dok manuell.
    dann mit Copy und Paste duplizieren und dann in dem dupliziertem Dok einige Felder leeren.



    Ich habe mit euerer Hilfe folgendes gemacht:


    Ich habe eine Schaltfläche in der Ansicht erzeugt die folgende Befehle ausführt.


    @Command([EditCopy]);
    @Command([EditPaste])


    damit dupliziere ich das Dok, das klappt auch wunderbar.


    Jetzt möchte ich in dem neuen Dok noch zwei Felder leeren


    Field Ofen:= ""
    Field Uhrzeit:=""
    etc.


    wenn ich den Befehl an obere Anhänge wir leider immer das original Dok verändert und nicht die Kopie.


    Wie kann ich die Kopie auswählen und dann bearbeiten ??



    Schon mal vielen Dank im Voraus. :)

    Hallo Leute,


    ich finde einfach keine Möglichkeit in der Notes Formelsprache um ein Dokument zu kopieren.
    Ich möchte per Aktion ein Dok in einer Ansicht , welches markiert ist kopieren.


    Als Einfache Aktion geht das sehr einfach.



    Die rechte Maustaste -copy and paste kann ich meinen Usern nicht unterjubeln.



    Am besten per Formelsprache dann kann ich über @if auch noch eine Bedingung abfragen.


    Ich sehe also vor lauter Wald leider keine Bäume.


    Warum gibts denn kein @command ([Cpoy]; docname)



    Gruss Bernd99 :-?

    Hallo,


    ich habe noch ein sekundäres Problem:


    In meinem Script gibt es die Variable Mailan (variant)


    Mailan="Verteiler FP-FA-FR - Technik"


    doc.SendTo = Mailan


    das funktioniert mit einem Mailverteiler


    Ich möchte das Doc an drei Mailverteiler senden.


    Ich habe schon alles mögliche probiert, wie z.B.


    Mailan="verteiler1"+"Verteiler2" oder
    Mailan="verteiler1"+";"+"verteiler2"


    usw usw es kommt bei einem Fehler immer die Meldung "Keine Übereinstimmung im Adressbuch gefunden"



    Wo liegt da mein Denkfehler ? :-?



    Schon mal vielen Dank im Voraus.



    Bernd99

    Ja, danke das wars:



    Set doc2=uidoc.document
    .
    .
    Call rtitem.appenddoclink (doc2, "")


    Ich hatte das auch schon probiert, aber einen Tippfehler im Script und darum gings nicht.


    Typischer Fall von Betriebsblind. ;)


    Vielen Dank nochmal an alle


    Gruss


    Bernd99 :pint: