Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > ActiveX COM > Calendar
  New Posts New Posts RSS Feed - events not populating calendar control - help!
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

events not populating calendar control - help!

 Post Reply Post Reply
Author
Message
Jaymeister View Drop Down
Groupie
Groupie
Avatar

Joined: 27 April 2009
Status: Offline
Points: 32
Post Options Post Options   Thanks (0) Thanks(0)   Quote Jaymeister Quote  Post ReplyReply Direct Link To This Post Topic: events not populating calendar control - help!
    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


Back to Top
Jaymeister View Drop Down
Groupie
Groupie
Avatar

Joined: 27 April 2009
Status: Offline
Points: 32
Post Options Post Options   Thanks (0) Thanks(0)   Quote Jaymeister Quote  Post ReplyReply Direct Link To This Post 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  
Back to Top
Jaymeister View Drop Down
Groupie
Groupie
Avatar

Joined: 27 April 2009
Status: Offline
Points: 32
Post Options Post Options   Thanks (0) Thanks(0)   Quote Jaymeister Quote  Post ReplyReply Direct Link To This Post 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
Back to Top
Jaymeister View Drop Down
Groupie
Groupie
Avatar

Joined: 27 April 2009
Status: Offline
Points: 32
Post Options Post Options   Thanks (0) Thanks(0)   Quote Jaymeister Quote  Post ReplyReply Direct Link To This Post 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
 
Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.152 seconds.