Страница 1 из 1
MAVLOGOUT
Добавлено: 30 Март 2007, 8:25
Admin
пишу такой код
Код: Выделить всё
IF MAVLOGOUT()
MESSAGE('Ощибка вызова LOGOUT #1')
END
IF MAVLOGOUT()
MESSAGE('Ощибка вызова LOGOUT #2')
END
IF MAVCOMMIT()
MESSAGE('Ошибка MAVCOMMIT #1')
END
IF MAVCOMMIT()
MESSAGE('Ошибка MAVCOMMIT #2')
END
ни одного MESSAGE не показывается
В лог пишется следующее:
Код: Выделить всё
Begin transaction Return Code : 0
Transaction already opened
Commit transaction Return Code : 0
1. почему так?
2. какой COMMIT выполнился?
Re: MAVLOGOUT
Добавлено: 30 Март 2007, 13:44
Andrew™
Admin писал(а):пишу такой код
Код: Выделить всё
IF MAVLOGOUT()
MESSAGE('Ощибка вызова LOGOUT #1')
END
IF MAVLOGOUT()
MESSAGE('Ощибка вызова LOGOUT #2')
END
IF MAVCOMMIT()
MESSAGE('Ошибка MAVCOMMIT #1')
END
IF MAVCOMMIT()
MESSAGE('Ошибка MAVCOMMIT #2')
END
ни одного MESSAGE не показывается
В лог пишется следующее:
Код: Выделить всё
Begin transaction Return Code : 0
Transaction already opened
Commit transaction Return Code : 0
1. почему так?
2. какой COMMIT выполнился?
в библиотеке есть симафоры, пофторные LOGOUIT'ы игнорируются библиотекой, выдавать ошибку не вижу смысла, то же касается и MAVCOMMIT и MAVROLLBACK, если транзакция не открывалась то и эти соответвующие операции будут игнорироваться библиотекой
короче - это определённого рода защита от шаловливых ручек
все эти три функции возвращают ошибку только в том случае если ошибка ODBCисшная, а не "ручная"
ЗЫ
или хотите вернуться к драйверным маразмам типа:
Файл уже открыт
Транзакция уже открыта и т д
Добавлено: 30 Март 2007, 15:05
StillZero
или хотите вернуться к драйверным маразмам
тут такое дело...
в форме на Save.Completed начинается LOGOUT, идут всякого рода проверки, вызывается процедура, потом опять проверки и COMMIT
код внутри процедуры также обернут в LOGOUT/COMMIT
а форму и процедуры писали разные люди
базара без, если идеологию надо менять, не вопрос, поменяем
объясни как и почему?
Добавлено: 05 Апрель 2007, 15:22
Andrew™
StillZero писал(а):или хотите вернуться к драйверным маразмам
тут такое дело...
в форме на Save.Completed начинается LOGOUT, идут всякого рода проверки, вызывается процедура, потом опять проверки и COMMIT
код внутри процедуры также обернут в LOGOUT/COMMIT
а форму и процедуры писали разные люди
базара без, если идеологию надо менять, не вопрос, поменяем
объясни как и почему?
ну и славненько, кто первый открыл транзакцию тот и прав, и кто первый закрыл транзакцию - тоже тот и прав
какую идеологию менять? не понял
Добавлено: 05 Апрель 2007, 15:59
StillZero
какую идеологию менять? не понял
уже поменяли
