public static ДокументыСсылка.ЗаказПокупателя НайтиПоНомеру(string Номер)
{
using (var Подключение = new SqlConnection(СтрокаСоединения))
{
Подключение.Open();
using (var Команда = Подключение.CreateCommand())
{
Команда.CommandText = @"Select top 1
_IDRRef [Ссылка]
,_Version [Версия]
,_Marked [ПометкаУдаления]
,_Fld4330 [АдресДоставки]
,_Fld4331RRef [ВалютаДокумента]
,_Fld4332RRef [ВидОперации]
,_Fld4333 [ВремяНапоминания]
,_Fld4334 [ДатаОплаты]
,_Fld4335 [ДатаОтгрузки]
,_Fld4336RRef [ДисконтнаяКарта]
,_Fld4337RRef [ДоговорКонтрагента]
,_Fld4338 [ИспользоватьПлановуюСебестоимость]
,_Fld4339 [ИтогПлановаяСебестоимость]
,_Fld4340 [Комментарий]
,_Fld4341RRef [Контрагент]
,_Fld4342 [КратностьВзаиморасчетов]
,_Fld4343 [КурсВзаиморасчетов]
,_Fld4344 [НапомнитьОСобытии]
,_Fld4345RRef [Организация]
,_Fld4346RRef [Ответственный]
,_Fld4347 [ОтражатьВБухгалтерскомУчете]
,_Fld4348 [ОтражатьВНалоговомУчете]
,_Fld4349RRef [Подразделение]
,_Fld4351_TYPE [СтруктурнаяЕдиница_Тип],_Fld4351_RRRef [СтруктурнаяЕдиница],_Fld4351_RTRef [СтруктурнаяЕдиница_Вид]
,_Fld4350_TYPE [СкладГруппа_Тип],_Fld4350_RRRef [СкладГруппа],_Fld4350_RTRef [СкладГруппа_Вид]
,_Fld4352 [СуммаВключаетНДС]
,_Fld4353 [СуммаДокумента]
,_Fld4354RRef [ТипЦен]
,_Fld4356 [УчитыватьНДС]
,_Fld4357RRef [Грузополучатель]
,_Fld4358RRef [КонтактноеЛицоКонтрагента]
,_Fld4359RRef [УсловиеПродаж]
,_Fld4360 [ДополнениеКАдресуДоставки]
,_Fld18734_TYPE [ДокументОснование_Тип],_Fld18734_RRRef [ДокументОснование],_Fld18734_RTRef [ДокументОснование_Вид]
,_Fld18959RRef [Грузоотправитель]
,_Fld21430 [НомерВходящегоДокументаЭлектронногоОбмена]
,_Fld21431 [ДатаВходящегоДокументаЭлектронногоОбмена]
,_Fld26726 [НомерПоДаннымПокупателя]
,_Fld26727 [ДатаПоДаннымПокупателя]
From _Document257(NOLOCK)
Where _Number = @Номер";
Команда.Parameters.AddWithValue("Номер", Номер);
using (var Читалка = Команда.ExecuteReader())
{
if (Читалка.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);
Ссылка.ВидОперации = V82.Перечисления/*Ссылка*/.ВидыОперацийЗаказПокупателя.ПустаяСсылка.Получить((byte[])Читалка.GetValue(5));
Ссылка.ВремяНапоминания = Читалка.GetDateTime(6);
Ссылка.ДатаОплаты = Читалка.GetDateTime(7);
Ссылка.ДатаОтгрузки = Читалка.GetDateTime(8);
Ссылка.ИспользоватьПлановуюСебестоимость = ((byte[])Читалка.GetValue(11))[0]==1;
Ссылка.ИтогПлановаяСебестоимость = Читалка.GetDecimal(12);
Ссылка.Комментарий = Читалка.GetString(13);
Ссылка.КратностьВзаиморасчетов = Читалка.GetDecimal(15);
Ссылка.КурсВзаиморасчетов = Читалка.GetDecimal(16);
Ссылка.НапомнитьОСобытии = ((byte[])Читалка.GetValue(17))[0]==1;
Ссылка.ОтражатьВБухгалтерскомУчете = ((byte[])Читалка.GetValue(20))[0]==1;
Ссылка.ОтражатьВНалоговомУчете = ((byte[])Читалка.GetValue(21))[0]==1;
Ссылка.СуммаВключаетНДС = ((byte[])Читалка.GetValue(29))[0]==1;
Ссылка.СуммаДокумента = Читалка.GetDecimal(30);
Ссылка.УчитыватьНДС = ((byte[])Читалка.GetValue(32))[0]==1;
Ссылка.ДополнениеКАдресуДоставки = Читалка.GetString(36);
Ссылка.НомерВходящегоДокументаЭлектронногоОбмена = Читалка.GetString(41);
Ссылка.ДатаВходящегоДокументаЭлектронногоОбмена = Читалка.GetDateTime(42);
Ссылка.НомерПоДаннымПокупателя = Читалка.GetString(43);
Ссылка.ДатаПоДаннымПокупателя = Читалка.GetDateTime(44);
return Ссылка;
}
else
{
return null;
}
}
}
}
}