public static ДокументыСсылка.ПередачаСЗВ4вПФР НайтиПоНомеру(string Номер)
{
using (var Подключение = new SqlConnection(СтрокаСоединения))
{
Подключение.Open();
using (var Команда = Подключение.CreateCommand())
{
Команда.CommandText = @"Select top 1
_IDRRef [Ссылка]
,_Version [Версия]
,_Marked [ПометкаУдаления]
,_Fld7933RRef [Организация]
,_Fld7935 [ДатаДействия]
,_Fld7937 [Комментарий]
,_Fld7938RRef [Ответственный]
,_Fld7943 [КраткийСоставДокумента]
,_Fld27199RRef [Руководитель]
,_Fld27200RRef [ДолжностьРуководителя]
,_Fld27201 [ОтчетныйПериод]
,_Fld27202 [ПринятоВПФР]
,_Fld27203 [НомерПачки]
,_Fld21810RRef [ФорматФайла]
,_Fld7936 [ТипСведений]
,_Fld7934 [Год]
,_Fld27204 [СпециальныйДокумент2010года]
,_Fld27205 [НеСодержитСЗВ]
,_Fld27206RRef [РасчетСтраховыхВзносов]
,_Fld27207 [ЗаполненПринятымиСведениями]
,_Fld7941 [УдалитьУплаченоЗаТекущийГодСтраховаяЧасть]
,_Fld27208 [УдалитьНачисленоЗаТекущийГодДополнительныйТариф]
,_Fld27209 [УдалитьУплаченоЗаТекущийГодДополнительныйТариф]
,_Fld7942 [УдалитьУплаченоЗаТекущийГодНакопительнаяЧасть]
,_Fld7939 [УдалитьНачисленоЗаТекущийГодСтраховаяЧасть]
,_Fld7940 [УдалитьНачисленоЗаТекущийГодНакопительнаяЧасть]
From _Document365(NOLOCK)
Where _Number = @Номер";
Команда.Parameters.AddWithValue("Номер", Номер);
using (var Читалка = Команда.ExecuteReader())
{
if (Читалка.Read())
{
var Ссылка = new ДокументыСсылка.ПередачаСЗВ4вПФР();
//ToDo: Читать нужно через GetValues()
Ссылка.Ссылка = new Guid((byte[])Читалка.GetValue(0));
var ПотокВерсии = ((byte[])Читалка.GetValue(1));
Array.Reverse(ПотокВерсии);
Ссылка.Версия = BitConverter.ToInt64(ПотокВерсии, 0);
Ссылка.ВерсияДанных = Convert.ToBase64String(ПотокВерсии);
Ссылка.ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1;
Ссылка.ДатаДействия = Читалка.GetDateTime(4);
Ссылка.Комментарий = Читалка.GetString(5);
Ссылка.КраткийСоставДокумента = Читалка.GetString(7);
Ссылка.ОтчетныйПериод = Читалка.GetDateTime(10);
Ссылка.ПринятоВПФР = ((byte[])Читалка.GetValue(11))[0]==1;
Ссылка.НомерПачки = Читалка.GetString(12);
Ссылка.ФорматФайла = V82.Перечисления/*Ссылка*/.ФорматФайлаПФР.ПустаяСсылка.Получить((byte[])Читалка.GetValue(13));
Ссылка.ТипСведений = Читалка.GetString(14);
Ссылка.Год = Читалка.GetDecimal(15);
Ссылка.СпециальныйДокумент2010года = ((byte[])Читалка.GetValue(16))[0]==1;
Ссылка.НеСодержитСЗВ = ((byte[])Читалка.GetValue(17))[0]==1;
Ссылка.РасчетСтраховыхВзносов = V82.ДокументыСсылка.РегламентированныйОтчет.ВзятьИзКэша((byte[])Читалка.GetValue(18));
Ссылка.ЗаполненПринятымиСведениями = ((byte[])Читалка.GetValue(19))[0]==1;
Ссылка.УдалитьУплаченоЗаТекущийГодСтраховаяЧасть = Читалка.GetDecimal(20);
Ссылка.УдалитьНачисленоЗаТекущийГодДополнительныйТариф = Читалка.GetDecimal(21);
Ссылка.УдалитьУплаченоЗаТекущийГодДополнительныйТариф = Читалка.GetDecimal(22);
Ссылка.УдалитьУплаченоЗаТекущийГодНакопительнаяЧасть = Читалка.GetDecimal(23);
Ссылка.УдалитьНачисленоЗаТекущийГодСтраховаяЧасть = Читалка.GetDecimal(24);
Ссылка.УдалитьНачисленоЗаТекущийГодНакопительнаяЧасть = Читалка.GetDecimal(25);
return Ссылка;
}
else
{
return null;
}
}
}
}
}