#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
Элементы.ФормаПодборИзТНВЭД.Видимость = ПравоДоступа("Редактирование", Метаданные.Справочники.КлассификаторТНВЭД);
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ОбновитьПослеДобавленияТНВЭД"
Или ИмяСобытия = "ЗавершениеЗагрузкиДанныхТНВЭД" Тогда
Элементы.Список.Обновить();
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСписок
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
Отказ = Истина;
ДополнительныеПараметры = Новый Структура;
Если Копирование Тогда
ЗначенияЗаполнения = Новый Структура;
ЗначенияЗаполнения.Вставить("Код", Элемент.ТекущиеДанные.Код);
ЗначенияЗаполнения.Вставить("Наименование", Элемент.ТекущиеДанные.Наименование);
ДополнительныеПараметры.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения);
КонецЕсли;
Оповещение = Новый ОписаниеОповещения("ВопросЗавершение", ЭтотОбъект, ДополнительныеПараметры);
ТекстВопроса = НСтр("ru = 'Есть возможность подобрать товарную номенклатуру ВЭД из классификатора.
|Подобрать?'");
ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет, , КодВозвратаДиалога.Нет);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ПодборИзТНВЭД(Команда)
ОповещениеОЗакрытии = Новый ОписаниеОповещения("ПодборИзКлассификатораЗавершение", ЭтотОбъект);
НастройкиРежима = Новый Структура;
НастройкиРежима.Вставить("Владелец", ЭтотОбъект);
НастройкиРежима.Вставить("ОбработчикЗавершения", ОповещениеОЗакрытии);
Если Элементы.Список.ТекущиеДанные <> Неопределено Тогда
НастройкиРежима.Вставить("КодВыбранногоЭлемента", Элементы.Список.ТекущиеДанные.Код);
КонецЕсли;
ОблачныеКлассификаторыКлиент.ПодобратьИзСервисаЭлементыТНВЭД(НастройкиРежима);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ВопросЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
ПодборИзТНВЭД(Неопределено);
Иначе
ОткрытьФорму("Справочник.КлассификаторТНВЭД.Форма.ФормаЭлемента", ДополнительныеПараметры, ЭтотОбъект);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПодборИзКлассификатораЗавершение(РезультатВыбора, ДопПараметры) Экспорт
Если РезультатВыбора = Неопределено Тогда
Возврат;
КонецЕсли;
НовыйЭлемент = ДобавитьЭлементКлассификатора(РезультатВыбора);
ОповеститьОбИзменении(НовыйЭлемент);
Элементы.Список.ТекущаяСтрока = НовыйЭлемент;
КонецПроцедуры
&НаСервереБезКонтекста
Функция ДобавитьЭлементКлассификатора(СвойстваЭлемента)
Если НЕ ЗначениеЗаполнено(СвойстваЭлемента.Код) Тогда
Возврат Справочники.КлассификаторТНВЭД.ПустаяСсылка();
КонецЕсли;
ЭлементТНВЭД = Справочники.КлассификаторТНВЭД.СоздатьОбновитьЭлементКлассификатора(СвойстваЭлемента);
Возврат ЭлементТНВЭД;
КонецФункции
#КонецОбласти