Перейти к содержимому


Моментальное вычисление при изменении поля связь


Сообщений в теме: 3

#1 dev77rus

    Активный участник

  • Пользователи
  • PipPipPip
  • 114 сообщений
  • Пол:Мужчина

Отправлено 04 Декабрь 2014 - 00:39

Здравствуйте,
не получается сделать так, чтобы при изменении поля№1 (типа связь) менялось поле №2 (тоже типа связь). Поле №2 подтягивается вычислением, для того чтобы отфильтровать Поле№3 (тоже тип связь). Фильтрация работает только после сохранения изменений в поле№2.

Подскажите, как правильно реализовать?
Спасибо.

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Декабрь 2014 - 10:02

А каким образом то делали?

#3 dev77rus

    Активный участник

  • Пользователи
  • PipPipPip
  • 114 сообщений
  • Пол:Мужчина

Отправлено 04 Декабрь 2014 - 15:03

Постараюсь объяснить....

Есть трехуровневый справочник расценок: Главы справочника (табл.) ---> Плановые расценки (табл.) ---> Фактические расценки (табл.).
Плановые расценки в теории более общие и включают в себя фактические расценки (один ко многим).

Есть таблица "План" - калькуляция (план затрат) по объекту с полями : 1. Плановая расценка (связь) 2. Кол-во и т.д. - Эта таблица набирается Плановыми расценками.

Есть таблица "Факт" - фактические затраты по объекту с полем связи: 1. Фактическая расценка.

Задача отфильтровать выпадающий список фактических расценок в таблице "Факт" таким образом, чтобы в нем были только те фактические расценки, которые в подчинении у тех плановых, которые соответственно запланированы в таблице "План". Для этого в таблице "Факт" первым делом нужно выбрать ту плановую расценку, которая забита в таблице "План", т.е. поле связи. Но по этому полю не происходит фильтрация Фактических расценок, т.к. в поле хранятся ID не плановых расценок, а тех записей, которые созданы в таблице план.

Для того, чтобы фильтр работал, я создал служебное поле с вычислением, которое подтягивает в именно ID плановой расценки. После этого поле Фактическая расценка прекрасно фильтруется, но! после сохранения записи. Т.е. нужно в процессе редактирования сохранить запись, а потом ее опять редактировать.

Мне бы хотелось, чтобы вычисление с подтягиванием ID работало сразу после изменения поля "Плановая расценка" и соответственно (я так думаю) сразу должен срабатывать фильтр в поле "Фактическая расценка"

Вот как то так. Надеюсь, что поймете.

#4 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Декабрь 2014 - 18:23

Такого в программе просто нет на данный момент, чтобы вычисление срабатывало сразу, без предварительного сохранения. Точнее, данный механизм реализован, но только в подтаблицах. В основных таблицах пока только планируется подобное. Возможно, существует альтернативные решения от умельцев, через JS и AJAX, но я не берусь их комментировать, только если кто-то из авторов их здесь опишет.





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных