8.х КоличествоКопий

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Шам, 30 май 2014.

  1. TopicStarter Overlay
    Шам
    Offline

    Шам Опытный в 1С

    Регистрация:
    28 июн 2010
    Сообщения:
    72
    Симпатии:
    0
    Баллы:
    26
    Добрый день!
    Помогите, пожалуйста, разобраться.
    Делаю гарантийный талон.
    Макет создал, кнопку в форме реализации добавил. Гарантийный талон выгружается.
    Вот тут и возникает у меня одна сложность - количество гарантийных талонов равна количеству позиций в реализации, но нужно чтобы количество талонов равнялось количеству товаров. Т.е. если в реализации три позиции, но, допустим одна позиция в кол-ве 2шт, то выгружалось бы 4 талона.
    На сколько я понимаю (хотя мало понимаю в программировании 1С 8,2) это связано с циклом, но мои попытки не венчались успехом. :(
    Помогите, пожалуйста, разобраться.
    Вот модуль:
    Процедура ОсновныеДействияФормыГарантийный_талон(Кнопка)
    //{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!


    ТабДок = Новый ТабличныйДокумент;
    Для Каждого ТекСтрокаТовары Из Товары Цикл

    Макет = ПолучитьОбщийМакет("Гарантийный_талон");
    // Шапка
    Область = Макет.ПолучитьОбласть("Шапка");
    Область.Параметры.Организация = Организация.Наименование;
    Область.Параметры.К_НаименованиеПолное = Контрагент.НаименованиеПолное;
    Запрос = Новый Запрос;

    ТабДок.Вывести(Область);

    // Товары

    ОбластьТовары = Макет.ПолучитьОбласть("Товары");
    ОбластьТовары.Параметры.Заполнить(ТекСтрокаТовары);
    ОбластьТовары.Параметры.Номенклатура=ТекСтрокаТовары.Номенклатура.НаименованиеПолное;



    ТабДок.Вывести(ОбластьТовары);


    Область = Макет.ПолучитьОбласть("Заполнение");
    Область.Параметры.Номер = ОбщегоНазначения.ПолучитьНомерНаПечать(ДокументОбъект);
    Область.Параметры.Ответственный = Контрагент.ОсновнойМенеджерПокупателя;


    Область.Параметры.Дата = Дата;
    Область.Параметры.Дата = Формат(Дата, "ДФ='дд ММММ гггг'");




    Запрос = Новый Запрос;

    ТабДок.Вывести(Область);


    // Подвал
    Область = Макет.ПолучитьОбласть("Подвал");

    Область.Параметры.Организация = Организация.Наименование;

    Запрос = Новый Запрос;
    ТабДок.Вывести(Область);


    ТабДок.ОтображатьСетку = Истина;
    ТабДок.Защита = Ложь;
    ТабДок.ТолькоПросмотр = Ложь;
    ТабДок.ОтображатьЗаголовки = Ложь;
    ТабДок.Показать();

    //}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ


    КонецЦикла;

    КонецПроцедуры
  2. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    примерно как то так наверное...
    Код:
    Для Каждого ТекСтрокаТовары Из Товары Цикл
    //вот тут сделайте свою проверку на количество штук в позиции по типу
    Для сч=1 по ТекСтрокаТовары.КоличествоШтукВПозиции Цикл
    Макет = ПолучитьОбщийМакет("Гарантийный_талон");
    ....
    Конеццикла;
  3. TopicStarter Overlay
    Шам
    Offline

    Шам Опытный в 1С

    Регистрация:
    28 июн 2010
    Сообщения:
    72
    Симпатии:
    0
    Баллы:
    26
    К сожалению не получилось.
    {Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(3910)}: Поле объекта не обнаружено (КоличествоШтукВПозиции)
    Для сч=1 по ТекСтрокаТовары.КоличествоШтукВПозиции Цикл
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Вам пример привели, а не инструкцию к действию!
  5. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    а свой реквизит не пробовали поставить? я же не телепат и не знаю вашей конфигурации
  6. TopicStarter Overlay
    Шам
    Offline

    Шам Опытный в 1С

    Регистрация:
    28 июн 2010
    Сообщения:
    72
    Симпатии:
    0
    Баллы:
    26
    Приношу свои извинения - что-то я тормозил утром.
    Большое спасибо! Все заработало!

Поделиться этой страницей