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

Интерактивное Добавление Номенклатуры и запись документа(без проведения)

Автор mashencev_anton, 21 мар 2014, 09:57

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

mashencev_anton

Привет всем. такое дело, при интерактивном добавлении номенклатуры и количества в документ ВнутреннийЗаказ в ТЧ Товары Добавляется две номенклатуры, в одной указывается только количество в другой только название номенклатуры. как сделать чтобы это было в одной строке?
Процедура КнопкаВыполнитьНажатие(Кнопка)
    ТекДанные=ЭлементыФормы.ТабличнаяЧасть.ТекущиеДанные;
    Док=Документы.ВнутреннийЗаказ.СоздатьДокумент();
    Док.Дата=ТекущаяДата();
    Док.Товары.Добавить().Количество=ТекДанные.Заказать;
    Док.Товары.Добавить().Номенклатура=ТекДанные.Номенклатура;
    Док.Записать();
    Сообщить("Документ записан");
КонецПроцедуры

wise

Строка = Док.Товары.Добавить();
Строка.Количество = ТекДанные.Заказать;
Строка.Номенклатура=ТекДанные.Номенклатура;

:befhbt:
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

mashencev_anton

Спасибо.
Добавлено: 21 мар 2014, 10:10


а как быть если мне нужно добавить несколько позиций, а в данном случае добавляет только одну(последнюю введенную)

wise

Процедура КнопкаВыполнитьНажатие(Кнопка)
    Док=Документы.ВнутреннийЗаказ.СоздатьДокумент();
    Док.Дата=ТекущаяДата();
    Для ТекСтрока Из ЭлементыФормы.ТабличнаяЧасть Цикл
        Строка = Док.Товары.Добавить();
        Строка.Количество = ТекСтрока.Заказать;
        Строка.Номенклатура = ТекСтрока.Номенклатура;
    КонецЦикла;
    Док.Записать();
    Сообщить("Документ записан ВЕСЬ !!! ;-)");
КонецПроцедуры
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

mashencev_anton

Спасибо ВАМ огромное
Добавлено: 21 мар 2014, 11:03


новая проблема.если пишу так
Для Каждого ТекДанные Из ЭлементыФормы.ТабличнаяЧасть Цикл
// тут пишем код по вводу данных
КонецЦикла

то пишет "итератор для значения не определен"
а если пишу так:
Для Каждого ТекСтрока  Из ЭлементыФормы.ТабличнаяЧасть.ТекущиеДанные Цикл
     // тут пишем код по вводу данных
    КонецЦикла;


то записывает док с одной ЗАЦИКЛЕННОЙ(причем по 7) номенклатурой(последней)
Добавлено: 21 мар 2014, 11:34


Проблема решена!!:zebzdr:
Процедура КнопкаВыполнитьНажатие(Кнопка)
  Док=Документы.ВнутреннийЗаказ.СоздатьДокумент();
Для Каждого ТекСтрока  Из ТабличнаяЧасть Цикл
Строка=Док.Товары.Добавить();
Строка.Количество=ТекСтрока.Заказать;
Строка.Номенклатура=ТекСтрока.Номенклатура;
КонецЦикла;
Юзер=ПользователиИнформационнойБазы.ТекущийПользователь();
Док.Комментарий=Юзер.Имя;
Док.Дата=ТекущаяДата();
    Док.Записать();
Сообщить("Документ записан");
КонецПроцедуры
:ooifh::ooifh::ooifh:

Теги:

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

Рейтинг@Mail.ru

Поиск