Domino 9 und frühere Versionen > ND6: Entwicklung
Termin im Kalender in Lotus script
Ralf_M_Petter:
Hat jemand schon mal von Script aus einen Klaendereintrag (Termin) in der Maildatenbank erzeugt. Falls jemand einen kleinen Beispielcode hätte würde ich mich sehr freuen. Das script sollte womöglichst sowohl mit R5 als auch mit R6 funktionieren. Danke im voraus für eure Hilfe!
Grüße
Ralf M Petter
MartinG:
Dieses Script habe ich mal aus der Sandbox geholt und setze es auch ein. Ist allerdings alles hartcodiert - wobei Du ja glaube ich einiges ScriptKnowHow hast um das entsprechend anzupassen...
Falls Du etwas damit anfangen kannst wäre es klasse wenn Du mir kurz posten könntest wie ich Feldwerte anstelle der Hartcodierten Dinger da reinbringe. Bin leider kein Scriptmann...
REM Quick and dirty code to add business holidays to the user's calendar
REM This code will add your business holidays to the user's calendar by using front end classes and allowing the form's built in funtionality to handle the validation
Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As New NotesDatabase ("","")
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim userName As New notesname(session.username)
Dim dbfilename As String
Dim dbserver As String
Dim value As Integer
Call db.OpenMail
dbfilename=db.filepath
dbserver = db.server
value = Messagebox ("Möchten Sie diesen Termin in Ihren Kalender eintragen", (4+32+0+0), "Termin eintragen")
If (value = 6) Then
'*****************Do this chunk of code for each holiday in the year**************************
Set uidoc = ws.ComposeDocument (dbserver,dbfilename,"Appointment")
Call uidoc.FieldSetText("Subject","Mitarbeiterweiterbildung - 1.1. Die neue ESD-Norm ")
Call uidoc.FieldSetText("StartDate","22/10/2002")
Call uidoc.FieldSetText("AppointmentType","0")
Call uidoc.FieldSetText("StartTime","16:30")
Call uidoc.FieldSetText("EndTime","18:00")
Call uidoc.Save()
Call uidoc.Close()
'****************************************************************************************************
Messagebox ("Termin wurde im Kalender eingetragen.")
Else
Messagebox ("Es wurde kein Eintrag im Kalender erzeugt....")
End If
End Sub
Ralf_M_Petter:
Danke für die Antwort, aber ich habe vergessen, dass ich den Kalendereintrag nicht im Fronent sondern im Backend erstellen will. Damit auch eine Erstellung durch einen Agenten der am Server läuft möglich ist. Vielleicht kann dazu auch jemand ein script zur Verfügung stellen. Es würden mir auch eine Liste der Felder genügen die mit Inhalt versehen werden müssen. Es kann ja nicht gut sein, dass man wirklich alle Felder mit Inhalten versehen muß.
Grüße
Ralf
MartinG:
Hallo Ralf,
keine ja keine Ahnung von Front-oder Backend, aber sind die Felder nicht diesselben?
So wie ich das sehe braucht musst Du doch nur die Felder Subject, StartDatei, AppointmentType, StartTime, EndTime füllen
Axel_Janssen:
@MartinG: das ist nicht egal. Manche Felder haben default Werte. Die werden zwar übers Frontend gesetzt aber nicht wenn man die über Script erzeugt.
Für wirklich berechnete Felder kann man sich mit computeWithForm behelfen. Aber man muß z.B. im querySave nachschauen, ob da nicht irgendwelche Felder gesetzt werden. Außerdem ist computeWithForm performance-mässig sehr kostspielig.
Ich brauch das auch bald. Im Zweifelsfall einfach ein Dokument erzeugen und in der Eigenschaftsbox nachlesen, welche Felder wann mit welchen Werten gesetzt sind.
Ich hab das mal für Location und Connection Dokumente in der lokalen names.nsf gemacht. Definitiv no fun.
Gruß Axel
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln