|
Обновление формы
|
|||
---|---|---|---|
#18+
Всем добрый день! Очень надеюсь на помощь! Имеется форма на которую навешана персональная настройка. При нажатии на определенную кнопку, процедура выполняется (в таблице значения обновляются) но для того чтобы увидеть результат в самой форме нужно в нее перезайти. Пробовала воспользоваться этим советом https://www.sql.ru/forum/970231/obnovlenie-formy?hl=?????????? ????? ????????? Открывается форма, которая возвращает непонятные данные, не относящиеся к записи для которой выполнялось обновление. Буду очень благодарна за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2021, 13:22 |
|
Обновление формы
|
|||
---|---|---|---|
#18+
Я_Новичок, Перед шагом персонализации, который выполняет EXECUTE_QUERY, можно добавить шаг, который для блока, в котором выполняется запрос, меняет свойство DEFAULT_WHERE, добавляя условие для выбора нужной записи. Но после выполнения запроса желательно это свойство блока вернуть в исходное состояние. Иначе кроме данной записи другие выбрать не получится без перезахода в форму. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2021, 19:31 |
|
Обновление формы
|
|||
---|---|---|---|
#18+
va_kochnev, Спасибо! Но не совсем поняла как и какое условие добавить для выбора нужной записи. Если таких записей может быть много для каждой организации ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2021, 07:17 |
|
Обновление формы
|
|||
---|---|---|---|
#18+
Я_Новичок, Вашу ситуацию я не знаю, поэтому точный рецепт дать не могу. Допустим, она следующая: 1. В форме есть блок БЛОК, который базируется на таблице с первичнеым ключом RECORD_ID. 2. Пользователь выбирает нужную строку и жмет какую-то кнопку. 3. По нажатию кнопки отабатывает персонализация, которая запускает процедуру, вносящую изменения в строку таблицы. После чего выполняется запрос в блоке и в нем выбирается измененная строка. Если требутеся именно такое поведение, то в персонализации после действия запуска процедуры добавляем шаги 1. Запоминаем текущее значение default_where Код: plsql 1. 2. 3. 4. 5.
2. Устанавливаем новое значение свойства default_where Код: plsql 1. 2. 3. 4. 5.
3. Выполняем запрос Код: plsql 1. 2. 3.
4. Восстанавливаем значение свойства DEFAULT_WHERE Код: plsql 1. 2. 3. 4. 5.
Если же в блоке изначально выбрано много строк, и надо вставать на нужную строку, давить кнопку, видеть изменение полей формы, а потом идти на следующую строку, чтобы проделать то же самое, то можно попробовать обойтись без перезапроса. Для этого после выполнения процедуры добавить действия, которые для каждого измененного поля формы выбирает значение из таблицы. Код: plsql 1. 2. 3. 4. 5.
После чего добавляем действия Код: plsql 1. 2. 3. 4. 5.
Это чтобы форма считала запись не измененной и не начинала какие-то свои манипуляции выполнять (если в самой процедуре есть commit и лишний действий не требуется). ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2021, 09:10 |
|
|
Start [/forum/topic.php?fid=51&tid=1877873]: |
0ms |
get settings: |
35ms |
get forum list: |
10ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
62ms |
get topic data: |
33ms |
get forum data: |
6ms |
get page messages: |
344ms |
get tp. blocked users: |
3ms |
others: | 166ms |
total: | 675ms |
0 / 0 |