• Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом


  • Иллюстрированный самоучитель по языку системы 1С:Предприятие

    Процедуры работы с транзакциями

    Понятие транзакций соответствует общепринятому пониманию транзакций баз данных. В системе 1С:Предприятие транзакции активно используются самой системой при записи различной информации. Транзакция гарантирует неизменность информации в базе данных для других пользователей до ее завершения и целостное сохранение информации.

    Возможность использования транзакций в языке должна применяться только в тех программных модулях, которые выполняют запись изменений в информационной базе (в справочниках, константах, документах). Их не следует использовать в алгоритмах формирования движений документов. Транзакции также не стоит использовать при одиночных записях. Типичный пример когда следует использовать транзакции – это процедура, которая будет во всех элементах справочника менять некоторый параметр.

    Для начала транзакции используется процедура НачатьТранзацию. Для фиксации сделанных в процессе выполнения изменений применяется процедура ЗафиксироватьТранзакцию. Для отмены изменений, сделанных в процессе выполнения транзакции – процедура ОтменитьТранзакцию. Таким образом, все действия с базой данных, выполняемые внутри скобок: НачатьТранзакцию – ЗафиксироватьТранзацию собственно и являются транзакцией.

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

    Замечание. В Модуле документа (при проведении документов) в предопределенных процедурах ОбработкаПроведения и ОбработкаУдаленияПроведения система сама по умолчанию выполняет все действия через транзакцию, поэтому никаких специальных действий в этих предопределенных процедурах предпринимать не нужно.

    Транзакция, выполняемая одним пользователем может мешать выполнению транзакций другими пользователями. Таким образом, важно соизмерять получающееся ускорение от применения транзакций с возможными побочными эффектами. Другими словами, возможно, что ускорение таково, что операция начинает выполняться столь быстро, что можно пренебречь влиянием на других пользователей (например, ожидание секунду – другую), а может это будет приводить к конфликтам – все зависит от конкретного алгоритма конфигурации.

    При обработке транзакции (в том числе в Модуле документа) не следует использовать элементы интерактивного управления (например, операторы Предупреждение, Вопрос, ВвестиЧисло и т. п.), т. к. в этом случае при открытой транзакции система ожидает отклика пользователя, а это может препятствовать нормальной работе других пользователей (в результате документы у всех остальных пользователей в этот момент могут не проводиться). Если в конфигурации необходимо при проведении документа выдавать пользователю некоторые сообщения, то следует использовать операторы Сообщить или Состояние.

    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.