Autor Thema: Periodischer LS Agent  (Gelesen 7222 mal)

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Periodischer LS Agent
« am: 27.11.08 - 13:30:45 »
Hallo,

ich hab eine Ansicht, wo mehrere Dokumente angezeigt werden.
Zwei Felder in jedem Dokument müssen ausgelesen werden:
UserR und MailThema

Ein Agent überprüft täglich, ob dort welche Dokumente gibt, und verschickt gegebenfalls Emails.

Mein alter FormelSprache-Agent funktioniert enwandfrei:

@MailSend (UserR; ""; ""; MailThema ; "";
" Hallo " + UserR + " !" );
SELECT  @All


Ich versuche jetzt, einen ähnichen LS-Agenten zu erstellen, bekomme aber die Fehlermeldung "Object variable not set" bei der folgenden Zeile:

Set doc=uidoc.Document

Wie soll der u.g. Agent richtig aussehen?

Danke und Gruß
Leo

Sub Initialize
   Dim ws As New notesuiworkspace
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim UIDoc As notesuidocument  'Aktuelles Dokument im Frontend
   Dim doc As notesdocument   'Aktuelles Dokument im Backend
   
   Set UIdoc=ws.CurrentDocument
   Set doc=uidoc.Document
   Set db= session.CurrentDatabase
   Set Message=New NotesDocument(db)    'Mail erstellen
   Set rtitem = New NotesRichTextItem( Message, "Body" )
   
   UserR=uidoc.FieldGetText("UserR")
   MailThema= uidoc.FieldGetText("MailThema")
   
   Message.Form="Memo"
   Message.Principal="Bruce Willis/World"
   
   Message.SendTo=doc.UserR
   Message.Subject = MailThema
   Call rtitem.AppendText( "Hallo ")
   Call rtitem.AppendText( UserR)
   Call rtitem.AppendText(" !")
   Call Message.Send( False )
End Sub


nobody is perfect but i'm pretty close 

Driri

  • Gast
Re: Periodischer LS Agent
« Antwort #1 am: 27.11.08 - 13:46:23 »
In periodischen Agenten kann kein UI verwendet werden. Du könntest z.B. via db.Search eine DocumentCollection erzeugen, die alle Dokumente enthält, die den Bedingungen entsprechen. Über diese Collection läßt Du dann eine Schleife laufen und frühstückst darin die Dokumente aus der Collection der Reihe nach ab.

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #2 am: 27.11.08 - 14:01:11 »
Danke, Ingo.

Es scheint also, der LS Agent wird 10fach so lang wie FS Agent... :(
Gut zu wissen...

Gruß
Leo
nobody is perfect but i'm pretty close 

Driri

  • Gast
Re: Periodischer LS Agent
« Antwort #3 am: 27.11.08 - 14:03:17 »
Script ist nicht immer einfacher und besser  ;)

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Periodischer LS Agent
« Antwort #4 am: 27.11.08 - 14:03:54 »
Zitat
10fach
Wie kommst Du auf diesen Wert?

Wie lange hat es denn vorher gedauert? Wie lange mit LS?
Wie hast Du denn die Schleife gebaut, die die Docs verarbeitet?

Doch wohl nicht mit getNthDocument(..) ?

Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Driri

  • Gast
Re: Periodischer LS Agent
« Antwort #5 am: 27.11.08 - 14:04:57 »
Ich hatte das "10fach" jetzt eher auf die Anzahl Codezeilen bezogen.

Offline dirk_2909

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.173
  • Geschlecht: Männlich
  • Expand your Notes Client with ECM functionality..
    • d.velop
Re: Periodischer LS Agent
« Antwort #6 am: 27.11.08 - 14:05:44 »
Ja OK. Kann er auch meinen ?! …habe nicht so genau gelesen...
Dirk

[IBM CLP R5]
[IBM CAD 6/6.5]
[IBM CAD 7]
[IBM CAD 8]


"Nein!! … Es genügt nicht Mails in einen anderen Ordner oder Datenbank zu verschieben, um sie zu archivieren!"

   
Disclaimer:
Ich Antworte nach besten Wissen und Gewissen. Sollte sich jemand durch meine Antwort persönlich angegriffen fühlen, ist dies nicht meine Absicht!
Ich bin auch nur ein Mensch, der Fehler machen kann. ....

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #7 am: 27.11.08 - 15:32:46 »
Zitat
10fach
Wie kommst Du auf diesen Wert?
Auf einen Blick die Anzahl der Zeilen abgeschätzt.
Vielleicht auch mehr als 10...


Wie lange hat es denn vorher gedauert?
Ich habe doch nicht "lange" oder "langsam" sondern "lang" geschrieben...


