Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проверка существования транзакции / 17 сообщений из 17, страница 1 из 1
27.07.2004, 08:58:56
    #32622340
MPoil
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
как проверить существует ли незакомиченная транзакция и не подскажите как сделать,чтобы транзакция в подформе не распространялась на саму форму?
...
Рейтинг: 0 / 0
27.07.2004, 09:19:40
    #32622373
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Что, MPoil, телепятов ждешь? Ну жди, жди...
Придут телепяты, и сразу догадаются - что же ты такое используешь? ADO, DAO, mdb, adp, версии всего...
С какой радости у тебя транзакция на форме с подформой образовалась - тоже телепяты догадаются.
...
Рейтинг: 0 / 0
27.07.2004, 10:24:16
    #32622516
MPoil
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
у меня dao :) а на подформе я её сам создаю для нужных целей,но на самой форме она мне не нужна.
...
Рейтинг: 0 / 0
27.07.2004, 10:41:02
    #32622564
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Ну... если у тебя DAO (видимо mdb) - то проверить наличие транзакции просто. Взять и открыть еще пять транзакций (не забыть потом закрыть). Если ошибки не будет - значит до этого транзакций незакомиченных не было. У аксеса максимальная степень вложенности транзакций - 5.
Правда непонятно зачем это творить. Ты же сам транзакцию делаешь? Вот и заведи себе флаг. Начал транзакцию - установил флаг, успешно закоммитил или откатил - снял флаг.

на подформе я её сам создаю для нужных целей,но на самой форме она мне не нужна.
Делаешь свой Workspace (через DBEngine.CreateWorkspace)
В нем открываешь Database и запрос для подчиненной формы.
В нем же проводишь транзакции
Основную форму - вешаешь на рекордсет, открытый в другом Workspace'е (например в DBEngine(0))
...
Рейтинг: 0 / 0
27.07.2004, 10:56:13
    #32622627
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
2 йййй: может не прокатить :) кроме заявленных 5, тама ещё штуки три запасных уровня есть.

А по существу - что-то здесь нечисто в постнановке задачки
...
Рейтинг: 0 / 0
27.07.2004, 10:59:54
    #32622640
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
2 Alexey Sh
кроме заявленных 5, тама ещё штуки три запасных уровня есть.
Простите?
Кому-то удавалось сделать Workspace.BeginTrans больше 5 раз подряд?
...
Рейтинг: 0 / 0
27.07.2004, 11:07:29
    #32622673
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Мне удавалось, но очень давно. может аксесс ещё 2.0 был, но цифирка 8 запомнилась :)
...
Рейтинг: 0 / 0
27.07.2004, 11:12:21
    #32622697
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
честно говоря - не верю :)
может это был злостный глюк?
...
Рейтинг: 0 / 0
27.07.2004, 11:47:24
    #32622812
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
может и глюк :) но хочу предостеречь от смешений транзакций и обновлений в формах.

А вот собсно тест (acecess97)

Sub t54()
Dim wks As Workspace
Set wks = DBEngine(0)
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans

End Sub
...
Рейтинг: 0 / 0
27.07.2004, 11:51:13
    #32622826
цувцув
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
alexey shSub t54()
Dim wks As Workspace
Set wks = DBEngine(0)
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans
wks.BeginTrans

после этого надо будет 1 раз commit или столько же?
А постановка задача не такая.Я иногда закрываю транзакцию и мне выдаётся ошибка,что она закрыта и меня интересует функция для проверки существования транзакции.
Сапсибо
...
Рейтинг: 0 / 0
27.07.2004, 11:51:20
    #32622827
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
ййййййййопппптвою
это чего ж такое творится???
...
Рейтинг: 0 / 0
27.07.2004, 11:52:37
    #32622832
йййй
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
я в шоке бл... от таких открытий чудных
...
Рейтинг: 0 / 0
27.07.2004, 12:05:46
    #32622864
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Ошибку в логике программы искать нужно. проверять наличие транзакции - последнее дело
...
Рейтинг: 0 / 0
27.07.2004, 13:14:13
    #32623120
витёк-ша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Оказывается, у MS еще и тексты хелпов десятилетиями не меняются.

Полез по хелпам - либо молчок, либо про пять уровней вложенности и ошибку 3003 толкуют.
И вдруг, в Microsoft Jet Database Engine Programmers Guide (для 3.51), честно найдя пару дежурных заверений про пять уровней, вдруг в разделе, посвященном репликации (видимо новый раздел - и писался последним - после того, как за основу текста всего остального текст для Jet 3.0 был взят).
нахожу кусок, озаглавленный

Increases in the Physical Size of Your Database

И в нем:

In addition to setting limits on the available number of characters and fields, Microsoft Jet replication also limits the number of nested transactions allowed. You can have a maximum of seven nested transactions in a nonreplicable database, but a replicated database can have a maximum of six nested transactions.

Вот так. А в JetErr40 до сих пор про пять уровней толкуют.

Проверил на AccessXP - честно - семь уроней, на восьмом долгожданная ошибка.
(Так что нет уверенности, что в 97 вышеприведенные Alexey Sh 9 сработают)
...
Рейтинг: 0 / 0
27.07.2004, 13:17:57
    #32623132
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Субд гарантирует программеру 5 уровней. я так воспринимаю подобные заявления в документациях
...
Рейтинг: 0 / 0
27.07.2004, 13:32:39
    #32623187
витёк-ша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Alexey ShСубд гарантирует программеру 5 уровней. я так воспринимаю подобные заявления в документациях

ну уж в смысле "гарантий" честно было бы про шесть писать... ;)
...
Рейтинг: 0 / 0
27.07.2004, 13:40:04
    #32623222
витёк-ша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования транзакции
Alexey ShСубд гарантирует программеру 5 уровней. я так воспринимаю подобные заявления в документациях

до меня дошло...
(не сказать, что я высок...)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проверка существования транзакции / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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