V82.Документы.КомплектацияНоменклатуры.НайтиПоНомеру C# (CSharp) Method

НайтиПоНомеру() public static method

public static НайтиПоНомеру ( string Номер ) : КомплектацияНоменклатуры
Номер string
return V82.ДокументыСсылка.КомплектацияНоменклатуры
        public static ДокументыСсылка.КомплектацияНоменклатуры НайтиПоНомеру(string Номер)
        {
            using (var Подключение = new SqlConnection(СтрокаСоединения))
            {
                Подключение.Open();
                using (var Команда = Подключение.CreateCommand())
                {
                    Команда.CommandText = @"Select top 1
                    _IDRRef [Ссылка]
                    ,_Version [Версия]
                    ,_Marked [ПометкаУдаления]
                    ,_Fld18967RRef [ВидКомплектации]
                    ,_Fld5498RRef [ВидОперации]
                    ,_Fld5499RRef [ЕдиницаИзмерения]
                    ,_Fld18968_TYPE [ЗаказВыпуска_Тип],_Fld18968_RRRef [ЗаказВыпуска],_Fld18968_RTRef [ЗаказВыпуска_Вид]
                    ,_Fld5500_TYPE [ЗаказРезерв_Тип],_Fld5500_RRRef [ЗаказРезерв],_Fld5500_RTRef [ЗаказРезерв_Вид]
                    ,_Fld5501 [Количество]
                    ,_Fld5502 [Комментарий]
                    ,_Fld5503 [Коэффициент]
                    ,_Fld5504RRef [НДСвСтоимостиТоваров]
                    ,_Fld5505RRef [Номенклатура]
                    ,_Fld18406RRef [НоменклатурнаяГруппа]
                    ,_Fld5506RRef [Организация]
                    ,_Fld5507RRef [Ответственный]
                    ,_Fld5508 [ОтражатьВБухгалтерскомУчете]
                    ,_Fld5509 [ОтражатьВНалоговомУчете]
                    ,_Fld5510 [ОтражатьВУправленческомУчете]
                    ,_Fld5511RRef [Подразделение]
                    ,_Fld18408RRef [ПодразделениеОрганизации]
                    ,_Fld5512RRef [СерияНоменклатуры]
                    ,_Fld5513RRef [Склад]
                    ,_Fld18969RRef [Спецификация]
                    ,_Fld5514RRef [СпособСписанияОстаткаТоваров]
                    ,_Fld5515RRef [СтатусПартии]
                    ,_Fld18407RRef [СтатьяЗатратСписанияНДС]
                    ,_Fld5517RRef [СчетУчетаБУ]
                    ,_Fld5518RRef [СчетУчетаНУ]
                    ,_Fld18398RRef [СчетСписанияНДС]
                    ,_Fld18399RRef [СубконтоСписанияНДС1]
                    ,_Fld18400RRef [СубконтоСписанияНДС2]
                    ,_Fld18401RRef [СубконтоСписанияНДС3]
                    ,_Fld18402RRef [СчетСписанияНДСНУ]
                    ,_Fld18403RRef [СубконтоСписанияНДСНУ1]
                    ,_Fld18404RRef [СубконтоСписанияНДСНУ2]
                    ,_Fld18405RRef [СубконтоСписанияНДСНУ3]
                    ,_Fld5519RRef [ХарактеристикаНоменклатуры]
                    ,_Fld18970RRef [Контрагент]
                    ,_Fld18971RRef [ДоговорКонтрагента]
                    ,_Fld18972RRef [СчетЗатрат]
                    ,_Fld18973RRef [СчетЗатратНУ]
                    ,_Fld18974RRef [СтатьяЗатрат]
                    ,_Fld18975_TYPE [Заказ_Тип],_Fld18975_RRRef [Заказ],_Fld18975_RTRef [Заказ_Вид]
                    ,_Fld18976 [ЦенаПередачи]
                    ,_Fld18977 [СуммаПередачи]
                    From _Document299(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;
                            Ссылка.ВидКомплектации = V82.Перечисления/*Ссылка*/.ВидыКомплектации.ПустаяСсылка.Получить((byte[])Читалка.GetValue(3));
                            Ссылка.ВидОперации = V82.Перечисления/*Ссылка*/.ВидыОперацийКомплектацияНоменклатуры.ПустаяСсылка.Получить((byte[])Читалка.GetValue(4));
                            Ссылка.Количество = Читалка.GetDecimal(12);
                            Ссылка.Комментарий = Читалка.GetString(13);
                            Ссылка.Коэффициент = Читалка.GetDecimal(14);
                            Ссылка.НДСвСтоимостиТоваров = V82.Перечисления/*Ссылка*/.ДействиеНДСВСтоимостиТоваров.ПустаяСсылка.Получить((byte[])Читалка.GetValue(15));
                            Ссылка.ОтражатьВБухгалтерскомУчете = ((byte[])Читалка.GetValue(20))[0]==1;
                            Ссылка.ОтражатьВНалоговомУчете = ((byte[])Читалка.GetValue(21))[0]==1;
                            Ссылка.ОтражатьВУправленческомУчете = ((byte[])Читалка.GetValue(22))[0]==1;
                            Ссылка.СпособСписанияОстаткаТоваров = V82.Перечисления/*Ссылка*/.СпособыСписанияОстаткаТоваров.ПустаяСсылка.Получить((byte[])Читалка.GetValue(28));
                            Ссылка.СтатусПартии = V82.Перечисления/*Ссылка*/.СтатусыПартийТоваров.ПустаяСсылка.Получить((byte[])Читалка.GetValue(29));
                            Ссылка.ЦенаПередачи = Читалка.GetDecimal(50);
                            Ссылка.СуммаПередачи = Читалка.GetDecimal(51);
                            return Ссылка;
                        }
                        else
                        {
                            return null;
                        }
                    }
                }
            }
        }