Регистр сведений:Корректировка спецификации

Материал из Окнософт
Перейти к: навигация, поиск

Назначение

Данные регистра сведений Корректировка спецификации используются документом Расчет при импорте из технологических программ и при добавлении продукции через формы Добавить продукцию и Добавить продукцию список
С помощью регистра может быть организована:

  • Подмена номенклатур при импорте
  • Изменение параметров (углы и длины) спецификаций
  • Сопоставление одной строке спецификации технологической программы нескольких строк спецификации 1С
  • Формирование произвоьных спецификаций например, на такие продукции, как жалюзи, водоотливы, москитные сетки, рольставни и пр.

Измерения регистра

  • Область: записи регистра иcпользуются в нескольких фрагментах кода УПзП. Для каждой области доступны разные переменные в поле формула. Есть три области:
    • ОсновнаяСпецификация - используется при формировании основной спецификации, в том числе при импорте из технологических программ
    • ПриИмпортеИзСуперокон - дополнительный код, выполняемый при загрузке из суперокон. Вызывается для каждой строки исходной спецификации
    • ДопСтрокиПоМатериалам - не используется в текущей версии УПзП
  • Инд: поле числового типа - расширение ключа. Используется, когда нужно создать несколько записей для остального набора измерений
  • Продукция: номенклатура продукции, к которой будут применены правила
  • МатериалОперация: номенклатура материала для добавления в спецификацию продукции
  • Характеристика: характеристика номенклатуры материала для добавления в спецификацию продукции

Ресурсы

  • Формула: произвольный код на языке 1С. Переменные, доступные в коде описаны ниже по тексту
  • ФормулаУсловия: произвольный код на языке 1С, должен возвращать значение типа Булево
  • ЭтоСтрокаЗаказа: указывает системе, что рассчитанная строка должна добавляться в табличную часть Продукция документа Расчет, а не в табличную часть Спецификация характеристики продукции

Доступные функции и переменные

  • хСП: текущая строка спецификации продукции
  • Стр: текущая строка табличной части Продукция документа Расчет
  • Парам: структура параметров строки расчета (см. функцию ПолучитьПараметрыСтроки() обычной и управляемой форм документа)
  • Парам["оХ"]: характеристика продукции
  • Кроме переменных, при выполнении кода полей Формула и ФормулаУсловия доступны экспортные функции общих модулей и все функции модуля пзФормированиеСпецификацийСервер

Примеры фрагментов кода

хСП.QTY = 1;
хСП.Len = 2*Парам["Длина"]/1000;
хСП.Width = 0;
ХарактеристикаПоЦвету(Стр, хСП);

Добавляет в спецификацию элемент, длина которого привязака к параметру

Если Парам["Площадь"] > 0 Тогда
хСП.SQR = Парам["Площадь"];
Иначе
хСП.SQR = Парам["ПлощадьИзделий"]; КонецЕсли; хСП.QTY = 1;

Использует для расчета площади тот или иной параметр в зависимости от

пзПостроительИзделийСервер.ДополнитьСпецификациейПостроителя(Парам, хСП);

Закидывает в спецификацию строки, рассчитанные по справочнику Вставки - удобно для заполнений и москиток

ДобавитьСтрокуВТЧЗаполнение(Парам, 1, Стр.Длина, Стр.Высота);

Необходимо, если спецификация заполнения формируется корректировкой

хСП.QTY = Парам["Количество"];
//Парам["УдалитьВедущуюПродукцию"] = Истина;
СоздатьРассчитатьХарактеристикуПродукции(Парам, хСП, Отказ);

Рекурсивный расчет вложенных спецификаций

ЕстьАрки(Спецификация) Или ЕстьНепрямыеУглы(Спецификация)

Можно использовать в формуле условия

СтрокаСпецификацииВынесенногоАксессуара(Парам, хСП);

Заполняет строку спецификации виртуальной продукции, полученной через ВЫНОСИТЬ_В_АКСЕССУАРЫ