Wie lange mit LS?
Das weiß ich nicht, da ich den LS Agenten nicht habe.

Würdest Du bitte deine Version hier präsentieren, damit wir die Zeiten vergleichen können?


nobody is perfect but i'm pretty close 

Offline Fedaykin

  • Aktives Mitglied
  • ***
  • Beiträge: 229
  • Geschlecht: Männlich
  • Ya Hya Chouhada!
Re: Periodischer LS Agent
« Antwort #8 am: 27.11.08 - 16:34:57 »
Hallo Leo

So was in diese Richtung:

Sub Initialize
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim docMemo As NotesDocument
   Dim rtBody As NotesRichTextItem
   
   Set db=session.CurrentDatabase
   Set view=db.GetView("vwAllDocs")
   Set doc=view.GetFirstDocument
   Do Until doc Is Nothing
      Set docMemo=New NotesDocument(db)
      docMemo.Form="Memo"
      docMemo.Principal="Remo Linter/LLB"
      docMemo.SendTo=doc.UserR
      docMemo.Subject=doc.MailThema
      
      Set rtBody=docMemo.CreateRichTextItem("Body")
      rtBody.AppendText "Hallo "
      rtBody.AppendText doc.UserR(0)
      rtBody.AppendText " !"
      
      docMemo.Send False
      
      Set doc=view.GetNextDocument(doc)
   Loop
End Sub


Gruss
Remo
Ich sage Euch: "Man muss noch Chaos in sich haben, um einen tanzenden Stern gebären zu können."

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #9 am: 27.11.08 - 18:20:36 »
Hallo Leo
So was in diese Richtung...

Hallo Remo,

VIELEN DANK !!!

 :knuddel:

Es funktioniert!

Der Tag ist gerettet! ;)

Gruß
Leo
nobody is perfect but i'm pretty close 

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #10 am: 28.11.08 - 12:24:56 »
Hallo,

was kann in den o.g. Agenten von Remo eintragen, damit auch ein Link zu dem Dokument per Email verschickt wird?

Das Folgende funktioniert leider nicht:

   Call rtitem.AppendDocLink( doc, "" )

Vielen Dank im Voraus!

Gruß
Leo
nobody is perfect but i'm pretty close 

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Periodischer LS Agent
« Antwort #11 am: 28.11.08 - 12:28:20 »
Hast Du denn ein Objekt namens "doc"?

Bernhard

Driri

  • Gast
Re: Periodischer LS Agent
« Antwort #12 am: 28.11.08 - 12:29:41 »
Wenn Du Remos Script 1:1 übernommen hast, mußt Du statt rtitem schon rtBody benutzen  ;)

Call rtBody.AppendDocLink( doc, "" )

Glombi

  • Gast
Re: Periodischer LS Agent
« Antwort #13 am: 28.11.08 - 12:30:20 »
Hast Du eine Vorgabeansicht in der Datenbank ?

Andreas

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #14 am: 28.11.08 - 14:09:27 »
Hallo Bernhard,

Hast Du denn ein Objekt namens "doc"?

Nein.
Nur was in dem tollen Agenten von Remo steht.

Danke fürs Interesse.  ;)

Gruß
Leo
nobody is perfect but i'm pretty close 

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #15 am: 28.11.08 - 14:10:54 »
Hallo Andreas,

Hast Du eine Vorgabeansicht in der Datenbank ?

Yes.

Thanks for your interest.  ;)

Regards
Leo
nobody is perfect but i'm pretty close 

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #16 am: 28.11.08 - 14:13:03 »
Hallo Ingo,

Call rtBody.AppendDocLink( doc, "" )

VIELEN DANK
für Deine schnelle Hilfe!!!

 :knuddel:

Wünsche Dir ein schönes Wochenende!

Gruß
Leo
nobody is perfect but i'm pretty close 

Offline atbits

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • sei Du selbst die Veränderung, die Du Dir wünschst
    • atBits
Re: Periodischer LS Agent
« Antwort #17 am: 05.12.08 - 09:15:04 »
Mit Option Declare wär das nicht passiert

Grüße David
David Schiffer
================================
atBits GmbH & Co. KG - https://atbits.de
im Einsatz: Lotus Domino 8.5, 9, 10

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: Periodischer LS Agent
« Antwort #18 am: 05.12.08 - 21:01:52 »
Mit Option Declare wär das nicht passiert


Poste mal hier Deine Version.

Gruß
Leo
nobody is perfect but i'm pretty close 

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Periodischer LS Agent
« Antwort #19 am: 05.12.08 - 23:45:40 »
Leo, schreib' Dir Deine Version selber  ;)

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz