powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Где в форме лучше присваивать значение сиквенса ?
15 сообщений из 15, страница 1 из 1
Где в форме лучше присваивать значение сиквенса ?
    #37498320
nxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сабж

какие есть варианты ?
PRE-INSERT
ON-INSERT
WHEN-CREATE-RECORD
еще что-то ?

где лучше ?
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37498330
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nxxеще что-то ?

где лучше ?
На кнопку ОК
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37498337
nxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модnxxеще что-то ?

где лучше ?
На кнопку ОК

нет кнопки ОК, максимум "сохранить"
а почему так лучше, аргументировать можете?
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37498461
Chpocky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если речь идёт о PRIMARY KEY ( и во многих других случаях) то однозначно в триггере before insert в базе.
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37499182
nxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChpockyЕсли речь идёт о PRIMARY KEY ( и во многих других случаях) то однозначно в триггере before insert в базе.

ну вот еще, триггер городить
я скорее в ON-INSERT сделаю
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37500052
Тупой Пух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nxx,
такие варианты:
1. в свойстве Initial Value соответствующего item'а пропиши :SEQUENCE.my_seq.NEXTVAL
2. дергай сиквенс в WHEN-CREATE-RECORD
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37500323
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nxxнет кнопки ОК, максимум "сохранить"
а почему так лучше, аргументировать можете?
Потому что при "сохранить" м.б. запись в несколко связанных по ID, полученному из сиквенса, таблиц.
Для этого сиквенс и сделан в отличие от автоинкремента
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37669819
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тупой Пухnxx,
такие варианты:

2. дергай сиквенс в WHEN-CREATE-RECORD


Этот вариант категорически не подходит, т.к. этот тригер срабатывает независимо от того, новая это запись , или старая. Сначала срабатывается триггер, а потом уже запись заполняется текущими данными, но при этом сиквенс успевает сработать, и в итоге счетчик перещелкивается на следующее значение.

Я везде воткнул в этот триггер получение значения ID, но в итоге нарвался на то, что у меня значение счетчика менялось в десятки раз быстрее , чем нужно было.
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37669821
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По крайней мере это так происходит в Forms 4.5.

Кстати, в нем нет свойства Initial Value

В общем тупик какой-то.
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37670974
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyAKa,

хм.. а чем PRE-INSERT, то не устроил? если блок многострочный да и вообще, всегда его юзаю.
Fires during the Post and Commit Transactions process, before a row is inserted. It fires once for each record that is marked for insert.
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37671572
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OldBoyOdeSuSergeyAKa,

хм.. а чем PRE-INSERT, то не устроил? если блок многострочный да и вообще, всегда его юзаю.
Fires during the Post and Commit Transactions process, before a row is inserted. It fires once for each record that is marked for insert.

Мне нужен idешник до того как формс будет записывать все в базу. pre-insert срабатывает после commit, а не до.
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37671794
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyAKa,

"pre-insert срабатывает после commit"

только после коммита он уж точно не срабатывает, вызови ради интереса в нём rollback; после комита откатывать нечего и данные в БД сохранились бы...
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37673921
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OldBoyOdeSuSergeyAKa,

"pre-insert срабатывает после commit"

только после коммита он уж точно не срабатывает, вызови ради интереса в нём rollback; после комита откатывать нечего и данные в БД сохранились бы...

Я имею в виду commit самого формса
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37682632
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SergeyAKaOldBoyOdeSuSergeyAKa,

"pre-insert срабатывает после commit"

только после коммита он уж точно не срабатывает, вызови ради интереса в нём rollback; после комита откатывать нечего и данные в БД сохранились бы...

Я имею в виду commit самого формса

Не после, а как часть. Кроме того связанные по ид. блоки, если все нормально сделано, заполнятся автоматически. Минус с default - дырки в сиквенсе. Криминала в этом нет, но некошерно. Триггер на базе - нужно бороться с record has been changed и перезапрашивать выбранное значение. on-insert - нужно полностью переписывать ВСЮ команду вставки. Короче, pre-insert - самое оно
...
Рейтинг: 0 / 0
Где в форме лучше присваивать значение сиквенса ?
    #37682686
Сэмка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вернее POST, который вызывается из commit_form
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Где в форме лучше присваивать значение сиквенса ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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