Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: pippo am 28.12.04 - 17:33:31

Titel: Kalendereintrag von einer fremden DB aus
Beitrag von: pippo am 28.12.04 - 17:33:31
Hallo,
möchte von einem Dokument (einer bestimmten DB...) aus einen Kalendereintrag machen;
d.h. möchte die Maske Kalendereintrag mit Typ Termin öffnen und bestimmte Felder für den User ausfüllen.

Es funktioniert alles  8), ausser das Beginn- und Endedatum ???.

Wer kann mir da bitte einen Tipp geben?

Wünche Euch einen schönen Abned,
Pippo

****************************************

@Environment("CSDocType";"0");

a_1:=BEZEICHNUNG;
a_3:=Termin;

@Command([EditMakeDocLink]);
@Command([Compose]; @MailDbName; "Appointment");
@Command([EditGotoField]; "body");
@Command([EditInsertText]; "Für weitere Details klicken Sie bitte auf den Link: ");
@Command([EditPaste]);
@Command([EditGotoField]; "subject");
@Command([EditInsertText]; "abc...: " + a_1 );

@Command([EditGotoField]; "StartDate");
@Command([EditSelectAll]);
@Command([EditClear]);
@Command([EditInsertText]; a_3);
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: koehlerbv am 28.12.04 - 17:44:36
StartDate muss ein Datums-/Zeitwert sein. Ein EditInsertText kann da nicht funktionieren - Du musst hier mit @SetField arbeiten.

Hilfreich ist auch immer, auf "funktioniert nicht" als Aussage komplett zu verzichten - das ist nämlich absolut nichtssagend. Sag' an, was genau passiert und warum es nicht Deinem gewünschten Resultat entspricht.

Bernhard
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: koehlerbv am 28.12.04 - 17:56:39
Halt - stopp !

Gerade gesehen - folgendes sollte auch funktionieren:

Das
@Command([EditInsertText]; a_3);

ersetzen durch
@Command([EditInsertText]; @Text (a_3));

Dann geht's auch so.

HTH,
Bernhard
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: pippo am 28.12.04 - 18:15:07
Hallo,
kopier Dir doch einfach den Code in eine Schaltfläche...

es funktioniert nicht...

Grüße, Pippo
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: koehlerbv am 28.12.04 - 19:11:14
Okay, dann mache ich es auch so kurz wie Du, pippo:
Hab' den Code in eine Schaltfläche kopiert und dann auch gesehen: Es funktioniert nicht.

Bernhard
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: pippo am 28.12.04 - 19:59:56
Hallo,
danke für Deine Hilfe.

Habe es jetzt mit Script gemacht.

Grüße, Pippo
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: audiojosi am 28.12.04 - 21:25:26
deshalb stehe ich auf Script  ;D ;D ;D

*damned* muss jetzt endlich schippen... :P

Jürgen
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: koehlerbv am 29.12.04 - 01:21:56
Pippo,
irgendwie fühle ich mich jetzt veralbert ... Warum hast Du nicht gleich die eigentlichen Probleme gepostet ? Warum wurde nicht gleich gesagt, dass auch LS in Frage kommt ? Warum musste ich das ganze Szenario nachstellen - das eigentliche Problem hast Du doch sicher eher erkannt als ich, der sich erst wieder erinnern musste (weil ich sowas prinzipiell nicht mehr mit @-Stunts versuche) ?

Pippo, es wäre jetzt nur fair, den angezettelten Thread mit Deiner Lösung zu beenden. Du kannst es mit LS, ich kann es (sowieso), andere stehen jetzt aber evtl. auf dem Schlauch (obwohl es es doch kaum mehr Zeilen sind mit LS als der wegen der Felder in Layout-Regions vergebliche Versuch mit @Commands und vor allem die hier unmögliche Mischung von @Functions und @Commands).

Bernhard  >:(
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: Semeaphoros am 29.12.04 - 09:41:30
Jürgen, geh mal einen Schritt nach rechts ... ich brauche Script, aber Du stehst gerade darauf .........  8)
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: pippo am 29.12.04 - 09:46:16
Hallo Bernhard,
hier meine Lösung.

Ich schätze Deine Antworten sehr, auch wenn manche Kommentare von Dir etwas gewöhnungsbedürftig sind.

Wünsche Euch allen einen schönen Tag,
Pippo

*************************

Function CreateAppointment( ) As Variant
   
   REM Diese Funktion erstellt einen Kalendereintrag mit einer Verknüpfung zum aktiven Dokument; dabei werden bestimme Felder für den User vorbelegt; interne Felder vom Kalendereintrag müssen nicht verändert werden :-))
   
   Dim ws As New NotesUIWorkspace
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim uidoc As NotesUIDocument
   Dim doc As NotesDocument
   Dim item  As NotesItem
   Dim rtitem As NotesRichTextItem
   Dim tmpdoc As NotesDocument    
   Dim uidocT As NotesUIDocument
   Dim docT As NotesDocument
   
   Set db = s.CurrentDatabase
   
   REM Typ Kalendereintrag, "0" für Termin
   Call s.SetEnvironmentVar( "CSDocType", "0" )
   
   If Not Check_BMW ("" ) Then
      CreateAppointment=False
      Exit Function
   End If
   
   REM Aktives Dokumente   
   Set uidoc = ws.CurrentDocument
   Set doc = uidoc.Document
   
   REM Maildatei
   Dim dbM As New NotesDatabase( "", "" )
   Call dbM.OpenMail
   
   REM Temp Dokument mit Body wird erstellt
   REM Das muß gemacht werden weil man sonst den Link nicht in den Termin bekommt
   REM diese Dokument muß nicht verspeichert werden
   Set tmpdoc = New NotesDocument( dbM )
   tmpdoc.Form = "Memo"
   Set rtitem = New NotesRichTextItem ( tmpdoc, "Body" )
   Call rtitem.AppendText ( "Für weitere Details klicken Sie bitte auf den Link: " )
   Call  rtitem.AppendDocLink( doc, db.Title  )
   
   Set item = tmpdoc.GetFirstItem( "Body" )
   
   REM Termin wird erstellt
   Set docT = New NotesDocument( dbM )
   docT.Form = "Appointment"
   
   REM Bodyfeld wird von temp Doc in Termin kopiert
   Call item.CopyItemToDocument( docT, "Body" )
   
   REM Termin wir für User geöffnet
   Set uidocT =  ws.EditDocument (True,docT)
   
   REM Daten werden geschrieben
   Call uidocT.FieldSetText( "subject", "abc..." )
   
   Call uidocT.FieldSetText( "Startdate", "abc..." )
   REM Call uidocT.FieldSetText( "Starttime", "abc..." )
   
   CreateAppointment=True
   
End Function
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: audiojosi am 29.12.04 - 17:14:12
Sorry Jens,

komm grade erst vom Schippen zurück...

Gehe jetzt @Formeln, du kannst scripten  ;)

Jürgen
Titel: Re: Kalendereintrag von einer fremden DB aus
Beitrag von: Semeaphoros am 29.12.04 - 19:24:49
 ;D ... machen wir so ....