0

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

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

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

 3272 2
Добавленоuser140928750242897 дней назад
Отредактировано727 дней назад


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

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

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

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

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

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

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

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

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

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

Ответить

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

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

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

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

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

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

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

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

Ответить

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

Наш канал на Youtube

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

Похожее

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

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

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

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

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

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

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

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

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

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

Новое

2 НДФЛ и 6 НДФЛ

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

Слияние двух баз 1 С8.3

Уважаемые партнеры, коллеги. У меня возникла необходимость в слиянии двух баз, в...

Ищем разработчика 1С на ЗУП 3.0 (Москва)

За подробностями Вы можете писать на почту alina.stogina@hays.ru!...

Перенос БГУ 1.0->БГУ 2.0 Счет 303 учет по ИФО

Всем привет! После переноса данных из 1.0 в 2.0 формирую общие оборотки и вижу, ...

Помогите сделать внешнюю печатную форму ТОРГ-13

Пытаюсь программировать в 1с недавно, опыта нет. По полученным из интернета инс...