powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / FRM-40654 Запись обновлена другим пользователем
13 сообщений из 13, страница 1 из 1
FRM-40654 Запись обновлена другим пользователем
    #37054758
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всех с новым годом - с новым счастьем!!!!))))
У меня вопрос: блок выводится из базы, на МНОГИЕ поля вешаю триггер key-next-item, в котором описываю арифметические действия , при переходе от поля к поля, триггер срабатывает и обновляет существующие записи. В каждом триггере стоит commit_form . То обновит, то выпадет ошибка FRM-40654 Запись обновлена другим пользователем. выйдешь-зайдешь можно опять обновлять, триггеры ни какие на таблицах не весят
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37055945
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну вот говорили же люди триггер висит на таблице...таблица на которой триггер весил из нее бралась дата и в нее ничего не записывалась, после того как отключила тот триггер(которой в принципе и не нужен) ошибка исчезла))))))
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37056405
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДА ПРОБЛЕМА ИСЧЕЗЛА ЕСЛИ ПЕРЕХОЖУ НА ДРУГУЮ СТРОКУ, А ЕСЛИ ОБНОВЛЯЮ ЭТУ ЖЕ ТО ВСЕ РАВНО ОШИБКА ЕСТЬ, ПОДСКАЖИТЕ МОЖЕТ КТО ЗНАЕТ ЧТО СДЕЛАТЬ ЧТОБЫ МОЖНО БЫЛО РЕДАКТИРОВАТЬ ДАННЫЕ НА ОДНОЙ И ТОЙ ЖЕ СТРОКЕ И СОХРАНЯТЬ ИХ ПОЛСЕ КАЖДОГО ЕНТЕРА???
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37057163
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может я неправильно триггер повесила, я вешаю на каждый редактируемый столбец табуляра триггер: key-next-item с текстом:
BEGIN
:NN_RISK_DEBT.KDZ_K:=(:NN_RISK_DEBT.KDZ/NN_RISK_DOP.KDZ(:FHD.ICUSNUM,TO_DATE(:FHD.DAT,'DD.MM.RRRR'))*0.1);

If :SYSTEM.BLOCK_STATUS = 'CHANGED' Then
Commit_Form ;
End if ;
END;
GO_ITEM('NN_RISK_DEBT.DDZ');

форма данные в вычисляемое поле NN_RISK_DEBT.KDZ_K заносит и сохраняет. И даже все отлично если от поля к полю переходить мышкой, а если клавиатурой, то ошибка: FRM-40654 Запись обновлена другим пользователем, причем пробовала не коммитить тоже самое, то есть чтото с навигацией не верно, но вот как иначе, чтобы ввела данные в поле нажала на ентер перешла на след (в этом же блоке если что) и опять, а при этом после того как ввела, в других нередактируемых столбцах данные бы вычислялись????
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37058294
gural
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А Formula Column вставить в блок не поможет ?
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37103754
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gural, так надо же после ввода данных в предыдущий столбец, менялись данные(арифметические вычисления) в следущем столбце, если вводить формулу то формула срабатывает и на сохраненные данные, а надо чтобы ввели дааные в предыдущий столбец, они сохранились в таблице, перешли на след столбец там произошли вычисления, сохранились, след столбец и тд. если изменения в пред столбце не было то и изменений в послед столбце тоже делать не надо, пусть выводятся на экран сохраненные ранее значения
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37104204
ya.vypusck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если формула не подходит, можно делать все вручную.
На элементы от которых зависят другие, можно поставить POST-CHANGE триггер и в нем уже менять/вычислять зависимые поля.

Правда справка не рекомендует использовать этот триггер.
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37106009
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ya.vypusck,да да именно так я и сделала , НО при изменении на одной строке нескольких столбцов выпадает ошибка
FRM-40654 Запись обновлена другим пользователем , выйдешь зайдешь нормально, а потом снова ошибка лезет. Как бы сделать так чтобы эта ошибка не выпадала???
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37106506
ya.vypusck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwe458923,

Как я понял, ошибка возникает на самом себе, а не что кто-то другой изменил запись. Надо смотреть, чем отличается запись в БД от того, что есть в форме и почему так получилось.
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37107877
Фотография UK0IAI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ya.vypusckqwe458923,

Как я понял, ошибка возникает на самом себе, а не что кто-то другой изменил запись. Надо смотреть, чем отличается запись в БД от того, что есть в форме и почему так получилось.
Попробуйте вместо commit_form вызвать хранимую процедуру, содержащею всего один оператор = commit

Код: plaintext
1.
2.
3.
begin
 commit;
end;


Что то мне подсказывает, что если из формы происходит вызов процедуры, изменяющих данные на уровне субд - то как раз такой способ поможет. Но точно не помню...а проверить негде.
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37114607
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
UK0IAI,

неа не работает((((((
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37114884
qwe458923
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вроде бы получилось. Но правда таким вот образом: тригер key_next_item
COMMIT_DEB; -- это функция commit
GO_ITEM('NN_RISK_DEBT.KDZ_K_DZ');
BEGIN
:NN_RISK_DEBT.KDZ_K_DZ:=NN_RISK_DOP.KKDZ(:FHD.ICUSNUM,TO_DATE(:FHD.DAT,'DD.MM.RRRR'),:NN_RISK_DEBT.ICUSEXT);

end;
COMMIT_DEB;
GO_ITEM('NN_RISK_DEBT.KDZ_K_VALBAL');
BEGIN
:NN_RISK_DEBT.KDZ_K_VALBAL:=NN_RISK_DOP.KKDZ_K_VALBAL(:FHD.ICUSNUM,TO_DATE(:FHD.DAT,'DD.MM.RRRR'),:NN_RISK_DEBT.ICUSEXT);

end;
COMMIT_DEB;
GO_ITEM('NN_RISK_DEBT.DDZ');
...
Рейтинг: 0 / 0
FRM-40654 Запись обновлена другим пользователем
    #37116335
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwe458923,

Только непонятно - зачем в Key-Next-Val совершать прыжки туда-сюда?
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / FRM-40654 Запись обновлена другим пользователем
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]