Autor Thema: Kalender Export per Lotus Notes Agent  (Gelesen 10342 mal)

Offline fettehenne

  • Frischling
  • *
  • Beiträge: 4
Kalender Export per Lotus Notes Agent
« am: 24.08.11 - 07:39:13 »
Ich würde gern einen Lotus Notes Agent erstellen, der mir periodisch einen Kalender Export im "Structured Text"-Format durchführt. Der nachfolgende Code funktioniert soweit ganz gut. Allerdings kommt bei Ausführung immer das übliche Popup mit der Abfrage weiterer Parameter wie im angehängten Screenshot zu sehen.

Code
@Command([OpenView]; "Calendar") ;
@Command([FileExport]; "Structured Text"; "N:\\notes_export.txt")

Nun meine Frage: Wie kann ich die Parameter am besten vorher schon setzen, so dass das Popup nicht mehr angezeigt werden muss? Ist das überhaupt möglich?

Schonmal vielen Dank im Voraus!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #1 am: 25.08.11 - 21:41:36 »
@Commands bilden seit R2 die Menüzeilenbefehle nach. Vulgo: Damit hast Du keine Chance, das, was die Menübefehle auch bringen, zu unterdrücken.
Andererseits bietet Dir LotusScript (oder Java oder Assembler oder C oder C++ oder ...) die Möglichkeit, Dir den Export Deiner Wahl selbst zu bauen (Notes ist eben Middleware).

HTH,
Bernhard

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #2 am: 25.08.11 - 21:48:34 »
Nachtrag: Structured text ist nun kein besonders gängiges Format. Willst Du irgendetwas innerhalb von Notes erreichen? Wenn ja: Das geht ja nun wesentlich einfacher. Sag einfach an, wenn dem so ist - Hilfe ist Dir hier gewiss.

Weiters: Mit "fettehenne" als Nickname machst Du Dir hinsichtlich Motivation zur Hilfe nicht unbedingt Freunde. Lies Dir nochmal unsere Forenregeln durch. Du musst nicht, aber ... es wirkt, wenn man nicht mehr die "fettehenne" ist  ;)

Weiters - in Bezug zu der von Dir genannten Website in Deinem Profil: Ich habe noch nie eine Normal-Tastatur in der Hand gehabt, der irgendeine Taste der vier Grundrechenarten gefehlt hat. Genau im Gegensatz zu der dort genannten These hatten die von mir benutzten oder gesehenen "Bedieneinheiten" (und das waren auch Tastaturen im Sinne des Wortes) der Komplexe S-75, S-200 und S-300 (bitte selber googeln) in der Mehrzahl tatsächlich keine (vollständigen) Tasten für die Grundrechenarten. Zum potentiellen Töten war das auch überhaupt nicht erforderlich.

Bernhard

Offline fettehenne

  • Frischling
  • *
  • Beiträge: 4
Re: Kalender Export per Lotus Notes Agent
« Antwort #3 am: 16.09.11 - 15:34:48 »
Vielen Dank Bernhard für Deine ausführlichen Erläuterungen. Was ich erreichen möchte ist ein Agent, der mir alle Termine aus dem Kalender in eine Textdatei schreibt. Wichtig ist eben das Format "Structured Text". Ziel ist es den Agenten zeitgesteuert (ohne eine Interaktion mit dem Benutzer) die Exportdatei zu erstellen.

Zitat
Andererseits bietet Dir LotusScript (oder Java oder Assembler oder C oder C++ oder ...) die Möglichkeit, Dir den Export Deiner Wahl selbst zu bauen (Notes ist eben Middleware).

Gibt es irgendwo ein Beispiel für den Export eine Kalenders bzw. Termins als "Structured Text" per Lotus Script?

Zitat
Weiters: Mit "fettehenne" als Nickname machst Du Dir hinsichtlich Motivation zur Hilfe nicht unbedingt Freunde. Lies Dir nochmal unsere Forenregeln durch. Du musst nicht, aber ... es wirkt, wenn man nicht mehr die "fettehenne" ist  Wink

Naja, den Nickname nutze ich bereits knapp 20 Jahre, so dass es mir nicht in den Sinn käme diesen abzulegen. Zu mal der Nickname meinem Familiennamen entstammt ;-)

Zitat
Weiters - in Bezug zu der von Dir genannten Website in Deinem Profil: Ich habe noch nie eine Normal-Tastatur in der Hand gehabt, der irgendeine Taste der vier Grundrechenarten gefehlt hat. Genau im Gegensatz zu der dort genannten These hatten die von mir benutzten oder gesehenen "Bedieneinheiten" (und das waren auch Tastaturen im Sinne des Wortes) der Komplexe S-75, S-200 und S-300 (bitte selber googeln) in der Mehrzahl tatsächlich keine (vollständigen) Tasten für die Grundrechenarten. Zum potentiellen Töten war das auch überhaupt nicht erforderlich.

Diesbezüglich ist zunächst zu definieren, ob ein Bindestrich ebenfalls ein Minus darstellt... Erst wenn diese Definition erfolgt ist, kann die o.q. Aussage qualifiziert werden :-D


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #4 am: 16.09.11 - 15:44:35 »
Gibt es irgendwo ein Beispiel für den Export eine Kalenders bzw. Termins als "Structured Text" per Lotus Script?
Vielleicht, aber nicht besonders wahrscheinlich - wer braucht das schon.
A-Bär: Du kannst auf die Suche gehen nach LotusScript-Code für den Export in das ICS-Format - das gibt es zuhauf. Und damit bist Du ja schon ganz nah dran.

Bernhard

Offline fettehenne

  • Frischling
  • *
  • Beiträge: 4
Re: Kalender Export per Lotus Notes Agent
« Antwort #5 am: 16.09.11 - 18:56:30 »
Zitat
Du kannst auf die Suche gehen nach LotusScript-Code für den Export in das ICS-Format - das gibt es zuhauf. Und damit bist Du ja schon ganz nah dran.

Das habe ich gemacht und so langsam nähere ich mich der Lösung. Folgendes ist bisher dabei rausgekommen:

Code
Sub Initialize
	
	Dim session As New NotesSession 
	
	Set db = session.CurrentDatabase 
	Set col = db.UnprocessedDocuments
	
	outputFile = Freefile() 
	Open "C:\\NotesCalendar.txt" For Output As outputFile 
	
	Set doc = col.GetFirstDocument 
	While Not (doc Is Nothing) 
		
		Set startDate = New NotesDateTime(doc.StartDateTime(0)) 
		Set endDate = New NotesDateTime(doc.EndDateTime(0))
		
		Print #outputFile, "Subject: " &  doc.Subject(0) 
		
		Print #outputFile, "StartDate: " & startDate.DateOnly & " " & startDate.TimeOnly
		Print #outputFile, "EndDate: " & endDate.DateOnly & " " & endDate.TimeOnly
		
		Print #outputFile, "Location: " & doc.Location(0)
		Print #outputFile, "Room: " & doc.Room(0)
		Print #outputFile, "ApptUNID: " & doc.ApptUNID(0)
		Print #outputFile, "AppointmentType: " & doc.AppointmentType(0)		
		Print #outputFile, "$Chair: " & doc.Chair(0)
		Print #outputFile, "$From: " & doc.From(0)
		
		For i=Lbound(doc.INetRequiredNames) To Ubound(doc.INetRequiredNames)
			str_INetRequiredNames = str_INetRequiredNames & Cstr(doc.INetRequiredNames(i)) & ", "
		Next
		Print #outputFile, "$INetRequiredNames: " & str_INetRequiredNames
		
		For i=Lbound(doc.RequiredAttendees) To Ubound(doc.RequiredAttendees)
			str_RequiredAttendees = str_RequiredAttendees & Cstr(doc.RequiredAttendees(i)) & ", "
		Next
		Print #outputFile, "$RequiredAttendees: " & str_RequiredAttendees

		' Funzt noch nicht
		Print #outputFile, "$PublicAccess: " & doc.PublicAccess(0)
		Print #outputFile, "$Alarm: " & doc.Alarm(0)
		Print #outputFile, "$AlarmOffset: " & doc.AlarmOffset(0)	
		
		
		' Ende des Termins markieren über "\f"
		Print #outputFile, Chr(12) 
		
		Set doc = col.GetNextDocument(doc) 
	Wend
	
	Close outputFile
	
End Sub

Leider liefern mir die letzten drei (PublicAccess, Alarm, AlarmOffset) nichts zurück, obwohl über den Standard-Export als "Structured Text" hätte etwas kommen müssen.

SOLL (über den Standard Export)
Code
$Alarm:  1
$AlarmOffset:  -30
$PublicAccess:  1

IST (über den Lotus Script Agent)
Code
$Alarm: 
$AlarmOffset:
$PublicAccess: 

Greife ich da evtl. falsch drauf zu? Wo könnte denn hier der Hund begraben liegen?

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #6 am: 16.09.11 - 19:01:17 »
Du hast das unscheinbare "$"-Symbol aber schon bemerkt, Adam?

Um Dich nicht auf das nächste Glatteis zu schicken: In Verbindung mit dem "$"-Symbol musst du bei der Notation die Mathilde voranschicken, also so:
NotesDocument.~$Alarm (0).

HTH,
Bernhard

Offline fettehenne

  • Frischling
  • *
  • Beiträge: 4
Re: Kalender Export per Lotus Notes Agent
« Antwort #7 am: 16.09.11 - 19:06:18 »
Bernhard, Du bist der Beste :knuddel: Da hätte ich ja lange suchen können...
Vielen Dank dafür!

BTW: Wofür steht eigentlich HTH?

Noch ein paar Fragen:
Wie kann ich den nachfolgenden Code in eine eigene Funktion auslagern und aufrufen? Kann ich die Funktion dann in die gleiche Datei hinter der Sub-Methode (also hinter "End Sub") schreiben? Und wie würde ich sie dann aus meinem o.g. Codebeispiel aufrufen?

Code
		str_RequiredAttendees = ""
		For i=Lbound(doc.RequiredAttendees) To Ubound(doc.RequiredAttendees)
			str_RequiredAttendees = str_RequiredAttendees & Cstr(doc.RequiredAttendees(i)) & ", "
		Next
		Print #outputFile, "$RequiredAttendees: " & str_RequiredAttendees

Schonmal vielen Dank im Voraus, Adam
« Letzte Änderung: 16.09.11 - 19:35:43 von fettehenne »

Offline WernerMo

  • @Notes Preisträger
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.050
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #8 am: 16.09.11 - 20:06:03 »
Hallo,


BTW: Wofür steht eigentlich HTH?

"Hope This Helps“ („Hoffe, das hilft“)
obwohl man bei Bernhard auch mit "Heavy Transport Helicopter" rechnen könnte ;-)

Gruß aus Weißenburg
Werner
Gruß Werner
  o                                                  o   
 /@\  Nächster @Notes-Stammtisch  /@\  online Sept. 2020?
_/_\__________________________/_\_ Details folgen.

Offline Bastel123

  • Senior Mitglied
  • ****
  • Beiträge: 355
  • Geschlecht: Männlich
Mathilde
« Antwort #9 am: 17.09.11 - 08:18:24 »
Hallo Bernhard,

der Tip mit Mathilde ist gut. Er hat mir (vorerst) weitere graue Haare erspart.

Danke
Seabstian
Gruß Sebastian
-----------------------------------------------------
Kaum macht man's richtig, schon funktioniert's.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Kalender Export per Lotus Notes Agent
« Antwort #10 am: 19.09.11 - 18:34:42 »
Code
[quote author=fettehenne link=topic=52422.msg338842#msg338842 date=1316192778]
Wie kann ich den nachfolgenden Code in eine eigene Funktion auslagern und aufrufen? Kann ich die Funktion dann in die gleiche Datei hinter der Sub-Methode (also hinter "End Sub") schreiben? Und wie würde ich sie dann aus meinem o.g. Codebeispiel aufrufen?

Ja, das kannst Du machen. Du kannst Dich dazu auch in die Options Section stellen. Du solltest aber auch über ScriptLibraries nachdenken (siehe DesignerHelp)

Bernhard

PS: Ich zähle sicherlich zu den Guten (sage ich jetzt mal ganz selbstbewusst), aber vom "Besten" bin ich ein gutes Stück weg. Aber ich arbeite nach wie vor daran  :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz