Я в основном ищу идеи здесь.Вероятность того, что моя группа купит что-то для решения проблемы, невероятно мала, но давайте предложим любые коммерческие продукты, которые могут помочь.
Основная проблема связана со следующим сценарием:
- Пользователи вводят данные в форму, которая автоматически заполняет некоторые значения на основе существующих данных.
- Эти данные сохраняются и все отлично.
- Отчет генерируется и синхронизируется ссохраненные данные.
- Содержимое базы данных, определяющее автоматически заполненные значения, теперь изменяется.
- При открытии формы автоматически заполненные значения изменяются.
- БезПри сохранении значения отчета также должны быть обновлены, но это не так.
Прочие сведения:
- Наше решение для отчетности требует, чтобы ответы и оценки правил были всеиз хранимых процедур или запросов в базе данных Oracle.
- Форма запускается в браузере.
- На основании автоматически заполненных значений некоторые части формы / отчета будут видимыми или невидимыми.
Вопрос: Как я могу реализовать набор правил (хранящихся в базе данных) таким образом, чтобы я мог легко оценить их как из JavaScript, так и из SQL?
Правило может выглядеть следующим образом:
- Если на вопрос 1 ответ «Да», скрыть вопросы 2 - 10.
- Если на вопрос 3 ответить «»Нет », автоматически ответьте« X »на Вопрос 4.
- Если Вопрос 1 -« Да », а Вопрос 3 -« Нет », а Вопрос 4 -« Да », запустите метод« что угодно ».
Сейчас у меня в голове много возможных решений, но большинство из них включают в себя написание двух интерпретаторов (один в javascript и один в sql).Хотя это не обязательно ужасно, лучше всего иметь дело только с одним интерпретатором.
Кроме того, клиент должен обновлять форму, пока пользователь вводит значения, поэтому каждый раз, когда пользователь меняет пользователь, возвращается к базе данных.ответ вряд ли будет практическим решением.
Обновление / Модификация
В настоящее время я склоняюсь к реализации правил, которые могут быть оценены непосредственно с помощью JavaScript (снемного кода, окружающего правило), и преобразован / обработан процедурой хранилища в динамический sql, который может оценивать правила в Oracle.
Есть какие-нибудь предложения для этого?