public static ДокументыВыборка.РеализацияТоваровУслуг СтраницаПоСсылке(int Размер,int Номер) { using (var Подключение = new SqlConnection(СтрокаСоединения)) { Подключение.Open(); using (var Команда = Подключение.CreateCommand()) { Команда.CommandText = @"Select top 1000 _IDRRef [Ссылка] ,_Version [Версия] ,_Marked [ПометкаУдаления] ,_Fld10817RRef [Организация] ,_Fld10805RRef [БанковскийСчетОрганизации] ,_Fld10806RRef [ВалютаДокумента] ,_Fld10814RRef [Контрагент] ,_Fld10808RRef [ВидПередачи] ,_Fld10809RRef [Грузоотправитель] ,_Fld10810RRef [Грузополучатель] ,_Fld10811RRef [ДисконтнаяКарта] ,_Fld10812RRef [ДоговорКонтрагента] ,_Fld10804 [АдресДоставки] ,_Fld10827 [СуммаДокумента] ,_Fld10815 [КратностьВзаиморасчетов] ,_Fld10816 [КурсВзаиморасчетов] ,_Fld10813 [Комментарий] ,_Fld10818RRef [Ответственный] ,_Fld10819 [ОтражатьВБухгалтерскомУчете] ,_Fld10820 [ОтражатьВНалоговомУчете] ,_Fld10821 [ОтражатьВУправленческомУчете] ,_Fld10822RRef [Подразделение] ,_Fld10823_TYPE [Проект_Тип],_Fld10823_RRRef [Проект],_Fld10823_RTRef [Проект_Вид] ,_Fld10824_TYPE [Сделка_Тип],_Fld10824_RRRef [Сделка],_Fld10824_RTRef [Сделка_Вид] ,_Fld10825RRef [Склад] ,_Fld10826 [СуммаВключаетНДС] ,_Fld10807RRef [ВидОперации] ,_Fld10834RRef [СчетУчетаДоходовПоТареБУ] ,_Fld10835RRef [СчетУчетаДоходовПоТареНУ] ,_Fld10836RRef [СчетУчетаРасходовПоТареБУ] ,_Fld10837RRef [СчетУчетаРасходовПоТареНУ] ,_Fld10828RRef [СчетУчетаРасчетовПоАвансам] ,_Fld10833RRef [СтатьяПрочихДоходовРасходовПоТаре] ,_Fld10829RRef [СчетУчетаРасчетовПоТаре] ,_Fld10830RRef [СчетУчетаРасчетовСКонтрагентом] ,_Fld10831RRef [ТипЦен] ,_Fld10832 [УчитыватьНДС] ,_Fld10838RRef [ОтпускРазрешил] ,_Fld10839RRef [ОтпускПроизвел] ,_Fld10840 [ДоверенностьНомер] ,_Fld10841 [ДоверенностьДата] ,_Fld10842 [ДоверенностьВыдана] ,_Fld10843 [ДоверенностьЧерезКого] ,_Fld10844 [ОтключитьКонтрольВзаиморасчетов] ,_Fld10845RRef [УсловиеПродаж] ,_Fld10846 [ДополнениеКАдресуДоставки] ,_Fld27272RRef [ГлавныйБухгалтер] ,_Fld27273 [ЗаГлавногоБухгалтераПоПриказу] ,_Fld27274 [ЗаРуководителяПоПриказу] From _Document430(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; Ссылка.ВидПередачи = V82.Перечисления/*Ссылка*/.ВидыПередачиТоваров.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7)); Ссылка.АдресДоставки = Читалка.GetString(12); Ссылка.СуммаДокумента = Читалка.GetDecimal(13); Ссылка.КратностьВзаиморасчетов = Читалка.GetDecimal(14); Ссылка.КурсВзаиморасчетов = Читалка.GetDecimal(15); Ссылка.Комментарий = Читалка.GetString(16); Ссылка.ОтражатьВБухгалтерскомУчете = ((byte[])Читалка.GetValue(18))[0]==1; Ссылка.ОтражатьВНалоговомУчете = ((byte[])Читалка.GetValue(19))[0]==1; Ссылка.ОтражатьВУправленческомУчете = ((byte[])Читалка.GetValue(20))[0]==1; Ссылка.СуммаВключаетНДС = ((byte[])Читалка.GetValue(29))[0]==1; Ссылка.ВидОперации = V82.Перечисления/*Ссылка*/.ВидыОперацийРеализацияТоваров.ПустаяСсылка.Получить((byte[])Читалка.GetValue(30)); Ссылка.УчитыватьНДС = ((byte[])Читалка.GetValue(40))[0]==1; Ссылка.ДоверенностьНомер = Читалка.GetString(43); Ссылка.ДоверенностьДата = Читалка.GetDateTime(44); Ссылка.ДоверенностьВыдана = Читалка.GetString(45); Ссылка.ДоверенностьЧерезКого = Читалка.GetString(46); Ссылка.ОтключитьКонтрольВзаиморасчетов = ((byte[])Читалка.GetValue(47))[0]==1; Ссылка.ДополнениеКАдресуДоставки = Читалка.GetString(49); Ссылка.ЗаГлавногоБухгалтераПоПриказу = Читалка.GetString(51); Ссылка.ЗаРуководителяПоПриказу = Читалка.GetString(52); Выборка.Add(Ссылка); } return Выборка; } } } }
public static V82.ДокументыСсылка.РеализацияТоваровУслуг ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return (V82.ДокументыСсылка.РеализацияТоваровУслуг)Кэш[УИ]; } var Ссылка = new V82.ДокументыСсылка.РеализацияТоваровУслуг(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return Ссылка; }