Autor Thema: "Infobrief-Zusammenfassung senden" - als LS ?  (Gelesen 12989 mal)

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
"Infobrief-Zusammenfassung senden" - als LS ?
« am: 13.04.10 - 18:28:59 »
Hallo,

als eine der "Einfachen Aktionen" bei einem einfachen Agenten kann man "Infobrief-Zusammenfassung senden" auswählen, die dann per Email
eine Zusammenfassung mit Links zu den individuellen Dokumenten sendet.

Die Zusammenfassung sieht wie eine Tabelle aus und enthält Elemente der entsprechenden Ansicht wie beispielsweise eine einzeilige Beschreibung der Spalten "Datum", "Autor" und "Titel".

FRAGE:

Gibt's eine LotusScript Funktion o.ä., um solche Zusammenfassung zu erstellen und zu versenden?

Gruß
Leo

« Letzte Änderung: 20.04.10 - 14:17:17 von Bruce Willis »
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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #1 am: 13.04.10 - 22:21:01 »
In LotusScript ist das erheblich granularer aufgeteilt (methods, properties) und bietet somit viel mehr Möglichkeiten.

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #2 am: 13.04.10 - 22:52:06 »
In LotusScript ist das erheblich granularer aufgeteilt (methods, properties) und bietet somit viel mehr Möglichkeiten.

D.h. man muss in LotusScript das selber basteln, was man in einem einfachen Agenten als fertige Lösung mit einem Klick auswählen kann.

Schade.

Danke für die schnelle Antwort, Bernhard.

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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #3 am: 13.04.10 - 23:04:09 »
Wieso "schade"? Die Einschränkungen des "Agents für Arme / Eilige" beschreibst Du ja im ersten Ansatz oben schon selber.

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #4 am: 14.04.10 - 12:05:09 »
Wieso "schade"?


wie gesagt:

man muss in LotusScript das selber basteln, was man in einem einfachen Agenten als fertige Lösung mit einem Klick auswählen kann.

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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #5 am: 14.04.10 - 18:12:01 »
Hi,

anbei meine Ergebnisse...

Kann man die Infomail schöner formatieren?
Chr(9)) reicht nicht aus, da die Länge von Inhalten der Spalten sehr unterschiedlich sein kann...

Gruß
Leo

Sub Initialize()
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim message As NotesDocument
   Dim rtitem As variant
      
   Set db = session.currentdatabase
   Set view = db.GetView("LeoAnsicht")
   Set doc = view.GetFirstDocument
   Set message = New NotesDocument(db)
   Set rtitem = New NotesRichTextItem( Message, "Body" )
   
   Message.Form = "Memo"
   Message.Principal = "Bruce Willis/World"   
   Message.SendTo = "Leo/World"
   Message.Subject = "Hello World"   
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddNewLine( 2)
      
   While Not doc Is Nothing   
      Call rtitem.AppendDocLink( doc, "" )
      Call rtitem.AppendText( " " + Left(doc.From(0),10) + Chr(9))
      Call rtitem.AppendText( Left(doc.SendTo(0),10) + Chr(9))
      Call rtitem.AppendText( Left(doc.Subject(0),20) + Chr(9))
      Call rtitem.AppendText(doc.DeliveredDate(0))
      Call rtitem.AddNewLine( 1)
      
      Set doc = view.GetNextDocument(doc)
   Wend
   
   Call rtitem.AppendText( "Best regards" )
   Call rtitem.AddNewLine( 1)
   Call Message.Send( False )
   
End Sub
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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #6 am: 14.04.10 - 23:08:06 »
Klar, man kann die Ruler entsprechend setzen (NotesRichTextParagrahStyle class und "Kinder" davon).
Und dort wirst Du noch einiges mehr finden, was die simple Aktion Dir nicht bietet.

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #7 am: 15.04.10 - 18:41:16 »
Danke, Bernhard.
Ich habe den Code entsprechend erweitert, aber die 3. und 4. Spalten der Infomail kommen trotzdem durcheinander.
Weißt Du, was man noch ändern muss?

Gruß
Leo

Sub Initialize()
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Dim message As NotesDocument
   Dim rtitem As Variant
   Dim pMailAddress As String
      
   Set db = session.currentdatabase
   Set view = db.GetView("LeoAnsicht")
   Set doc = view.GetFirstDocument
   Set message = New NotesDocument(db)
   Set rtitem = New NotesRichTextItem( Message, "Body" )
   
   Dim richStyle As NotesRichTextStyle         ' Leo Style
   Set richStyle = session.CreateRichTextStyle   ' Leo Style
   richstyle.NotesFont = 4                  ' Leo Style - "vorgabe feste breite"
   
   Dim rtpStyle As NotesRichTextParagraphStyle            ' Leo Align Left
   Set rtpStyle = session.CreateRichTextParagraphStyle      ' Leo Align Left
   rtpStyle.Alignment = ALIGN_LEFT                     ' Leo Align Left
   Dim pos As Long                     ' Leo Ruler
   pos = RULER_ONE_CENTIMETER * 7         ' Leo Ruler
   'Call rtpStyle.SetTab(pos, TAB_DECIMAL)   ' Leo Ruler
   Call rtpStyle.SetTab(pos, TAB_LEFT)      ' Leo Ruler
      
   Message.Form = "Memo"
   Message.Principal = pMailAddress   
   Message.Principal = "Bruce Willis/World"
   Message.SendTo = "Leo/World"
   Message.Subject = "Hello World"   
   Call rtitem.AppendStyle(richStyle)   ' Leo Style
   Call rtitem.AppendParagraphStyle(rtpStyle)   ' Leo Align Left
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddNewLine( 2)
      
   While Not doc Is Nothing   
      ' in Common Names konvertieren
      Dim nam As NotesName
      Set nam = session.Createname(doc.From(0))
      Dim nam1 As NotesName
      Set nam1 = session.Createname(doc.SendTo(0))
      
      Call rtitem.AppendDocLink( doc, "" )
      Call rtitem.AppendText( " " + Left( nam.common ,15))
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( Left( nam1.common ,15) )
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( Left(doc.Subject(0),30))
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( doc.DeliveredDate(0))
      Call rtitem.AddNewLine( 1)
      
      Set doc = view.GetNextDocument(doc)
   Wend
   
   Call rtitem.AppendText( "Best regards" )
   Call rtitem.AddNewLine( 1)
   Call Message.Send( False )
   
End Sub
« Letzte Änderung: 15.04.10 - 18:45:50 von Bruce Willis »
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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #8 am: 16.04.10 - 00:09:36 »
Wie wäre es mit dem Setzen eines zweiten und dritten Tabs?

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #9 am: 16.04.10 - 00:21:28 »
Wie wäre es ...?


Bestimmt cool!
Aber wie?

So geht es anscheinend nicht:

   Dim rtpStyle As NotesRichTextParagraphStyle            ' Leo Align Left
   Set rtpStyle = session.CreateRichTextParagraphStyle      ' Leo Align Left
   'rtpStyle.Alignment = ALIGN_LEFT                     ' Leo Align Left
   Dim pos As Long
   Dim interval As Long
   pos = RULER_ONE_CENTIMETER
   interval = RULER_ONE_CENTIMETER * 5
   Call rtpStyle.SetTabs(6, pos, interval, TAB_LEFT)

   Message.Form = "Memo"
   Message.Principal = "Bruce Willis/World"
   Message.SendTo = "Leo/World"
   Message.Subject = "Hello World"   
   Call rtitem.AppendStyle(richStyle)   ' Leo Style
   Call rtitem.AppendParagraphStyle(rtpStyle)   ' Leo Align Left
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddNewLine( 2)
      
   While Not doc Is Nothing   
      ' in Common Names konvertieren
      Dim nam As NotesName
      Set nam = session.Createname(doc.From(0))
      Dim nam1 As NotesName
      Set nam1 = session.Createname(doc.SendTo(0))
      
      Call rtitem.AppendDocLink( doc, "" )
      Call rtitem.AppendText( " " + Left( nam.common ,13))
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( " " + Left( nam1.common ,18) )
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( Left(doc.Subject(0),22))
      Call rtitem.AddTab(1)
      Call rtitem.AppendText( doc.DeliveredDate(0))
      Call rtitem.AddNewLine( 1)
« Letzte Änderung: 16.04.10 - 00:26:49 von Bruce Willis »
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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #10 am: 16.04.10 - 00:34:56 »
Ach Leo ... Wie setzt Du Tabs händisch? Findest Du das in der DesignerHelp nicht wieder?

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #11 am: 16.04.10 - 00:42:48 »
Ach Leo ...

