public ПередачаСЗВ4вПФР(byte[] УникальныйИдентификатор) { using (var Подключение = new SqlConnection(СтрокаСоединения)) { Подключение.Open(); using (var Команда = Подключение.CreateCommand()) { Команда.CommandText = @"Select top 1 _IDRRef [Ссылка] ,_Version [Версия] ,_Marked [ПометкаУдаления] ,_Number [Номер] ,_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 _IDRRef=@УникальныйИдентификатор"; Команда.Parameters.AddWithValue("УникальныйИдентификатор", УникальныйИдентификатор); using (var Читалка = Команда.ExecuteReader()) { if (Читалка.Read()) { //ToDo: Читать нужно через GetValues() Ссылка = new Guid((byte[])Читалка.GetValue(0)); var ПотокВерсии = ((byte[])Читалка.GetValue(1)); Array.Reverse(ПотокВерсии); Версия = BitConverter.ToInt64(ПотокВерсии, 0); ВерсияДанных = Convert.ToBase64String(ПотокВерсии); ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1; Номер = Читалка.GetString(3); ДатаДействия = Читалка.GetDateTime(5); Комментарий = Читалка.GetString(6); КраткийСоставДокумента = Читалка.GetString(8); ОтчетныйПериод = Читалка.GetDateTime(11); ПринятоВПФР = ((byte[])Читалка.GetValue(12))[0]==1; НомерПачки = Читалка.GetString(13); ФорматФайла = V82.Перечисления/*Ссылка*/.ФорматФайлаПФР.ПустаяСсылка.Получить((byte[])Читалка.GetValue(14)); ТипСведений = Читалка.GetString(15); Год = Читалка.GetDecimal(16); СпециальныйДокумент2010года = ((byte[])Читалка.GetValue(17))[0]==1; НеСодержитСЗВ = ((byte[])Читалка.GetValue(18))[0]==1; РасчетСтраховыхВзносов = new V82.ДокументыСсылка.РегламентированныйОтчет((byte[])Читалка.GetValue(19)); ЗаполненПринятымиСведениями = ((byte[])Читалка.GetValue(20))[0]==1; УдалитьУплаченоЗаТекущийГодСтраховаяЧасть = Читалка.GetDecimal(21); УдалитьНачисленоЗаТекущийГодДополнительныйТариф = Читалка.GetDecimal(22); УдалитьУплаченоЗаТекущийГодДополнительныйТариф = Читалка.GetDecimal(23); УдалитьУплаченоЗаТекущийГодНакопительнаяЧасть = Читалка.GetDecimal(24); УдалитьНачисленоЗаТекущийГодСтраховаяЧасть = Читалка.GetDecimal(25); УдалитьНачисленоЗаТекущийГодНакопительнаяЧасть = Читалка.GetDecimal(26); //return Ссылка; } else { //return null; } } } } }
public static ДокументыВыборка.РегламентированныйОтчет ВыбратьПоСсылке(int Первые,Guid Мин,Guid Макс) { using (var Подключение = new SqlConnection(СтрокаСоединения)) { Подключение.Open(); using (var Команда = Подключение.CreateCommand()) { Команда.CommandText = string.Format(@"Select top {0} _IDRRef [Ссылка] ,_Version [Версия] ,_Marked [ПометкаУдаления] ,_Fld11253 [ИсточникОтчета] ,_Fld11254 [НаименованиеОтчета] ,_Fld11255RRef [Организация] ,_Fld11256 [ДатаНачала] ,_Fld11257 [ДатаОкончания] ,_Fld11258 [ДатаПодписи] ,_Fld11259RRef [Периодичность] ,_Fld11260RRef [ЕдиницаИзмерения] ,_Fld11261 [ТочностьЕдиницыИзмерения] ,_Fld11262 [ВыбраннаяФорма] ,_Fld11263 [ДанныеОтчета] ,_Fld11264 [ДеревоНастройкиСтраниц] ,_Fld11265RRef [ВидОтчетности] ,_Fld11266 [Комментарий] ,_Fld11267 [КодИМНС] ,_Fld22670 [КодИМНСПосредника] ,_Fld11268 [ФорматВыгрузки] ,_Fld11269 [Вид] ,_Fld27288 [Период] ,_Fld27289 [КПП] From _Document441(NOLOCK) Where _IDRRef between @Мин and @Макс Order by _IDRRef", Первые); Команда.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; Ссылка.ИсточникОтчета = Читалка.GetString(3); Ссылка.НаименованиеОтчета = Читалка.GetString(4); Ссылка.ДатаНачала = Читалка.GetDateTime(6); Ссылка.ДатаОкончания = Читалка.GetDateTime(7); Ссылка.ДатаПодписи = Читалка.GetDateTime(8); Ссылка.Периодичность = V82.Перечисления/*Ссылка*/.Периодичность.ПустаяСсылка.Получить((byte[])Читалка.GetValue(9)); Ссылка.ЕдиницаИзмерения = V82.Перечисления/*Ссылка*/.ПорядкиОкругленияОтчетности.ПустаяСсылка.Получить((byte[])Читалка.GetValue(10)); Ссылка.ТочностьЕдиницыИзмерения = Читалка.GetDecimal(11); Ссылка.ВыбраннаяФорма = Читалка.GetString(12); Ссылка.ВидОтчетности = V82.Перечисления/*Ссылка*/.ВидыОтчетности.ПустаяСсылка.Получить((byte[])Читалка.GetValue(15)); Ссылка.Комментарий = Читалка.GetString(16); Ссылка.КодИМНС = Читалка.GetString(17); Ссылка.КодИМНСПосредника = Читалка.GetString(18); Ссылка.ФорматВыгрузки = Читалка.GetString(19); Ссылка.Вид = Читалка.GetDecimal(20); Ссылка.Период = Читалка.GetString(21); Ссылка.КПП = Читалка.GetString(22); Выборка.Add(Ссылка); } return Выборка; } } } }
public static V82.ДокументыСсылка.РегламентированныйОтчет ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return (V82.ДокументыСсылка.РегламентированныйОтчет)Кэш[УИ]; } var Ссылка = new V82.ДокументыСсылка.РегламентированныйОтчет(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return Ссылка; }