SE_ACCESSDATAMODE


Синтаксис

SE_ACCESSDATAMODE(AccessMode: SCAL[5]);

Характеристика

Устаревшая, рекомендуется использовать свойство RTI.TRY_BLOCK.AccessDataMode.

Описание

Устанавливает режим работы транзакции программы. Допустимые значения в наборе констант AccessDataMode.

Переключение режима может сопровождаться сбросом позиций курсоров таблиц БД.

При установке (не обязательно смене) режима транзакции режимы всех таблиц БД начинают совпадать с режимом транзакции; прежнее явное указание режима таблицы БД (с помощью свойства TABLE.AccessDataMode) перестает действовать, т.е. при переключении всей транзакции в обратный режим все таблицы БД окажутся в обратном режиме.

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

Установленный данной процедурой режим работы транзакции действует до следующей установки (с помощью SE_ACCESSDATAMODE), до выхода из TRY-блока, либо до завершения работы программного комплекса. При завершении программы-обработчика события, выполняющейся на интерактивной транзакции, система автоматически восстанавливает тот режим транзакции, который был на старте программы, причем интерактивная транзакция, как и до вызова программы-обработчика, не будет иметь базовый срез. Особый случай - программные события, настраивающие режим видеопроцесса. В этом случае режим транзакции устанавливается не только для исполняемой программы, но и для запуска всех последующих программ и программных событий в данном интерактивном редактировании, а также во всех подчиненных зонах и зависимых окнах. При этом сам интерактивный процесс редактирования, а также возможные последующие процессы редактирования в подчиненных зонах и зависимых окнах, по-прежнему выполняются в жестком режиме. Например, переключение транзакции в режим AccessDataMode_SOFT в программном событии OnBeforeEdit приводит к тому, что все последующие программные события, например OnSuccessfulChange, будут стартовать в мягком режиме.

Получить текущий режим работы транзакции программы можно с помощью функции GE_ACCESSDATAMODE или свойства TRY_BLOCK.AccessDataMode.

Процедура добавлена в версии 14.80.2.