Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Проверка строк на заполненность ячеек в таблице

Проверка строк на заполненность ячеек в таблице
Я
   Pyryrym
 
21.08.20 - 16:43
Мне надо из таблицы перенести данные в другую, но при этом если какая то ячейка не заполнена, то эта строка не копируется. Я написал такой код

        НачатьТранзакцию();
    СтрокаДанных = ТаблицаЗначений.Добавить();
    Артикул = Значение1;
    Если Не ЗначениеЗаполнено(Артикул) Тогда
        ОтменитьТранзакцию();
        Продолжить;
    КонецЕсли;
    СтрокаДанных.Артикул = Артикул;
    Наименование = Значение2;
    Если Не ЗначениеЗаполнено(Группа) Тогда
        ОтменитьТранзакцию();
        Продолжить;
    КонецЕсли;
        ЗафиксироватьТранзакцию();


У меня в первой строке отсутствует наименование, однако новая строка только с артикулом все равно создается.
   Pyryrym
 
1 - 21.08.20 - 16:43
И это в цикле
   ДенисЧ
 
2 - 21.08.20 - 16:49
Транзакции на ТЗ не работают.

Просто сначала проверяй заполненость, а потом уже строку добавляй.
   Жан Пердежон
 
3 - 21.08.20 - 16:49
всё неправильно и зачем тут Транзакции?
   ZDenis
 
4 - 21.08.20 - 16:56
Для каждого Строка Из ТЗ_1 Цикл
    Копируем = Истина;
    Для каждого Колонка из ТЗ_1.Колонки Цикл
        Если Не ЗначениеЗаполнено(Строка[Колонка]) Тогда
            Копируем = Ложь;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если Копируем Тогда
        Стр = ТЗ_2.Добавить();
        ЗаполнитьЗначенияСвойств(Стр, Строка);
    КонецЕсли;
КонецЦикла;
   МимохожийОднако
 
5 - 21.08.20 - 17:01
Если  не заполнена строка - удалить строку
   Pyryrym
 
6 - 21.08.20 - 17:02
Я неправильно понял, что такое транзакции, спасибо :*

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.