Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: sral am 09.04.08 - 16:55:40

Titel: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 09.04.08 - 16:55:40
Hallo zusammen,

wie kann ich per Schaltfläche eine Kalenderansicht ansteuern, und bei der Auswahl des Datums, den Wert des gewählten Tages übernehmen? Mit einer Pickliste bin ich schon gescheitert, weil ich nur Dokumente damit auswählen kann. Hat jemand von euch eine Idee?

Lars
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 09.04.08 - 17:02:52
Wo wählst Du das Datum? Bereits in einer calendar view oder passiert das als erstes und dann soll dieses Datum in einer calendar view das Datum angesprungen werden? Letzteres geht AFAIK nicht.

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 09.04.08 - 18:22:07
ich will das Datum in einer Kalenderansicht wählen, und dann das Datum in ein anderes Feld schreiben

analog dem RegionDoubleClick in der Mail-Kalenderansicht, nur das dann kein neues Dokument geöffnet werden soll, sondern das Datum des Tages übergeben werden soll
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 09.04.08 - 21:15:54
Ich verstehe es immer noch nicht: Was hat NotesUIView.RegionDoubleClick mit dem  Erstellen eines Dokuments zu tun? Das Datum steht Dir bei RegionDoubleClick zur Verfügung - Du musst es nur übernehmen (wohin auch immer - davon sagst Du ja nichts).
Und welche Rolle soll eine Schaltfläche spielen?

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 10.04.08 - 09:25:40
über die Schaltfläche "Verfügbarkeit prüfen" komme ich in die Kalenderansicht und will dort z.B. dem 17.04.2008 auswählen, damit das Datum in das Feld "Haupttermin" übertragen wird
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 10.04.08 - 09:37:07
Im Event steht Dir als Property der NotesUIView die Property CalendarDateTime zur Verfügung. Damit hast Du bereits alles, was Du benötigst.

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: Glombi am 10.04.08 - 09:57:14
Oder mit

Read-only. The date and time of the current (the selected) region in a calendar view.
Defined in
NotesUIWorkspace
Data type
Variant of type DATE
Syntax
To get: dateV = notesUIWorkspace.CurrentCalendarDateTime

Andreas
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 10.04.08 - 10:03:46
Naja, da geht Dir dann aber das notwendige Event ab, Andreas. Irgendwas muss Lars ja signalisieren, dass der User jetzt im Kalender geklickert hat.

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: Glombi am 10.04.08 - 10:18:23
Wenn das in einer Aktion der Ansicht verwendet wird, dann liefert
 Dim workspace As New NotesUIWorkspace
  Messagebox workspace.CurrentCalendarDateTime,, _
  "Date and time for the current region"
das Datum / Datum+Uhrzeit der gewählten Region / des Dokuments zurück.

Warum sollte das nicht gehen?

Andreas
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 10.04.08 - 10:25:58
Wenn ich den Schirmschuss von Lars richtig deute, dann drückt der User auf eine Schalfläche, dann öffnet sich zur Auswahl eine Kalenderansicht, der User zu in eine Region klicken, und dieser Click soll ausgewertet werden. Die NotesUIWorkspace-Property wird uns da nicht weiterhelfen.

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 10.04.08 - 13:41:21
funzt !!!  :D
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 10.04.08 - 13:44:18
Und mit welchem Verfahren hast Du es nun gelöst?

Bernhard
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 10.04.08 - 15:03:46
Lösungsweg...vorausgesetzt, die ECL lässt eine Änderung an der notes.ini zu

1. Im Regiondoubleclick Event der Kalenderansicht, lasse ich den Datumswert in die notes.ini schreiben

Sub Regiondoubleclick(Source As Notesuiview)
   Dim s As New NotesSession   
   Call s.SetEnvironmentVar("SelectedDate", Cstr(Ws.CurrentCalendarDateTime), False)
   Call thisUiDoc.Close(True)
End Sub

2. über die bereits genannte Schaltfläche öffne ich eine Dialogbox, in der die Kalenderansicht eingebettet ist, und hole den Wert aus der notes.ini und das Feld "Termin"

Sub Click(Source As Button)
   Dim s As New NotesSession
   Dim Ws As New NotesUIWorkspace
   Dim thisDB As NotesDatabase
   Dim SelDoc As NotesDocument
   Dim thisDoc As NotesDocument
   Dim thisUiDoc As NotesUIDocument
   Dim DialogDoc As NotesDocument
   Dim SelectDate As String
   
   Set thisDB = s.CurrentDatabase
   Set ThisDoc = ws.CurrentDocument.Document
   Set DialogDoc = thisdb.CreateDocument
   
   Call s.SetEnvironmentVar("SelectedDate", "", False)
   Call ws.DialogBox("(sel_calendar)",True,True,False,False,False,False,"",DialogDoc,True)
   SelectDate = s.GetEnvironmentString("SelectedDate")      
   Call s.SetEnvironmentVar("SelectedDate", "", False)
   If  Isdate(SelectDate) Then
      thisDoc.Termin = SelectDate
   End If
End Sub

Lars
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 11.04.08 - 18:06:31
Tipp: Nimm nicht die NOTES.INI als "Müllabladeplatz", sondern ein persönliches ProfileDocument*). Die Admins werden es Dir danken.
Ansonsten: Gerade mit der Dialogbox eine saubere Lösung.

Bernhard

*) Voraussetzung: Kalenderansicht steckt in der DB, in der auch Dein Button den Code lossemmeln lässt, sonst wird es schwierig, alle möglichen Risiken in RegionDoubleClick abzufangen
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: sral am 11.04.08 - 19:49:50
Die Kalenderansicht ist in einer zweiten Datenbank, wo auch jeder aus der Firma Zugriff hat...und da die ECL bei uns offen ist, habe ich als Admin kein Problem damit  O0

Schönes Wochenende...

Lars
Titel: Re: Datumswert aus Kalenderansicht übernehmen
Beitrag von: koehlerbv am 11.04.08 - 20:51:55
Dann hat mich mein "Sternchentext" ja gerade noch gerettet  ;D

Bernhard