Добрый день.
Столкнулся со следующей проблемой:
На карточку редактирования Продукт в продаже было добавлено поле "Наценка".
При изменении значения наценки, я программно изменяю на соответствующую величину поле "цена".
логика обработки изменения значений полей находится в скрипте scr_OfferingUtils в ф-ии function DataChange(DataField, ScriptObject) именно туда я и добавил необходимые изменения:
case ('Margin'):
Dataset.VALUES('Price') = новое значение
break;
Dataset.VALUES('Price') = новое значение
break;
После этого я расситывал на то, что из-за изменения значения поля 'Price' вызовется соответствующая логика,заложенная в стандартном функционале на изменение цены, и также пересчитаются связанные с ним поля, но этого не происходит:

Увеличилась только сама цена, общая сумма и суммы в валюте не пересчитались.
Подскажите пожалуйста, как это исправить?
Нравится
1 комментарий
24 октября 2011 10:01
Решение нашлось. Свою логику мне нужно было реализовать не в скипте датасета, а на событии
function dlDataOnDatasetDataChange(DataField) { DatasetDataChange(DataField); // внутри этой ф-ии логика if (DataField.Name == 'Quantity' || DataField.Name == 'UnitID') { UpdateOfferingQuantitySmartTagMenu(edtQuantity, dlData.Dataset('Quantity')); } }
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать