Как поймать событие изменение записи в детали с редактируемым реестром?
Мною была создана деталь по это инструкции: https://academy.terrasoft.ru/documents/technic-sdk/7-10/sozdanie-detali-s-redaktiruemym-reestrom
С помощью SQL запроса деталь была зарегистрирована. И затем добавлена на вкладку [Доставка] страницы заказа, через мастер. По полям Колонка детали: запрос и колонка объекта: id.
В схему детали был добавлен код:
attributes: { "UsrOrder": { dependencies: [ { columns: ["UsrOrder"], methodName: "calculateBalance" } ] } }, methods: { calculateBalance: function() { var param1 = this.get("UsrOrder"); console.log(param1); } },
В результате метод calculateBalance не срабатывает.
Как реализовать отлов события изменения значения колонки и изменение соседних колонок в методе сработавшим на изменение.
Нравится
У меня абсолютно такой же способ срабатывает. Вы компилировали конфигурацию после регистрации страницы через sql?
Варфоломеев Данила, полностью перекомпилировал конфигурацию, не помогло. А так же не знаю, плохо ли, такая ошибка после нажатия на кнопку обновить выбранные в базе данных: Не удалось обновить структуру для схем: UsrCourierServiceDetail ....
Такой вопрос, нужно ли, где-либо прописывать bindTo на атрибут, может поэтому событие не происходит?
То что осталась ошибка "Не удалось обновить структуру для схем: UsrCourierServiceDetail" - плохо. Поскольку структура БД не была обновлена, и там попросту нет таблицы с актуальными колонками UsrCourierServiceDetail. Потому сначала нужно решить проблему с обновлением структуры БД, после выполнить перекомпиляцию приложения. После внесенных изменений должен отрабатывать метод calculateBalance.
Привет
Внимательно разберитесь с примером https://academy.terrasoft.ru/documents/technic-sdk/7-10/dobavlenie-vych…
Вы пытаетесь использовать вычисляемый атрибут, который пересчитывается с помощью метода calculateBalance при изменении колонки UsrOrder. А так как колонка детали UsrOrder никогда не меняется после создания, то и метод не вызывается :)