public static V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return((V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов)Кэш[УИ]); } var Ссылка = new V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return(Ссылка); }
public static СправочникиВыборка.КонтактныеЛицаКонтрагентов Выбрать() { using (var Подключение = new SqlConnection(СтрокаСоединения)) { Подключение.Open(); using (var Команда = Подключение.CreateCommand()) { Команда.CommandText = @"Select top 1000 _IDRRef [Ссылка] ,_Version [Версия] ,_Marked [ПометкаУдаления] ,_IsMetadata [Предопределенный] ,_Code [Код] ,_Description [Наименование] ,_Fld1251 [Должность] ,_Fld1252 [Комментарий] ,_Fld1253RRef [КонтактноеЛицо] ,_Fld1254RRef [РольКонтактногоЛица] From _Reference77(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; Ссылка.Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1; Ссылка.Код = Читалка.GetString(4); Ссылка.Наименование = Читалка.GetString(5); Ссылка.Должность = Читалка.GetString(6); Ссылка.Комментарий = Читалка.GetString(7); Ссылка.КонтактноеЛицо = V82.СправочникиСсылка.КонтактныеЛица.ВзятьИзКэша((byte[])Читалка.GetValue(8)); Ссылка.РольКонтактногоЛица = V82.СправочникиСсылка.РолиКонтактныхЛиц.ВзятьИзКэша((byte[])Читалка.GetValue(9)); Выборка.Add(Ссылка); } return Выборка; } } } }
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; } } } } }
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; } } } } }
public static V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов ВзятьИзКэша(byte[] УникальныйИдентификатор) { var УИ = new Guid(УникальныйИдентификатор); if (Кэш.ContainsKey(УИ)) { return (V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов)Кэш[УИ]; } var Ссылка = new V82.СправочникиСсылка.КонтактныеЛицаКонтрагентов(УникальныйИдентификатор); Кэш.Add(УИ, Ссылка); return Ссылка; }