public Контрагенты(byte[] УникальныйИдентификатор,int Глубина)
{
if (Глубина>3)
{
return;
}
if (new Guid(УникальныйИдентификатор) == Guid.Empty)
{
return;
}
using (var Подключение = new SqlConnection(СтрокаСоединения))
{
Подключение.Open();
using (var Команда = Подключение.CreateCommand())
{
Команда.CommandText = @"Select top 1
_IDRRef [Ссылка]
,_Version [Версия]
,_Marked [ПометкаУдаления]
,_IsMetadata [Предопределенный]
,_ParentIDRRef [Родитель]
,_Folder [ЭтоГруппа]
,_Code [Код]
,_Description [Наименование]
,_Fld1266 [НаименованиеПолное]
,_Fld1264 [Комментарий]
,_Fld1260 [ДополнительноеОписание]
,_Fld1258RRef [ГоловнойКонтрагент]
,_Fld1262RRef [ИсточникИнформацииПриОбращении]
,_Fld1263 [КодПоОКПО]
,_Fld1261 [ИНН]
,_Fld1265 [КПП]
,_Fld1276RRef [ЮрФизЛицо]
,_Fld1268RRef [ОсновнойБанковскийСчет]
,_Fld1270RRef [ОсновнойДоговорКонтрагента]
,_Fld1269RRef [ОсновнойВидДеятельности]
,_Fld1259 [ДокументУдостоверяющийЛичность]
,_Fld1271RRef [ОсновнойМенеджерПокупателя]
,_Fld1272 [Покупатель]
,_Fld1273 [Поставщик]
,_Fld1274 [РасписаниеРаботыСтрокой]
,_Fld1275 [СрокВыполненияЗаказаПоставщиком]
,_Fld1267RRef [ОсновноеКонтактноеЛицо]
,_Fld1277 [НеЯвляетсяРезидентом]
,_Fld1278RRef [ОКОПФ]
,_Fld1279RRef [Регион]
,_Fld21240RRef [ГруппаДоступаКонтрагента]
From _Reference78(NOLOCK)
Where _IDRRef=@УникальныйИдентификатор -- and _Folder = 0x01 ";
Команда.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;
Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1;
Родитель = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(4),Глубина+1);
ЭтоГруппа = ((byte[])Читалка.GetValue(5))[0]==0;
Код = Читалка.GetString(6);
Наименование = Читалка.GetString(7);
Комментарий = Читалка.GetString(9);
if(!ЭтоГруппа)
{
НаименованиеПолное = Читалка.GetString(8);
ДополнительноеОписание = Читалка.GetString(10);
ГоловнойКонтрагент = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(11),Глубина+1);
ИсточникИнформацииПриОбращении = new V82.СправочникиСсылка.ИсточникиИнформацииПриОбращенииПокупателей((byte[])Читалка.GetValue(12),Глубина+1);
КодПоОКПО = Читалка.GetString(13);
ИНН = Читалка.GetString(14);
КПП = Читалка.GetString(15);
ЮрФизЛицо = V82.Перечисления/*Ссылка*/.ЮрФизЛицо.ПустаяСсылка.Получить((byte[])Читалка.GetValue(16));
ОсновнойБанковскийСчет = new V82.СправочникиСсылка.БанковскиеСчета((byte[])Читалка.GetValue(17),Глубина+1);
ОсновнойДоговорКонтрагента = new V82.СправочникиСсылка.ДоговорыКонтрагентов((byte[])Читалка.GetValue(18),Глубина+1);
ОсновнойВидДеятельности = new V82.СправочникиСсылка.ВидыДеятельностиКонтрагентов((byte[])Читалка.GetValue(19),Глубина+1);
ДокументУдостоверяющийЛичность = Читалка.GetString(20);
ОсновнойМенеджерПокупателя = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(21),Глубина+1);
Покупатель = ((byte[])Читалка.GetValue(22))[0]==1;
Поставщик = ((byte[])Читалка.GetValue(23))[0]==1;
РасписаниеРаботыСтрокой = Читалка.GetString(24);
СрокВыполненияЗаказаПоставщиком = Читалка.GetDecimal(25);
ОсновноеКонтактноеЛицо = new V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов((byte[])Читалка.GetValue(26),Глубина+1);
НеЯвляетсяРезидентом = ((byte[])Читалка.GetValue(27))[0]==1;
ОКОПФ = new V82.СправочникиСсылка.КлассификаторОКОПФ((byte[])Читалка.GetValue(28),Глубина+1);
Регион = new V82.СправочникиСсылка.Регионы((byte[])Читалка.GetValue(29),Глубина+1);
ГруппаДоступаКонтрагента = new V82.СправочникиСсылка.ГруппыДоступаКонтрагентов((byte[])Читалка.GetValue(30),Глубина+1);
}
//return Ссылка;
}
else
{
//return null;
}
}
}
}
}