private void AddAllSchedulingEntries (ManagedProgrammData m_ManagedProgrammData, DateTime GlobalFrom, DateTime GlobalTo) { InsertOrderedTableOfProgrammBlocks (m_ManagedProgrammData, GlobalFrom); bool InsertPixel = true; double RunningDay = 0; while (GlobalFrom.AddDays (RunningDay) <= GlobalTo) { DateTime RunningStartTime = GlobalFrom.AddDays (RunningDay); if (WMB.Basics.IsTestRun) WMB.Basics.ReportInformationToEventViewer ("ManagedProgrammManagement.AddAllSchedulingEntries", "RunningStartTime (" + m_ManagedProgrammData .SenderName + ") = " + RunningStartTime.ToString ("yyyy.MM.dd HH:mm.ss")); DataView OrderedTableOfProgrammBlocks = m_ManagedProgrammData.GetOrderedViewOfProgrammBlocks (); int BlockIndex = 0; foreach (DataRowView BlockRowView in OrderedTableOfProgrammBlocks) { String BlockID = BlockRowView.Row ["BlockID"].ToString (); String FillBeitragID = BlockRowView.Row [CVM.CommonValues.PGM_FILL_BEITRAG_ID].ToString (); if (!String.IsNullOrEmpty (FillBeitragID)) InsertFullBeitragsDaten (m_ManagedProgrammData, FillBeitragID, RunningStartTime); DataView SendungenDefinedForThisBlock = new DataView (m_ManagedProgrammData.ProgrammDataSet. Tables ["SendungenZuProgrammBloecke"], String.Format ("BlockID = '{0}'", BlockID), "Reihenfolge", DataViewRowState.CurrentRows); foreach (DataRowView SendungRow in SendungenDefinedForThisBlock) { String SendungID = SendungRow.Row ["SendungID"].ToString (); DataView BeitraegeDefinedForThisSendung = new DataView (m_ManagedProgrammData.ProgrammDataSet. Tables ["BeitraegeZuSendungen"], String.Format ("SendungID = '{0}'", SendungID), "", DataViewRowState.CurrentRows); foreach (DataRowView BeitragRow in BeitraegeDefinedForThisSendung) { String BeitragID = BeitragRow.Row ["BeitragID"].ToString (); InsertFullBeitragsDaten (m_ManagedProgrammData, BeitragID, RunningStartTime); } } } List<String> EntriesToAdd = new List<string> (); if (m_ManagedProgrammData.FullBeitragList != null) { foreach (String BeitragID in m_ManagedProgrammData.FullBeitragList.Keys) { if (m_ManagedProgrammData.FullBeitragList.ContainsKey (BeitragID)) { String [] OptionsStrings = m_ManagedProgrammData.FullBeitragList [BeitragID].Tables ["Beitraege"].Rows [0] ["BeitragProperties"]. ToString ().Split (';'); foreach (String OptionString in OptionsStrings) { String [] SingleOption = OptionString.Trim (new Char [] {'(', ')', ' '}).Split (':'); if (SingleOption.Length == 2) { if (SingleOption [0] == CVM.DataHandling.OPTION_BACKGROUND_BEITRAG) { if (!String.IsNullOrEmpty (SingleOption [1])) { String [] Elements = SingleOption [1].Split ('|'); if (Elements.Length == 2) if (!EntriesToAdd.Contains (Elements [1])) EntriesToAdd.Add (Elements [1]); } } if (SingleOption [0] == CVM.DataHandling.OPTION_FOREGROUND_BEITRAG) { if (!String.IsNullOrEmpty (SingleOption [1])) { String [] Elements = SingleOption [1].Split ('|'); if (Elements.Length == 2) if (!EntriesToAdd.Contains (Elements [1])) EntriesToAdd.Add (Elements [1]); } } } } } } } foreach (String EntryToAdd in EntriesToAdd) { InsertFullBeitragsDaten (m_ManagedProgrammData, EntryToAdd, RunningStartTime); } RunningDay += 1.0; } }