Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / commit в блоке / 13 сообщений из 13, страница 1 из 1
10.06.2010, 13:41
    #36680548
stranger1101
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
Вопрос - как можно произвести commit для одного отдельно взятого блока?
Просто полистав хелпы в голове родился только вариант выполнить execute_query, с каким-либо противоречивым условием. Но как-то вариант не очень нравится =(
И еще вопрос. Как узнать есть ли что коммитить на данный момент? В идеале, опять же, в отдельно взятом блоке...
...
Рейтинг: 0 / 0
10.06.2010, 13:57
    #36680583
tru55
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
Не понял...
Ты имеешь ввиду, что в первом блоке сделал что-то одно, во втором - другое, а потом сделал commit только для первых изменений?
Или что-то другое?
...
Рейтинг: 0 / 0
10.06.2010, 13:59
    #36680587
hominis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
Переписать ON-UPDATE, ON-INSERT триггеры для блока в котором не нужно делать изменения. Либо сделать процедуру с автономной транзакцией. Для отдельного взятого блока можно посмотреть его статус :SYSTEM.BLOCK_STATUS, если он CHANGED, значит есть что коммитить.
...
Рейтинг: 0 / 0
10.06.2010, 14:06
    #36680606
stranger1101
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
tru55, именно так.

hominis,
hominisпереписать ON-UPDATE, ON-INSERT триггеры для блока в котором не нужно делать изменения.
Нужно сделать коммит только для 3-х блоков, а всего их значительно больше в форме.
С автономными транзакциями дела не имел, попробую разобраться...

За ответ на второй вопрос - спасибо!
...
Рейтинг: 0 / 0
10.06.2010, 14:17
    #36680645
tru55
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
stranger1101 tru55, именно так.

Дык а по остальным блокам что - commit позже или вообще оный не предполагается?

stranger1101С автономными транзакциями дела не имел, попробую разобраться...

Автономные транзакции - это вообще специфический инструмент, который надо применять с осторожностью и вообще используется редко. В большинстве случаев попытка его использовать - это неверный дизайн приложения, т.е. желаемого можно достичь другими способами...
...
Рейтинг: 0 / 0
10.06.2010, 14:23
    #36680663
stranger1101
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
tru55
Дык а по остальным блокам что - commit позже или вообще оный не предполагается?

Предполагается, но позже и в совсем другом месте.
Просто посмотрел в хелпах как работает execute_query - он ведь выполняет по ходу такое действие, вроде бы... Соответственно и возникла мысль, что должна быть такая возможность и отдельно от него.

tru55Автономные транзакции - это вообще специфический инструмент, который надо применять с осторожностью и вообще используется редко. В большинстве случаев попытка его использовать - это неверный дизайн приложения, т.е. желаемого можно достичь другими способами...
Сейчас начал вникать - у меня есть ощущение, что использование их здесь будет не очень адекватно.
...
Рейтинг: 0 / 0
10.06.2010, 14:32
    #36680696
hominis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
Самый адекватный вариант переписывать триггеры ON-INSERT, ON-UPDATE, чтобы изменения сохранялись как ты хочешь.

По поводу автономных транзакций, то часто бывает, что без них не обойтись, например, при запуске конкаррента из формы.
...
Рейтинг: 0 / 0
10.06.2010, 14:45
    #36680758
tru55
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
hominis
По поводу автономных транзакций, то часто бывает, что без них не обойтись, например, при запуске конкаррента из формы.

Таки Forms и OeBS - это не совсем одно и то же. Первый вполне-е-е-е может существовать без второго :))
...
Рейтинг: 0 / 0
10.06.2010, 14:51
    #36680785
hominis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
tru55hominis
По поводу автономных транзакций, то часто бывает, что без них не обойтись, например, при запуске конкаррента из формы.

Таки Forms и OeBS - это не совсем одно и то же. Первый вполне-е-е-е может существовать без второго :))

спорить не буду, я делаю разработки только для OeBS :)
...
Рейтинг: 0 / 0
10.06.2010, 14:52
    #36680793
tru55
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
hominisспорить не буду, я делаю разработки только для OeBS :)

А я познакомился с Forms лет на 5 раньше, чем с OeBS :))
...
Рейтинг: 0 / 0
10.06.2010, 15:55
    #36681006
stranger1101
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
На счет триггера ON-INSERT и иже с ним...
Есть тогда возможность сделать общий триггер на уровне формы? Или придется для каждого блока писать свой?
Просто не совсем понимаю как именно написать триггер на уровне форм, который работал бы для каждого блока идентично тому, что есть без него.
...
Рейтинг: 0 / 0
10.06.2010, 19:08
    #36681454
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
stranger1101tru55
Дык а по остальным блокам что - commit позже или вообще оный не предполагается?

Предполагается, но позже и в совсем другом месте.
Просто посмотрел в хелпах как работает execute_query - он ведь выполняет по ходу такое действие, вроде бы... Соответственно и возникла мысль, что должна быть такая возможность и отдельно от него.


EXECUTE_QUERY и COMMIT ???? Не выполняет и не должен. Ты не путаешь COMMIT и POST ?

Как я помню, можно форму запустить в своей "отдельной" сессии. Т.ч. 3-и "нужных" блока оставить в одной форме, остальные - вынести в отдельную форму/формы. Формы запускаются в "своей" сессии. Соответственно, как хочет пользователь: хочет - комитет форму, хочет - не комитет.

IMHO Subj выглядит совершенно противоестественно. Или автор что-то путает (например POST и COMMIT). "Запостить" отдельно взятый блок, я еще понимаю, но закомитеть...
...
Рейтинг: 0 / 0
11.06.2010, 21:37
    #36683798
stranger1101
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
commit в блоке
Все, вопрос снят.
Леонид, огромное вам спасибо! Немного сам запутался в том, что хотел сделать.
...
Рейтинг: 0 / 0
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / commit в блоке / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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