public static ДокументыВыборка.НачислениеОтпускаРаботникамОрганизаций ВыбратьПоНомеру(int Первые,string Мин,string Макс)
{
using (var Подключение = new SqlConnection(СтрокаСоединения))
{
Подключение.Open();
using (var Команда = Подключение.CreateCommand())
{
Команда.CommandText = string.Format(@"Select top {0}
_IDRRef [Ссылка]
,_Version [Версия]
,_Marked [ПометкаУдаления]
,_Fld6309 [ПериодРегистрации]
,_Fld6310RRef [Организация]
,_Fld6311 [Комментарий]
,_Fld6312RRef [Ответственный]
,_Fld21589RRef [Сотрудник]
,_Fld6313RRef [Физлицо]
,_Fld26847 [ДатаНачалаСобытия]
,_Fld6315 [ДатаНачалаОсновногоОтпуска]
,_Fld6316 [ДатаОкончанияОсновногоОтпуска]
,_Fld21590 [КоличествоДнейОсновногоОтпуска]
,_Fld6317RRef [ПорядокРасчетаОсновногоОтпуска]
,_Fld6318 [ДатаНачалаДополнительногоОтпуска]
,_Fld6319 [ДатаОкончанияДополнительногоОтпуска]
,_Fld21591 [КоличествоДнейДополнительногоОтпуска]
,_Fld6320RRef [ВидРасчетаДополнительногоОтпуска]
,_Fld6324 [УдалитьРезультатКомпенсацииОтпуска]
,_Fld6321 [ПроцентОплатыДополнительногоОтпуска]
,_Fld6326 [УдалитьСторноРезультатКомпенсацииОтпуска]
,_Fld6322RRef [ПорядокРасчетаКомпенсацииОтпуска]
,_Fld6323 [ДнейЧасовКомпенсацииОтпуска]
,_Fld18526 [ИспользоватьСреднеЧасовойЗаработок]
,_Fld6314RRef [УдалитьПриказ]
,_Fld6325RRef [ПерерассчитываемыйДокумент]
,_Fld6327 [РабочийГодС]
,_Fld6328 [РабочийГодПо]
,_Fld26848 [ОсновнойОтпуск]
,_Fld26849 [ДополнительныйОтпуск]
,_Fld26850 [КомпенсацияОтпуска]
,_Fld26851 [ПериодРасчетаСреднегоЗаработкаНачало]
,_Fld26852 [ПериодРасчетаСреднегоЗаработкаОкончание]
,_Fld26853 [Фамилия]
,_Fld26854 [Имя]
,_Fld26855 [Отчество]
,_Fld26856RRef [ВидДокумента]
,_Fld26857 [СерияДокумента]
,_Fld26858 [НомерДокумента]
,_Fld26859 [ДатаВыдачиДокумента]
,_Fld26860 [ДатаДействияДокумента]
,_Fld26861 [ПеречислятьПособиеПочтовымПереводом]
,_Fld26862RRef [Банк]
,_Fld26863 [НомерЛицевогоСчета]
,_Fld26864 [АдресПочтовый]
,_Fld26865 [НаименованиеБанка]
,_Fld26866 [БИКБанка]
,_Fld26867RRef [ДолжностьУполномоченного]
,_Fld26868RRef [Уполномоченный]
,_Fld26869 [КоррСчетБанка]
,_Fld26870 [КемВыданДокумент]
,_Fld26871 [АдресРегистрации]
,_Fld26872 [Телефон]
,_Fld26873 [ТелефонСоставителя]
From _Document322(NOLOCK)
Where _Code between @Мин and @Макс
Order by _Code", Первые);
Команда.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;
Ссылка.ПериодРегистрации = Читалка.GetDateTime(3);
Ссылка.Комментарий = Читалка.GetString(5);
Ссылка.ДатаНачалаСобытия = Читалка.GetDateTime(9);
Ссылка.ДатаНачалаОсновногоОтпуска = Читалка.GetDateTime(10);
Ссылка.ДатаОкончанияОсновногоОтпуска = Читалка.GetDateTime(11);
Ссылка.КоличествоДнейОсновногоОтпуска = Читалка.GetDecimal(12);
Ссылка.ПорядокРасчетаОсновногоОтпуска = V82.Перечисления/*Ссылка*/.ПорядокРасчетаОтпуска.ПустаяСсылка.Получить((byte[])Читалка.GetValue(13));
Ссылка.ДатаНачалаДополнительногоОтпуска = Читалка.GetDateTime(14);
Ссылка.ДатаОкончанияДополнительногоОтпуска = Читалка.GetDateTime(15);
Ссылка.КоличествоДнейДополнительногоОтпуска = Читалка.GetDecimal(16);
Ссылка.УдалитьРезультатКомпенсацииОтпуска = Читалка.GetDecimal(18);
Ссылка.ПроцентОплатыДополнительногоОтпуска = Читалка.GetDecimal(19);
Ссылка.УдалитьСторноРезультатКомпенсацииОтпуска = Читалка.GetDecimal(20);
Ссылка.ПорядокРасчетаКомпенсацииОтпуска = V82.Перечисления/*Ссылка*/.ПорядокРасчетаОтпуска.ПустаяСсылка.Получить((byte[])Читалка.GetValue(21));
Ссылка.ДнейЧасовКомпенсацииОтпуска = Читалка.GetDecimal(22);
Ссылка.ИспользоватьСреднеЧасовойЗаработок = ((byte[])Читалка.GetValue(23))[0]==1;
Ссылка.УдалитьПриказ = V82.ДокументыСсылка.ПриемНаРаботуВОрганизацию.ВзятьИзКэша((byte[])Читалка.GetValue(24));
Ссылка.ПерерассчитываемыйДокумент = V82.ДокументыСсылка.НачислениеОтпускаРаботникамОрганизаций.ВзятьИзКэша((byte[])Читалка.GetValue(25));
Ссылка.РабочийГодС = Читалка.GetDateTime(26);
Ссылка.РабочийГодПо = Читалка.GetDateTime(27);
Ссылка.ОсновнойОтпуск = ((byte[])Читалка.GetValue(28))[0]==1;
Ссылка.ДополнительныйОтпуск = ((byte[])Читалка.GetValue(29))[0]==1;
Ссылка.КомпенсацияОтпуска = ((byte[])Читалка.GetValue(30))[0]==1;
Ссылка.ПериодРасчетаСреднегоЗаработкаНачало = Читалка.GetDateTime(31);
Ссылка.ПериодРасчетаСреднегоЗаработкаОкончание = Читалка.GetDateTime(32);
Ссылка.Фамилия = Читалка.GetString(33);
Ссылка.Имя = Читалка.GetString(34);
Ссылка.Отчество = Читалка.GetString(35);
Ссылка.СерияДокумента = Читалка.GetString(37);
Ссылка.НомерДокумента = Читалка.GetString(38);
Ссылка.ДатаВыдачиДокумента = Читалка.GetDateTime(39);
Ссылка.ДатаДействияДокумента = Читалка.GetDateTime(40);
Ссылка.ПеречислятьПособиеПочтовымПереводом = ((byte[])Читалка.GetValue(41))[0]==1;
Ссылка.НомерЛицевогоСчета = Читалка.GetString(43);
Ссылка.АдресПочтовый = Читалка.GetString(44);
Ссылка.НаименованиеБанка = Читалка.GetString(45);
Ссылка.БИКБанка = Читалка.GetString(46);
Ссылка.КоррСчетБанка = Читалка.GetString(49);
Ссылка.КемВыданДокумент = Читалка.GetString(50);
Ссылка.АдресРегистрации = Читалка.GetString(51);
Ссылка.Телефон = Читалка.GetString(52);
Ссылка.ТелефонСоставителя = Читалка.GetString(53);
Выборка.Add(Ссылка);
}
return Выборка;
}
}
}
}