示例#1
0
        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 [Родитель]
					,_Code [Код]
					,_Description [Наименование]
					,_Fld1715 [Комментарий]
					,_Fld1716 [КодРегиона]
					,_Fld1717 [КодАдресногоЭлемента]
					,_Fld1718 [ЖДСтанцияНазначения]
					From _Reference139(NOLOCK)
					Where _IDRRef=@УникальныйИдентификатор  "                    ;
                    Команда.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);
                            Код                  = Читалка.GetString(5);
                            Наименование         = Читалка.GetString(6);
                            Комментарий          = Читалка.GetString(7);
                            КодРегиона           = Читалка.GetString(8);
                            КодАдресногоЭлемента = Читалка.GetDecimal(9);
                            ЖДСтанцияНазначения  = Читалка.GetString(10);
                            //return Ссылка;
                        }
                        else
                        {
                            //return null;
                        }
                    }
                }
            }
        }
示例#2
0
        public static V82.СправочникиСсылка.егионы ВзятьИзКэша(byte[] УникальныйИдентификатор)
        {
            var УИ = new Guid(УникальныйИдентификатор);

            if (Кэш.ContainsKey(УИ))
            {
                return((V82.СправочникиСсылка.егионы)Кэш[УИ]);
            }
            var Ссылка = new V82.СправочникиСсылка.егионы(УникальныйИдентификатор);

            Кэш.Add(УИ, Ссылка);
            return(Ссылка);
        }
示例#3
0
        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;
                        }
                    }
                }
            }
        }