Каталог решений - Дополнительные реквизиты документов и справочников

Дополнительные реквизиты документов и справочников

Дополнительные реквизиты документов и справочников

В наличии

Программное создание доп. реквизитов

Категория:

Описание

Попросили в V8 сделать отчет «Сообщение о ввозе»на основе док-та «ГТД по импорту». При анализе задания, выяснилось, что в БД(Бухгалтерия) нет информации, требуемой в отчет.
— Способ доставки корреспонденции
— Код ТН ВЭД ТС
— Категория
— Кол-во листов
первая мысль была снимать с поддержки и править конфигурацию, но потом пришла «светлая мысля» делать на доп. реквизитах докуметов и справочников. При первоначальной настройки отчета создаю доп реквизиты документа «ГТД по импорту»:
1.Способ доставки
2.Кол-во листов
3.Номер договора (по требованию заказчика)
4.Дата договора (по требованию заказчика — ему удобно, чтобы договор «сидел» в документе)
и реквизиты номенклатуры
1.Категория
2.Код ТН ВЭД ТС
Всё. Далее пользователь заполняет реквизиты, а вывести форму — дело техники.

Подробности программной работы с доп.реквизитами:
форма настройки.
При открытии Читаю ХранилищеОбщихНастроек, если неопределено
Заполняю поля формы с названиями доп. реквизитов

ПараметрыРаботы = ХранилищеОбщихНастроек.Загрузить(«ГЧ.СообщениеОВвозе»,»Параметры»);
Если ПараметрыРаботы <> Неопределено Тогда
ПараметрыРаботы.Свойство(«АкредитованныйКонтрагент»,АкредитованныйКонтрагент);
ПараметрыРаботы.Свойство(«НазваниеДопСвойстваСпособДоставки»,НазваниеДопСвойстваСпособДоставки);
и т.д.

Если Не ЗначениеЗаполнено(НазваниеДопСвойстваСпособДоставки) Тогда
НазваниеДопСвойстваСпособДоставки = «1.Способ доставки»;
КонецЕсли;
и т.д

Перед закрытием формы настройки, создаю структуру, записываю в неё названия полей(на случай если пользователь изменил название поля) сохраняю а ХранилищеОбщихНастроек

ПараметрыРаботы = Новый Структура;
ПараметрыРаботы.Вставить(«АкредитованныйКонтрагент»,АкредитованныйКонтрагент);
ПараметрыРаботы.Вставить(«НазваниеДопСвойстваСпособДоставки»,НазваниеДопСвойстваСпособДоставки);
и т.д

Далее если доп реквизиты ещё не созданы (первый запуск) создаём

Если ЗначениеЗаполнено(НазваниеДопСвойстваКатегория) Тогда
я = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(НазваниеДопСвойстваКатегория);
Если я.Пустая() Тогда
я = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
я.Наименование = НазваниеДопСвойстваКатегория;
я.ТипЗначения = Новый ОписаниеТипов(«Строка»,Новый КвалификаторыСтроки(20));
я.НазначениеСвойства = ПланывидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура;
я.Записать();
Записано = Истина;
КонецЕсли;
Иначе
Сообщить(«Заполните «»Название доп. свойства «»Категория»» «» «);
ВсёЗаполнено = Ложь;
КонецЕсли;

has been added to your cart:
Оформление заказа