Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 21:42

Ввод на основании

Автор lia171, 11 дек 2012, 11:16

0 Пользователей и 1 гость просматривают эту тему.

lia171

Добавил в табличное поле формы документа1 флажок типа булево, нужно что бы при вводе на основании документа1 в документ2 переносились только те строки в которой флажок=Истина, а остальные строки не переносились.


MuI_I_Ika

Ну проверять этот флажок при вводе на основании и переносить только те где стоит Истина.

MuI_I_Ika

Для каждого Элемент из Основание.ТабличнаяЧасть Цикл

   Если Элемент.Галочка Тогда
      НоваяСтрока = ТабличнаяЧасть.Добавить();
      ЗаполнитьЗначенияСвойств(НоваяСтрока,Элемент);
   КонецЕсли;

КонецЦикла;

lia171

Спасибо!
Добавлено: 11 дек 2012, 12:53


Единственное проблема осталась в том что если стоит Ложь то не переносится ни чего, а если истина установлена в любой из строк докмента1 то переносится все в документ2, как сделать что бы переносил только отмеченные?

MuI_I_Ika

Приведите программный код.

lia171

Вот код который я написал:

Для Каждого Стр из Основание.Товары Цикл
Если Стр.ПодтверждениеОПереносе = Истина Тогда
Пока Выборка.Следующий() Цикл
СтрокаТабличнойЧасти = Товары.Добавить();
СтрокаТабличнойЧасти.Примечание = Выборка.Примечание;
СтрокаТабличнойЧасти.Номенклатура = Выборка.Номенклатура;
СтрокаТабличнойЧасти.Количество = Выборка.Количество;
СтрокаТабличнойЧасти.ЕдиницаИзмерения = Выборка.ЕдиницаИзмерения;
СтрокаТабличнойЧасти.Коэффициент = Выборка.Коэффициент;
СтрокаТабличнойЧасти.ОбщийВес = Выборка.ОбщийВес;
СтрокаТабличнойЧасти.СоставМатериала = Выборка.СоставМатериала;
СтрокаТабличнойЧасти.ДополнительныеПояснения = Выборка.ДополнительныеПояснения;
СтрокаТабличнойЧасти.Работы = Выборка.Работы;
СтрокаТабличнойЧасти.Запас = Выборка.Запас;
СтрокаТабличнойЧасти.Запас = Выборка.ПодтверждениеОПереносе
КонецЦикла;
КонецЕсли;
КонецЦикла;

MuI_I_Ika

Что называется найдите 10 отличий.

Пока Выборка.Следующий() Цикл
    Если Выборка.ПодтверждениеОПереносе = Истина Тогда

        СтрокаТабличнойЧасти = Товары.Добавить();
        СтрокаТабличнойЧасти.Примечание = Выборка.Примечание;
        СтрокаТабличнойЧасти.Номенклатура = Выборка.Номенклатура;
        СтрокаТабличнойЧасти.Количество = Выборка.Количество;
        СтрокаТабличнойЧасти.ЕдиницаИзмерения = Выборка.ЕдиницаИзмерения;
        СтрокаТабличнойЧасти.Коэффициент = Выборка.Коэффициент;
        СтрокаТабличнойЧасти.ОбщийВес = Выборка.ОбщийВес;
        СтрокаТабличнойЧасти.СоставМатериала = Выборка.СоставМатериала;
        СтрокаТабличнойЧасти.ДополнительныеПояснения = Выборка.ДополнительныеПояснения;
        СтрокаТабличнойЧасти.Работы = Выборка.Работы;
        СтрокаТабличнойЧасти.Запас = Выборка.Запас;
        СтрокаТабличнойЧасти.Запас = Выборка.ПодтверждениеОПереносе

    КонецЕсли;
КонецЦикла;

lia171

да уж, как не крутил а так не попробовал, все понятно, спасибо еще раз!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск