public static V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return((V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ)Кэш[УИ]); } var Ссылка = new V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return(Ссылка); }
public static ДокументыВыборка.ПоступлениеТоваровУслугВНТТ ВыбратьПоНомеру(int Первые,string Мин,string Макс) { using (var Подключение = new SqlConnection(СтрокаСоединения)) { Подключение.Open(); using (var Команда = Подключение.CreateCommand()) { Команда.CommandText = string.Format(@"Select top {0} _IDRRef [Ссылка] ,_Version [Версия] ,_Marked [ПометкаУдаления] ,_Fld9756RRef [БанковскийСчетКонтрагента] ,_Fld9757RRef [ВалютаДокумента] ,_Fld9758RRef [ВидОперации] ,_Fld9759 [ДатаВходящегоДокумента] ,_Fld9760RRef [ДоговорКонтрагента] ,_Fld9761 [Комментарий] ,_Fld9762RRef [Контрагент] ,_Fld9763 [КратностьВзаиморасчетов] ,_Fld9764 [КурсВзаиморасчетов] ,_Fld9765 [НДСВключенВСтоимость] ,_Fld9766 [НомерВходящегоДокумента] ,_Fld9767RRef [Организация] ,_Fld9768RRef [Ответственный] ,_Fld9769 [ОтражатьВБухгалтерскомУчете] ,_Fld9770 [ОтражатьВНалоговомУчете] ,_Fld9771 [ОтражатьВУправленческомУчете] ,_Fld9772RRef [Подразделение] ,_Fld9773RRef [ПодразделениеОрганизации] ,_Fld9774 [РегистрироватьЦеныПоставщика] ,_Fld9775_TYPE [Сделка_Тип],_Fld9775_RRRef [Сделка],_Fld9775_RTRef [Сделка_Вид] ,_Fld9776RRef [Склад] ,_Fld9777 [СуммаВключаетНДС] ,_Fld9778 [СуммаДокумента] ,_Fld9779RRef [СчетУчетаРасчетовПоАвансам] ,_Fld9780RRef [СчетУчетаРасчетовПоТаре] ,_Fld9781RRef [СчетУчетаРасчетовСКонтрагентом] ,_Fld9782RRef [ТипЦен] ,_Fld9783 [УчитыватьНДС] ,_Fld9784RRef [ДокументПеремещения] ,_Fld9785_TYPE [Проект_Тип],_Fld9785_RRRef [Проект],_Fld9785_RTRef [Проект_Вид] ,_Fld9786RRef [УсловиеПродаж] From _Document406(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; Ссылка.ВидОперации = V82.Перечисления/*Ссылка*/.ВидыОперацийПоступлениеТоваровУслугВНТТ.ПустаяСсылка.Получить((byte[])Читалка.GetValue(5)); Ссылка.ДатаВходящегоДокумента = Читалка.GetDateTime(6); Ссылка.Комментарий = Читалка.GetString(8); Ссылка.КратностьВзаиморасчетов = Читалка.GetDecimal(10); Ссылка.КурсВзаиморасчетов = Читалка.GetDecimal(11); Ссылка.НДСВключенВСтоимость = ((byte[])Читалка.GetValue(12))[0]==1; Ссылка.НомерВходящегоДокумента = Читалка.GetString(13); Ссылка.ОтражатьВБухгалтерскомУчете = ((byte[])Читалка.GetValue(16))[0]==1; Ссылка.ОтражатьВНалоговомУчете = ((byte[])Читалка.GetValue(17))[0]==1; Ссылка.ОтражатьВУправленческомУчете = ((byte[])Читалка.GetValue(18))[0]==1; Ссылка.РегистрироватьЦеныПоставщика = ((byte[])Читалка.GetValue(21))[0]==1; Ссылка.СуммаВключаетНДС = ((byte[])Читалка.GetValue(26))[0]==1; Ссылка.СуммаДокумента = Читалка.GetDecimal(27); Ссылка.УчитыватьНДС = ((byte[])Читалка.GetValue(32))[0]==1; Ссылка.ДокументПеремещения = V82.ДокументыСсылка.ПеремещениеТоваров.ВзятьИзКэша((byte[])Читалка.GetValue(33)); Выборка.Add(Ссылка); } return Выборка; } } } }
public static V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return (V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ)Кэш[УИ]; } var Ссылка = new V82.ДокументыСсылка.ПоступлениеТоваровУслугВНТТ(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return Ссылка; }