Exemple #1
0
        public static СправочникиВыборка.ГрафикиРаботы Выбрать()
        {
            using (var Подключение = new SqlConnection(СтрокаСоединения))
            {
                Подключение.Open();
                using (var Команда = Подключение.CreateCommand())
                {
                    Команда.CommandText = @"Select top 1000 
					_IDRRef [Ссылка]
					,_Version [Версия]
					,_Marked [ПометкаУдаления]
					,_IsMetadata [Предопределенный]
					,_Description [Наименование]
					,_Fld1007RRef [ВидГрафика]
					,_Fld1008 [СуммированныйУчетРабочегоВремени]
					,_Fld1009RRef [ПервыйВыходной]
					,_Fld1010RRef [ВторойВыходной]
					,_Fld1011 [ДатаОтсчета]
					,_Fld1012 [ДлительностьРабочейНедели]
					,_Fld1013 [СокращенноеРабочееВремя]
					,_Fld1014RRef [ГрафикПолногоРабочегоВремени]
					,_Fld1015 [НачалоДневныхЧасов]
					,_Fld1016 [НачалоВечернихЧасов]
					,_Fld1017 [НачалоНочныхЧасов]
					,_Fld21225 [СокращеннаяРабочаяНеделя]
					,_Fld21226 [НеполныйРабочийДень]
					,_Fld26515 [УчитыватьПраздники]
					,_Fld26516 [УчитыватьВечерниеЧасы]
					,_Fld26517 [УчитыватьНочныеЧасы]
					,_Fld26518RRef [ШаблонЗаполнения]
					,_Fld21224 [УдалитьВыходныеПоСкользящемуГрафику]
					From _Reference36(NOLOCK) "                    ;
                    var Выборка = new V82.СправочникиВыборка.ГрафикиРаботы();
                    using (var Читалка = Команда.ExecuteReader())
                    {
                        while (Читалка.Read())
                        {
                            var Ссылка = new СправочникиСсылка.ГрафикиРаботы();
                            //ToDo: Читать нужно через GetValues()
                            Ссылка.Ссылка = new Guid((byte[])Читалка.GetValue(0));
                            var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                            Array.Reverse(ПотокВерсии);
                            Ссылка.Версия           = BitConverter.ToInt64(ПотокВерсии, 0);
                            Ссылка.ВерсияДанных     = Convert.ToBase64String(ПотокВерсии);
                            Ссылка.ПометкаУдаления  = ((byte[])Читалка.GetValue(2))[0] == 1;
                            Ссылка.Предопределенный = ((byte[])Читалка.GetValue(3))[0] == 1;
                            Ссылка.Наименование     = Читалка.GetString(4);
                            Ссылка.ВидГрафика       = V82.Перечисления /*Ссылка*/.ВидыРабочихГрафиков.ПустаяСсылка.Получить((byte[])Читалка.GetValue(5));
                            Ссылка.СуммированныйУчетРабочегоВремени = ((byte[])Читалка.GetValue(6))[0] == 1;
                            Ссылка.ПервыйВыходной                      = V82.Перечисления /*Ссылка*/.ДниНедели.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7));
                            Ссылка.ВторойВыходной                      = V82.Перечисления /*Ссылка*/.ДниНедели.ПустаяСсылка.Получить((byte[])Читалка.GetValue(8));
                            Ссылка.ДатаОтсчета                         = Читалка.GetDateTime(9);
                            Ссылка.ДлительностьРабочейНедели           = Читалка.GetDecimal(10);
                            Ссылка.СокращенноеРабочееВремя             = ((byte[])Читалка.GetValue(11))[0] == 1;
                            Ссылка.ГрафикПолногоРабочегоВремени        = V82.СправочникиСсылка.ГрафикиРаботы.ВзятьИзКэша((byte[])Читалка.GetValue(12));
                            Ссылка.НачалоДневныхЧасов                  = Читалка.GetDateTime(13);
                            Ссылка.НачалоВечернихЧасов                 = Читалка.GetDateTime(14);
                            Ссылка.НачалоНочныхЧасов                   = Читалка.GetDateTime(15);
                            Ссылка.СокращеннаяРабочаяНеделя            = ((byte[])Читалка.GetValue(16))[0] == 1;
                            Ссылка.НеполныйРабочийДень                 = ((byte[])Читалка.GetValue(17))[0] == 1;
                            Ссылка.УчитыватьПраздники                  = ((byte[])Читалка.GetValue(18))[0] == 1;
                            Ссылка.УчитыватьВечерниеЧасы               = ((byte[])Читалка.GetValue(19))[0] == 1;
                            Ссылка.УчитыватьНочныеЧасы                 = ((byte[])Читалка.GetValue(20))[0] == 1;
                            Ссылка.ШаблонЗаполнения                    = V82.Перечисления /*Ссылка*/.ШаблонЗаполненияГрафикаРаботы.ПустаяСсылка.Получить((byte[])Читалка.GetValue(21));
                            Ссылка.УдалитьВыходныеПоСкользящемуГрафику = ((byte[])Читалка.GetValue(22))[0] == 1;
                            Выборка.Add(Ссылка);
                        }
                        return(Выборка);
                    }
                }
            }
        }
 public static СправочникиВыборка.ГрафикиРаботы ВыбратьПоНаименованию(int Первые,string Мин,string Макс)
 {
     using (var Подключение = new SqlConnection(СтрокаСоединения))
     {
         Подключение.Open();
         using (var Команда = Подключение.CreateCommand())
         {
             Команда.CommandText = string.Format(@"Select top {0}
             _IDRRef [Ссылка]
             ,_Version [Версия]
             ,_Marked [ПометкаУдаления]
             ,_IsMetadata [Предопределенный]
             ,_Description [Наименование]
             ,_Fld1007RRef [ВидГрафика]
             ,_Fld1008 [СуммированныйУчетРабочегоВремени]
             ,_Fld1009RRef [ПервыйВыходной]
             ,_Fld1010RRef [ВторойВыходной]
             ,_Fld1011 [ДатаОтсчета]
             ,_Fld1012 [ДлительностьРабочейНедели]
             ,_Fld1013 [СокращенноеРабочееВремя]
             ,_Fld1014RRef [ГрафикПолногоРабочегоВремени]
             ,_Fld1015 [НачалоДневныхЧасов]
             ,_Fld1016 [НачалоВечернихЧасов]
             ,_Fld1017 [НачалоНочныхЧасов]
             ,_Fld21225 [СокращеннаяРабочаяНеделя]
             ,_Fld21226 [НеполныйРабочийДень]
             ,_Fld26515 [УчитыватьПраздники]
             ,_Fld26516 [УчитыватьВечерниеЧасы]
             ,_Fld26517 [УчитыватьНочныеЧасы]
             ,_Fld26518RRef [ШаблонЗаполнения]
             ,_Fld21224 [УдалитьВыходныеПоСкользящемуГрафику]
             From _Reference36(NOLOCK)
             Where _Description between @Мин and @Макс
             Order by _Description", Первые);
             Команда.Parameters.AddWithValue("Мин", Мин);
             Команда.Parameters.AddWithValue("Макс", Макс);
             var Выборка = new V82.СправочникиВыборка.ГрафикиРаботы();
             using (var Читалка = Команда.ExecuteReader())
             {
                 while (Читалка.Read())
                 {
                     var Ссылка = new СправочникиСсылка.ГрафикиРаботы();
                     //ToDo: Читать нужно через GetValues()
                     Ссылка.Ссылка = new Guid((byte[])Читалка.GetValue(0));
                     var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                     Array.Reverse(ПотокВерсии);
                     Ссылка.Версия =  BitConverter.ToInt64(ПотокВерсии, 0);
                     Ссылка.ВерсияДанных =  Convert.ToBase64String(ПотокВерсии);
                     Ссылка.ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1;
                     Ссылка.Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1;
                     Ссылка.Наименование = Читалка.GetString(4);
                         Ссылка.ВидГрафика = V82.Перечисления/*Ссылка*/.ВидыРабочихГрафиков.ПустаяСсылка.Получить((byte[])Читалка.GetValue(5));
                         Ссылка.СуммированныйУчетРабочегоВремени = ((byte[])Читалка.GetValue(6))[0]==1;
                         Ссылка.ПервыйВыходной = V82.Перечисления/*Ссылка*/.ДниНедели.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7));
                         Ссылка.ВторойВыходной = V82.Перечисления/*Ссылка*/.ДниНедели.ПустаяСсылка.Получить((byte[])Читалка.GetValue(8));
                         Ссылка.ДатаОтсчета = Читалка.GetDateTime(9);
                         Ссылка.ДлительностьРабочейНедели = Читалка.GetDecimal(10);
                         Ссылка.СокращенноеРабочееВремя = ((byte[])Читалка.GetValue(11))[0]==1;
                         Ссылка.ГрафикПолногоРабочегоВремени = V82.СправочникиСсылка.ГрафикиРаботы.ВзятьИзКэша((byte[])Читалка.GetValue(12));
                         Ссылка.НачалоДневныхЧасов = Читалка.GetDateTime(13);
                         Ссылка.НачалоВечернихЧасов = Читалка.GetDateTime(14);
                         Ссылка.НачалоНочныхЧасов = Читалка.GetDateTime(15);
                         Ссылка.СокращеннаяРабочаяНеделя = ((byte[])Читалка.GetValue(16))[0]==1;
                         Ссылка.НеполныйРабочийДень = ((byte[])Читалка.GetValue(17))[0]==1;
                         Ссылка.УчитыватьПраздники = ((byte[])Читалка.GetValue(18))[0]==1;
                         Ссылка.УчитыватьВечерниеЧасы = ((byte[])Читалка.GetValue(19))[0]==1;
                         Ссылка.УчитыватьНочныеЧасы = ((byte[])Читалка.GetValue(20))[0]==1;
                         Ссылка.ШаблонЗаполнения = V82.Перечисления/*Ссылка*/.ШаблонЗаполненияГрафикаРаботы.ПустаяСсылка.Получить((byte[])Читалка.GetValue(21));
                         Ссылка.УдалитьВыходныеПоСкользящемуГрафику = ((byte[])Читалка.GetValue(22))[0]==1;
                     Выборка.Add(Ссылка);
                 }
                     return Выборка;
             }
         }
     }
 }