|
|
|
Обновить значение database-поля на форме до того, как сделан commit
|
|||
|---|---|---|---|
|
#18+
Есть форма с database полями. Одно из них - database-поле Статус, которое выглядит как get_status(pk), т.е. тащится процедурой. Есть кнопка, меняющая Статус выделенной записи путём запуска хранимки на сервере типа set_staus(pk). Коммит в конце хранимки не делается. Вопрос: как мне обновить поле Статус (отображение), когда пользователь нажал кнопку? При этом процедура уже отработала, но на стороне БД коммит ещё не сделан. Если я говорю тупо :block.status := 'Новый статус' я получаю ошибку сохранения своих изменений, т.к., дескать, FRM-40654 - данные формы рассинхронизированы с данными базы (если поле Статус - database get_status(pk)) или ошибку обновления поля-формулы (если поле Статус - формула get_status(:block.pk). Что пробовал: 1. Продублировать поле Статус в виде поля с формулой, т.е. что бы оно небыло database, и отображать/менять его. Но поля рассчитываемые на основе формулы оказалось нельзя менять. 2. commit_form & execute_query после set_status пробовал - не понравилось, т.к. пользователю выскакивает окошко "вы хотите сохранить изменения", и затем происходит долгий селект данных для формы. Какие ещё варианты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2011, 15:00 |
|
||
|
Обновить значение database-поля на форме до того, как сделан commit
|
|||
|---|---|---|---|
|
#18+
Можно сделать поле небазовое и заполнять его например в post-query триггере (формулу самому элементу не присваивать) и менять значение при нажатии на кнопку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2011, 15:10 |
|
||
|
|

start [/forum/topic.php?fid=51&fpage=22&tid=1878728]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 392ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...