events not populating calendar control - help!
Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Calendar
Forum Description: Topics Related to Codejock Calendar
URL: http://forum.codejock.com/forum_posts.asp?TID=14394
Printed Date: 05 May 2024 at 11:38pm Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com
Topic: events not populating calendar control - help!
Posted By: Jaymeister
Subject: events not populating calendar control - help!
Date Posted: 27 May 2009 at 5:57am
events not populating calendar controls - help! no errors - but no events ???
I'm using CalMulti_AddEvent() to add events to 1 of 3 controls parameter 1 CtrlIndex% is 0, 1 or 2 (the calendar control index) parameter 2 is event data
Sub CalMulti_AddEvent(ByVal CtrlIndex%, ByVal CallData$) On Local Error GoTo 0 On Error GoTo 0 Dim TimeObject As CalendarEvent Set TimeObject = frmMain.mCalendarControl(CtrlIndex%).DataProvider.CreateEvent
StrSub CallData$, 1, UniqueID$ StrSub CallData$, 3, StartYYYYMMDD$ StrSub CallData$, 4, StopYYYYMMDD$ StrSub CallData$, 5, StartHHMM$ StrSub CallData$, 6, StopHHMM$ StrSub CallData$, 7, cTitle$ StrSub CallData$, 8, Body$
TimeObject.AllDayEvent = False TimeObject.Body = "" TimeObject.BusyStatus = xtpCalendarBusyStatusBusy TimeObject.StartTime = YYYYMMDD2Format$(StartYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StartHHMM$, 2) + ":" + Right$(StartHHMM$, 2) TimeObject.EndTime = YYYYMMDD2Format$(StopYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StopHHMM$, 2) + ":" + Right$(StopHHMM$, 2) TimeObject.Importance = xtpCalendarImportanceHigh TimeObject.Location = "" TimeObject.MeetingFlag = True TimeObject.PrivateFlag = True TimeObject.Reminder = False TimeObject.ScheduleID = UniqueID$ TimeObject.Subject = cTitle$ MsgBox cTitle$ & vbCrLf & vbCrLf & Format$(TimeObject.StartTime, "Ddd Dd Mmm YYYY"), vbInformation, Trim$(Str$(CtrlIndex%)) frmMain.mCalendarControl(CtrlIndex%).DataProvider.AddEvent TimeObject End Sub Sub CalMulti_Refresh_Cals()
On Local Error GoTo NoMoreCals
Index% = -1
Do
Index% = Index% + 1
frmMain.mCalendarControl(Index%).Populate
Loop
NoMoreCals:
End Sub
|
Replies:
Posted By: Jaymeister
Date Posted: 28 May 2009 at 3:37am
I'm basically using CodeJock's supplied sample VB6 calendar app to its original frmMain.CalendarControl using above code I can add an event and it appears.
Im now after placing 3 CalendarControls frmMain.mCalendarControl(0) frmMain.mCalendarControl(1) and frmMain.mCalendarControl(2)
I modded original to... frmMain.CalendarControl.SetDataProvider "Provider=Custom;DSN=ODBC_Engineers" and events can still be added to original control using code like above... frmMain.CalendarControl.DataProvider.AddEvent TimeObject ...the original CodeJock vb6 app has no "Do_" subs or functions, so I assumed the 3 new controls would be the same.
however I cannot add events to the 3 new controls...
I suspect the issue lies in my manual population of events, these events will exist in your controls memory only (as I have changed... frmMain.CalendarControl.SetDataProvider "Provider=Custom;DSN=XyzXyz" ...and added events still populate original control, without a valid DSN= )
Thanks for any help in advance, Jason
|
Posted By: Jaymeister
Date Posted: 28 May 2009 at 4:35am
when I switch to... OpenProvider cjCalendarData_Memory, "Provider=XML;Data Source=" & App.Path & "\ASM_Events.xml" ...original frmMain.CalendarControl using above code I can add an event and it appears
however still no events added to any of the 3 calendar controls
OldCount% = frmMain.mCalendarControl(CtrlIndex%).DataProvider.GetAllEventsRaw.Count frmMain.mCalendarControl(CtrlIndex%).DataProvider.AddEvent TimeObject NewCount% = frmMain.mCalendarControl(CtrlIndex%).DataProvider.GetAllEventsRaw.Count
OldCount% = 0 and NewCount% = 0
I suspect I'm doing some N00b mistake, any help would be greatly appreciated
|
Posted By: Jaymeister
Date Posted: 29 May 2009 at 5:05am
rewrote CalMulti_AddEvent() it works adding an event renamed original to CalMulti_AddEvent_Old() the not working version I don't know why one works and not the other...
Sub CalMulti_AddEvent(ByVal CtrlIndex%, ByVal CallData$) StrSub CallData$, 1, UniqueID$ StrSub CallData$, 2, temp$: Engineer2Use& = Val(Trim$(temp$)) StrSub CallData$, 3, StartYYYYMMDD$ StrSub CallData$, 4, StopYYYYMMDD$ StrSub CallData$, 5, StartHHMM$ StrSub CallData$, 6, StopHHMM$ StrSub CallData$, 7, cTitle$ StrSub CallData$, 8, Body$ Dim pEvent As CalendarEvent Set pEvent = frmMain.mCalendarControl(CtrlIndex%).DataProvider.CreateEvent With pEvent .Subject = cTitle$ .Body = Body$ .StartTime = YYYYMMDD2Format$(StartYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StartHHMM$, 2) + ":" + Right$(StartHHMM$, 2) .EndTime = YYYYMMDD2Format$(StopYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StopHHMM$, 2) + ":" + Right$(StopHHMM$, 2) .AllDayEvent = False .ScheduleID = UniqueID$ End With frmMain.mCalendarControl(CtrlIndex%).DataProvider.AddEvent pEvent frmMain.mCalendarControl(CtrlIndex%).Populate 'MsgBox "Event count: " + Str$(frmMain.mCalendarControl(CtrlIndex%).DataProvider.GetAllEventsRaw.Count) End Sub
Sub CalMulti_AddEvent_Old(ByVal CtrlIndex%, ByVal CallData$) On Local Error GoTo 0 On Error GoTo 0 StrSub CallData$, 1, UniqueID$ StrSub CallData$, 2, temp$: Engineer2Use& = Val(Trim$(temp$)) StrSub CallData$, 3, StartYYYYMMDD$ StrSub CallData$, 4, StopYYYYMMDD$ StrSub CallData$, 5, StartHHMM$ StrSub CallData$, 6, StopHHMM$ StrSub CallData$, 7, cTitle$ StrSub CallData$, 8, Body$
UseExistingMethod% = False If UseExistingMethod% Then NewTimeObject frmMain.mCalendarControl(CtrlIndex%), UniqueID$, StartYYYYMMDD$, StopYYYYMMDD$, StartHHMM$, StopHHMM$, cTitle$, Body$, Engineer2Use&, True, True Else Dim TimeObject As CalendarEvent Set TimeObject = frmMain.mCalendarControl(CtrlIndex%).DataProvider.CreateEvent
TimeObject.AllDayEvent = False TimeObject.Body = "" TimeObject.BusyStatus = xtpCalendarBusyStatusBusy TimeObject.StartTime = YYYYMMDD2Format$(StartYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StartHHMM$, 2) + ":" + Right$(StartHHMM$, 2) TimeObject.EndTime = YYYYMMDD2Format$(StopYYYYMMDD$, "dd Mmm yyyy") + " " + Left$(StopHHMM$, 2) + ":" + Right$(StopHHMM$, 2) TimeObject.Importance = xtpCalendarImportanceHigh TimeObject.Location = "" TimeObject.MeetingFlag = True TimeObject.PrivateFlag = True TimeObject.Reminder = False TimeObject.ScheduleID = UniqueID$ TimeObject.Subject = cTitle$ OldCount% = frmMain.mCalendarControl(CtrlIndex%).DataProvider.GetAllEventsRaw.Count frmMain.mCalendarControl(CtrlIndex%).DataProvider.AddEvent TimeObject NewCount% = frmMain.mCalendarControl(CtrlIndex%).DataProvider.GetAllEventsRaw.Count If OldCount% = OldCount% Then MsgBox "Event not added to control #" + Trim$(Str$(CtrlIndex%)) & vbCrLf & vbCrLf & cTitle$ & vbCrLf & vbCrLf & Format$(TimeObject.StartTime, "Ddd Dd Mmm YYYY"), vbInformation, "Event not added to control #" + Trim$(Str$(CtrlIndex%)) End If End If End Sub
|
|