0

Запись всех изменений в одной транзакции 1С

#1С 8.2#1С 8.3#1С 8.1

Друзья, у меня к вам вопрос. Я написал обработку, которая изменяет реквизиты справочника ДоговорыКонтрагентов, я хочу что бы если хотя бы один из элементов справочника записать не удалось, то отменялись изменения уже обработанных элементов, то есть если не удалось изменить один, то не изменять и все остальные. Объясните, можно ли в 1С 8 работать с транзакциями?

 2859 2
Добавленоuser140928750242816 дней назад
Отредактировано645 дней назад


Добавить комментарий

Иван написал:816 дней назад0

Да, нужно запись всех элементов справочника делать в одной транзакции и использовать конструкцию Попытка Исключение. Примерно вот так:

//Тут пишешь текст запроса, например

Результат = Запрос.Выполнить().Выгрузить();

НачатьТранзакцию();

Попытка
    Для Каждого Стр из Результат Цикл
        СправочникОбъект = Стр.ДоговорКонтрагента.ПолучитьОбъект();

        //Твой код по изменению реквизитов справочника

        СправочникОбъект.Записать();
    КонецЦикла;

    ЗафиксироватьТранзакцию();
Исключение
    Сообщить("Неудалось изменить элементы справочника!");
    ОтменитьТранзакцию();
КонецПопытки;

Ответить

Кирилл написал:645 дней назад0

Можно кстати сделать и так:

НачатьТранзакцию();

    Для Каждого Стр из Результат Цикл
        СправочникОбъект = Стр.ДоговорКонтрагента.ПолучитьОбъект();

        //Твой код по изменению реквизитов справочника

        СправочникОбъект.Записать();
    КонецЦикла;

 ЗафиксироватьТранзакцию();

Если в момент СправочникОбъект.Записать(); происходит ошибка - то платформа просто не доходит до строчки с фиксацией транзакции. Соответственно ты откатишься к начальному варианту данных.

Ответить

Задать вопрос!

Наш канал на Youtube

Изучаете 1С? Скачайте 200 видео по 1С бесплатно:

Похожее

Проблема при создании новый элементов справочника

В обработке создаю новый элементы справочника номенклатура, и в конце обработки ...

Вопрос по форме справочника контрагенты в интерфейсе такси.

Добрый день, подскажите пожалуйста. Есть форма справочника контрагенты в верху ...

Получение текущего списка справочника

Добрый день. При работе с обычной формой списка справочника возникла задача полу...

Если нет разницы!!Зачем тогда Условие В ВТ? Или все таки разница ЕСТЬ!!!!!

Привет. Пожалуйста подскажите! И ТАК ВОПРОС: В параметрах виртуальной таблицы ...

Изменение реквизитов элементов справочника при проведении документа

Доброго времени суток! Прошу помочь, нужно изменить реквизиты элементов справочн...

Новое

1С: Бухгалтерию 8.2 дёшево

Программа 1С: Бухгалетрия 8.2 По поводу приобретения программы обращайтесь на по...

Курсы

Добрый день! Осталось 2 ключа для активации курса “Профессиональный учёт в 1С:З...

"Наряд на хозтранспорт и спецтехнику" Путевые листы

Здравствуйте, Форумчане, прошу вашего совета. В организации такая ситуация: ест...

Создание обработки

Помогите с задачей. Суть такова - нужно создать внешнею обработку которая будет ...

Заполнение раздела 3 Расчет налоговой базы Книги доходов и расходов

Добрый день! Меня зовут Наталья. Про заполнение Кудир в КА очень все хорошо пишу...