Какова должна быть функция или процедура которая выполнит "полезную нагрузку"?
Какие параметры она принимает и отдает?
Имя должно соответсвовать команде?
По идее это должен быть простой фильтр, который в зависимости от заданого алгоритма должен ответить да или нет (в смысле проходит скидка для данной строки или нет).
Форма с настройками пока не нужна. Для начала пока разберусь, впишу все в тело функции.
Если кому еще понадобится решение то минимальный код будет следующим
Функция СведенияОВнешнейОбработке() Экспорт
Возврат СкидкиНаценкиСервер.ПараметрыРегистрацииВнешнейОбработкиУсловияПредоставленияСки<wbr>докНаценок(
НСтр("ru = 'Условие скидки...'"),
НСтр("ru = 'Условие скидки...'"));
КонецФункции
Функция ПроверитьУсловие(Условие, СтрокаДереваСкидок, ПараметрыВнешнейОбработки = Неопределено, ПараметрыРасчета) Экспорт
РезультатПроверки = Новый Структура;
ТекущееУсловиеВыполнено = Ложь;
Для Каждого СтрокаТовара Из СтрокаДереваСкидок.СтруктураДополнительныхДанных.ТаблицаТоваровПоСегментам Цикл
//В СтрокаТовара имеем доступ к таб.части. Например СтрокаТовара.Характеристика
Если УсловиеВыполняется Тогда
СтрокаТовара.УсловиеПоСтрокеВыполнено = Истина;
ТекущееУсловиеВыполнено = Истина;
КонецЕсли;
КонецЦикла;
РезультатПроверки.Вставить("ТекущееУсловиеВыполнено", ТекущееУсловиеВыполнено);
Возврат РезультатПроверки;
КонецФункции
Показать
Только надо убрать <wbr> - который непонятно почему вписался в код. БАГ
Да я бы с удовольствием. Ради этого ответа я и зарегистрировался сегодня. Только старт мани нету.
П.С. Обычно я такие вещи сам ищу в документации. Работаю я и с другими языкам программирования. Но еще не встречал чтобы документация была "не для всех". Это всю мотивацию изучать 1С далее убивает.
Если кому еще понадобится решение то минимальный код будет следующим
Функция СведенияОВнешнейОбработке() Экспорт
Возврат СкидкиНаценкиСервер.ПараметрыРегистрацииВнешнейОбработкиУсловияПредоставленияСки<wbr>докНаценок(
НСтр("ru = 'Условие скидки...'"),
НСтр("ru = 'Условие скидки...'"));
КонецФункции
Функция ПроверитьУсловие(Условие, СтрокаДереваСкидок, ПараметрыВнешнейОбработки = Неопределено, ПараметрыРасчета) Экспорт
РезультатПроверки = Новый Структура;
ТекущееУсловиеВыполнено = Ложь;
Для Каждого СтрокаТовара Из СтрокаДереваСкидок.СтруктураДополнительныхДанных.ТаблицаТоваровПоСегментам Цикл
//В СтрокаТовара имеем доступ к таб.части. Например СтрокаТовара.Характеристика
Если УсловиеВыполняется Тогда
СтрокаТовара.УсловиеПоСтрокеВыполнено = Истина;
ТекущееУсловиеВыполнено = Истина;
КонецЕсли;
КонецЦикла;
РезультатПроверки.Вставить("ТекущееУсловиеВыполнено", ТекущееУсловиеВыполнено);
Возврат РезультатПроверки;
КонецФункции
Показать
Только надо убрать <wbr> - который непонятно почему вписался в код. БАГ