Ach Bernhard... Sag schon, was und wo in meinem Code falsch ist oder fehlt... :)

Wie setzt Du Tabs händisch?

eh... verstehe die Frage nicht...

Findest Du das in der DesignerHelp nicht wieder?
Nein.
Ich habe dort mehrere englische Definitionen sowie Beispiele gefunden aber keine einzige Beschreibung bzw. Erklärung.
nobody is perfect but i'm pretty close 

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #12 am: 16.04.10 - 08:16:36 »
Evt. meint er mit händisch.....
Wenn Du nach einem Text einen Tab über die Tastatur setzt ist zwar der Abstand immer der gleiche
da Du ja aber längeren und kürzeren Text hast kommt es dann zum Versatz.
Du müsstest also die Stelle an der der nächste Text kommt fest vorgeben.

Tab1 = 0
Tab2 = 10
Tab3 = 20

etc.
Wäre jetzt so meine Überlegung.
Boris

P.S Hast Du mal mit TAB_DECIMAL probiert?
« Letzte Änderung: 16.04.10 - 09:07:33 von Kadlec »

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #13 am: 16.04.10 - 16:29:42 »
Hallo Boris,

Evt. meint er mit händisch.....

Danke für Deinen Tipp!

Hast Du mal mit TAB_DECIMAL probiert?

Nein, obwohl ich mit diesem LS Sch ohne einer vernünftigen Anleitung schon etwa eine Stunde experimentiert hatte... :(

Ich probiere es auch mal.

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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #14 am: 16.04.10 - 22:17:31 »
Händisch gibst Du einen Tab nach dem anderen ein - erzähl, was Du willst, aber drei Stück gleichzeitig schaffst auch Du nicht, Leo. Gleiches gilt für das Setzen der Properties der Tabs in der NotesRichTextParagraphStyle class ...

Bernhard
« Letzte Änderung: 16.04.10 - 22:56:24 von koehlerbv »

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #15 am: 16.04.10 - 22:55:19 »
erzähl, was Du willst, aber drei Stück gleichzeitig schaffst auch Du nicht, Leo.


Bernhard, ich möchte überhaupt nichts erzählen sondern eher dich bewegen, etwas zu erzählen.

Und zwar, wie Du diese drei Spalten zuordnen würdest:

   ...
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   Call rtitem.AddTab(1)
   Call rtitem.AppendText( "Hi there")
   ...

Wenn Du das weißt und 5 Min Zeit hast.

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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #16 am: 16.04.10 - 22:58:29 »
Nimms mir nicht übel, Leo, aber ich habe das nun schon mehr als einmal geschrieben. Okay, ein drittes Mal:
- Alle Tabs definieren
- Text schreiben (nach Lust und Laune dann mit Tab-Sprüngen).

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #17 am: 16.04.10 - 23:08:40 »
ich habe das nun schon mehr als einmal geschrieben. Okay, ein drittes Mal:
- Alle Tabs definieren
- Text schreiben

Schade, dass wir aneinander vorbei reden bzw. Du meine Bitte nicht verstehen willst.
In Hilfe zum Designer 8.5.1 ist nirgendwo beschrieben, wie man mehrere Tabs definieren kann.
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: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #18 am: 16.04.10 - 23:21:25 »
Oh Mann, Leo, von "LS Sch" schreiben und dann sowas ...

Setze jeden Tab, den Du haben willst:
Call notesRichTextParagraphStyle.SetTab (3 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (5,5 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (7,85 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (11 * RULER_ONE_CENTIMETER, TAB_LEFT)

Bernhard

Offline Bruce Willis

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.002
  • Geschlecht: Männlich
  • Wer nicht wagt...
Re: "Infobrief-Zusammenfassung senden" - als LS ?
« Antwort #19 am: 16.04.10 - 23:36:55 »
Oh Mann, Leo, von "LS Sch" schreiben und dann sowas ...

Oh Mann, Bernhard, Du ließt also doch aufmerksam alles was ich schreibe... ;)

Setze jeden Tab, den Du haben willst:
Call notesRichTextParagraphStyle.SetTab (3 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (5,5 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (7,85 * RULER_ONE_CENTIMETER, TAB_LEFT)
Call notesRichTextParagraphStyle.SetTab (11 * RULER_ONE_CENTIMETER, TAB_LEFT)

Vielen Dank!  :knuddel:
Ich werde es morgen probieren.

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

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz