
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.07.2008, 19:42
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
Добрый день. Мучает один вопрос, но решения не могу найти. Имеется MDI приложение. Ситуация такова: пользователь открывает одно окно и начинает менять данные. По ходу из скрипта itemchanged выполняется серия insert/update. Не сохраняя данных, пользователь переключается в другое окно внутри программы и редактирует в нем данные, затем сохраняет. Второе окно при успешном сохранении выполняет COMMIT. При этом серии insert/update, выполненные в первом окне, тоже сохраняются в базе. После этого пользователь закрывает первое окно без сохранения изменений. В результате - порченые данные. Как решить данную проблему? Разные transaction objects в каждом окне? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.07.2008, 20:01
|
|||
|---|---|---|---|
Shared transaction |
|||
|
#18+
Вы сами ответили на свой вопрос Использовать разные Transaction Object, и коммитить их отдельно Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2008, 00:02
|
|||
|---|---|---|---|
Shared transaction |
|||
|
#18+
VanoRВы сами ответили на свой вопрос Использовать разные Transaction Object, и коммитить их отдельно Код: plaintext Такой подход мне кажется не приемлем, т.к. окон может быть много, а ещё больше DW в которых может происходить редактирование. Эдак можно наплодить целую тучу TransactionObject. Помоему, всё решается гораздо проще: при потере фокуса окна, задавать вопрос на сохранение изменений. Конечно, можно ещё, чтобы по умолчанию update в DW был не активен и включать его при закрытии окна и т.д., но это всё же сложнее и (как говорят в Одессе) могут быть нюансы. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2008, 12:30
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
To swisssmile Уж больно интересный у тебя e-mail адресок бла-бла@ mac.com Это как-то так получилось или Apple PowerBuilder использует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2008, 12:55
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
swisssmileДобрый день. Мучает один вопрос, но решения не могу найти. Имеется MDI приложение. Ситуация такова: пользователь открывает одно окно и начинает менять данные. По ходу из скрипта itemchanged выполняется серия insert/update. Не сохраняя данных, пользователь переключается в другое окно внутри программы и редактирует в нем данные, затем сохраняет. Второе окно при успешном сохранении выполняет COMMIT. При этом серии insert/update, выполненные в первом окне, тоже сохраняются в базе. После этого пользователь закрывает первое окно без сохранения изменений. В результате - порченые данные. Как решить данную проблему? Разные transaction objects в каждом окне? А какая СУБД используется? Если какая-либо из блокировочных, то за серии insert/update без commit сразу уши отрывать нужно. Да и с версионными так тоже не очень работать, хотя не так плохо как с блокировочными... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2008, 22:46
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
серию insert/update вынести из itemchanged на сохранение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2008, 15:52
|
|||
|---|---|---|---|
Shared transaction |
|||
|
#18+
Black Savage To swisssmile Уж больно интересный у тебя e-mail адресок бла-бла@ mac.com Это как-то так получилось или Apple PowerBuilder использует? Довольно долго ПБ существовал и на Маке, но с 6 или 7 версии с Мака исчез! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2008, 19:42
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
To sboyko Слышал тока про Linux, про Mac не знал. Спасибо, запишу в свою RAM... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2008, 21:31
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
Black Savage To sboyko Слышал тока про Linux, про Mac не знал. Спасибо, запишу в свою RAM... Я очень сомневаюсь, что слышали про Linux , т.к. тому была без году неделя когда последний PB под Unix выходил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2008, 08:36
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
Локшин МаркЯ очень сомневаюсь, что слышали про Linux, т.к. тому была без году неделя когда последний PB под Unix выходил Да мне как-то все равно, что Linux , что Unix - те же яйца, только в профиль... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2008, 16:29
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
Black Savage To swisssmile Уж больно интересный у тебя e-mail адресок бла-бла@ mac.com Это как-то так получилось или Apple PowerBuilder использует? Не знаю использует Apple PowerBuilder или нет, но емайл такого плана дается пользователю сервиса .mac (www.mac.com). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2008, 16:30
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
Локшин Марк А какая СУБД используется? Если какая-либо из блокировочных, то за серии insert/update без commit сразу уши отрывать нужно. Да и с версионными так тоже не очень работать, хотя не так плохо как с блокировочными... Oracle 9i. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.07.2008, 18:32
|
|||
|---|---|---|---|
|
|||
Shared transaction |
|||
|
#18+
swisssmile Локшин Марк А какая СУБД используется? Если какая-либо из блокировочных, то за серии insert/update без commit сразу уши отрывать нужно. Да и с версионными так тоже не очень работать, хотя не так плохо как с блокировочными... Oracle 9i. Тогда это не смертельно, но все равно лучше избегать длинных транзакций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.07.2008, 21:27
|
|||
|---|---|---|---|
Shared transaction |
|||
|
#18+
swisssmileДобрый день. Мучает один вопрос, но решения не могу найти. Имеется MDI приложение. Ситуация такова: пользователь открывает одно окно и начинает менять данные. По ходу из скрипта itemchanged выполняется серия insert/update. Не сохраняя данных, пользователь переключается в другое окно внутри программы и редактирует в нем данные, затем сохраняет. Второе окно при успешном сохранении выполняет COMMIT. При этом серии insert/update, выполненные в первом окне, тоже сохраняются в базе. После этого пользователь закрывает первое окно без сохранения изменений. В результате - порченые данные. Как решить данную проблему? Разные transaction objects в каждом окне? извиняюсь за *off*, но если я правильно понял, то я уверен что проблему надо решать немного по другому, например не давать юзеру делать выше перечисленное, т.е. на попытки открыть уже открытое окно, или выкинуть мэссагу типа *сохрани-или-несохрани, закрой а потом открывай окно ешё раз* или переноси уже открытое окно с заднего плана ему под нос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=15&tablet=1&tid=1336616]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 238ms |
| total: | 398ms |

| 0 / 0 |

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