public void PutRPatternToData(CalendarRecurrencePattern pRPattern, System.Data.DataRow pRPatternDRow) { try { pRPatternDRow["MasterEventID"] = pRPattern.MasterEventId; pRPatternDRow["EventStartTime"] = pRPattern.StartTime; pRPatternDRow["EventDuration"] = pRPattern.DurationMinutes; pRPatternDRow["PatternStartDate"] = pRPattern.StartDate; pRPatternDRow["PatternEndMethod"] = pRPattern.EndMethod; pRPatternDRow["PatternEndDate"] = pRPattern.EndDate; pRPatternDRow["PatternEndAfterOccurrences"] = pRPattern.EndAfterOccurrences; pRPatternDRow["OptionsData1"] = pRPattern.Options.Data1; pRPatternDRow["OptionsData2"] = pRPattern.Options.Data2; pRPatternDRow["OptionsData3"] = pRPattern.Options.Data3; pRPatternDRow["OptionsData4"] = pRPattern.Options.Data4; pRPatternDRow["CustomPropertiesXMLData"] = pRPattern.CustomProperties.SaveToString(); } catch (System.Exception e) { System.Diagnostics.Debug.WriteLine("EXCEPTION! SQLDataHelper.PutRPatternToData: " + e.Message); } }
protected void ReadRPatternExceptions(CalendarRecurrencePattern pPattern, System.Data.OleDb.OleDbConnection pOleDbConn) { if (pPattern == null || pOleDbConn == null) { System.Diagnostics.Debug.Assert(false); return; } System.Data.OleDb.OleDbDataReader oleReader = null; try { int nPatternID = pPattern.Id; String strSQL = "SELECT * FROM CalendarEvents WHERE \r\n"; strSQL += " RecurrenceState = " + Convert.ToString((int)CalendarEventRecurrenceState.xtpCalendarRecurrenceException); strSQL += " AND RecurrencePatternID = " + Convert.ToString(nPatternID); System.Data.OleDb.OleDbCommand oleDbCommand = pOleDbConn.CreateCommand(); oleDbCommand.CommandText = strSQL; oleReader = oleDbCommand.ExecuteReader(); while (oleReader.Read()) { CalendarEvent axEvent = _CreateEventFromData(oleReader, true); if (axEvent != null) { pPattern.SetException(axEvent); } } } catch (System.Exception ex) { System.Diagnostics.Debug.WriteLine("EXCEPTION! SQLDataHelper.ReadRPatternExceptions: " + ex.Message); } //================================================ if (oleReader != null && !oleReader.IsClosed) { oleReader.Close(); } }
public CalendarRecurrencePattern CreateRPatternFromData(System.Data.OleDb.OleDbDataReader pRPatternData, System.Data.OleDb.OleDbConnection pOleDbConn) { try { CalendarRecurrencePattern pRPattern = null; int nPatternID; if (pRPatternData.IsClosed /*|| !pRPatternData.HasRows*/) { return(null); } nPatternID = pRPatternData.GetInt32(pRPatternData.GetOrdinal("RecurrencePatternID")); pRPattern = m_pCalendar.DataProvider.CreateRecurrencePattern(nPatternID); if (pRPattern == null) { return(null); } pRPattern.MasterEventId = pRPatternData.GetInt32(pRPatternData.GetOrdinal("MasterEventID")); pRPattern.StartTime = pRPatternData.GetDateTime(pRPatternData.GetOrdinal("EventStartTime")); pRPattern.DurationMinutes = pRPatternData.GetInt32(pRPatternData.GetOrdinal("EventDuration")); pRPattern.StartDate = pRPatternData.GetDateTime(pRPatternData.GetOrdinal("PatternStartDate")); pRPattern.EndMethod = (CalendarPatternEnd)pRPatternData.GetInt32(pRPatternData.GetOrdinal("PatternEndMethod")); if (pRPattern.EndMethod == CalendarPatternEnd.xtpCalendarPatternEndDate) { pRPattern.EndDate = pRPatternData.GetDateTime(pRPatternData.GetOrdinal("PatternEndDate")); } else if (pRPattern.EndMethod == CalendarPatternEnd.xtpCalendarPatternEndAfterOccurrences) { pRPattern.EndAfterOccurrences = pRPatternData.GetInt32(pRPatternData.GetOrdinal("PatternEndAfterOccurrences")); } else { System.Diagnostics.Debug.Assert(pRPattern.EndMethod == CalendarPatternEnd.xtpCalendarPatternEndNoDate); } pRPattern.Options.Data1 = pRPatternData.GetInt32(pRPatternData.GetOrdinal("OptionsData1")); pRPattern.Options.Data2 = pRPatternData.GetInt32(pRPatternData.GetOrdinal("OptionsData2")); pRPattern.Options.Data3 = pRPatternData.GetInt32(pRPatternData.GetOrdinal("OptionsData3")); pRPattern.Options.Data4 = pRPatternData.GetInt32(pRPatternData.GetOrdinal("OptionsData4")); pRPattern.CustomProperties.LoadFromString(pRPatternData.GetString(pRPatternData.GetOrdinal("CustomPropertiesXMLData"))); pRPatternData.Close(); ReadRPatternExceptions(pRPattern, pOleDbConn); return(pRPattern); } catch (System.Exception e) { System.Diagnostics.Debug.WriteLine("EXCEPTION! SQLDataHelper.CreateRPatternFromData: " + e.Message); } return(null); }