8.х Вывод номерации по циклу

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

  1. TopicStarter Overlay
    manti
    Offline

    manti

    Регистрация:
    15 авг 2011
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток. В конфигурации управление торговлей на платформе 8.1
    формирую отчет->продажи->анализ продаж->продажи
    Отбор делаю по контрагенту - по номенклатуре. Нужно чтобы номенклатура выводилсь с номерацией.
    http://s014.radikal.ru/i329/1108/c9/40d51c10fd98.jpg
    В каком месте можно вывести даннй номератор?


    Код:
    Процедура СформироватьОтчет(ТабличныйДокумент) Экспорт
    
    // Перед формирование отчета можно установить необходимые параметры универсального отчета.
    
    УниверсальныйОтчет.СформироватьОтчет(ТабличныйДокумент);
    Результат=УниверсальныйОтчет.ПостроительОтчета.Результат.Выбрать();
    СтрАКБ="";
    АКБ_Договор=0;
    АКБ_Контрагент=0;
    Группировки=УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки;
    
    Для каждого СтрГруппировки Из Группировки Цикл
    Если СтрГруппировки.Имя="Контрагент" Тогда
    АКБ_Контрагент=0;
    Пока Результат.СледующийПоЗначениюПоля("Контрагент") Цикл
    Если ЗначениеЗаполнено(Результат.Контрагент) Тогда
    АКБ_Контрагент=АКБ_Контрагент+1;   
    КонецЕсли; 
    КонецЦикла; 
    СтрАКБ=СтрАКБ+"
    |АКБ по Контрагентам = "+АКБ_Контрагент;
    ИначеЕсли СтрГруппировки.Имя="ДоговорКонтрагента" Тогда 
    АКБ_Договор=0;
    Результат.Сбросить();
    Пока Результат.СледующийПоЗначениюПоля("ДоговорКонтрагента") Цикл
    Если ЗначениеЗаполнено(Результат.ДоговорКонтрагента) Тогда
    АКБ_Договор=АКБ_Договор+1;   
    КонецЕсли; 
    КонецЦикла; 
    СтрАКБ=СтрАКБ+"
    |АКБ по Торг.Точкам = "+АКБ_Договор;  
    ИначеЕсли СтрГруппировки.Имя="Номенклатура" Тогда 
    Если АКБ_Договор>0 Тогда
    Кол_Общее=0;
    Результат.Сбросить();
    Пока Результат.СледующийПоЗначениюПоля("ДоговорКонтрагента") Цикл
    Кол_ПоДоговору=0;
    Пока Результат.СледующийПоЗначениюПоля("Номенклатура") Цикл
    Если ЗначениеЗаполнено(Результат.Номенклатура) Тогда //заполняется
    Кол_ПоДоговору=Кол_ПоДоговору+1;   //по хожу счетчик
    КонецЕсли; 
    КонецЦикла;
    
    Кол_Общее=Кол_Общее+Кол_ПоДоговору;
    КонецЦикла; 
    Если Кол_Общее>0 Тогда
    СтрАКБ=СтрАКБ+"         
    |Ср. кол-во видов номенклатуры по Торг.Точкам= "+Окр(Кол_Общее/АКБ_Договор,2);  
    КонецЕсли;
    КонецЕсли
    КонецЕсли; 
    КонецЦикла; 
    
    Если Не ПустаяСтрока(СтрАКБ) Тогда
    СтрАКБ=Сред(СтрАКБ,2);
    
    //ОбластьИтоги = ТабличныйДокумент.ПолучитьОбласть("ОбщиеИтоги");
    ОбластьЗаголовок=ТабличныйДокумент.Область(ТабличныйДокумент.ВысотаТаблицы,2,ТабличныйДокумент.ВысотаТаблицы,2);
    ОбластьЗаголовок.Заполнение = ТипЗаполненияОбластиТабличногоДокумента.Текст;
    ОбластьЗаголовок.Текст = СтрАКБ;
    //ТабличныйДокумент.Вывести(ОбластьЗаголовок);
    КонецЕсли; 
    КонецПроцедуры // СформироватьОтчет()
    
    

    Думаю, что за количество и следовательно за номерация может ответить Кол_ПоДоговору. Как вывести эту номерацию?
  2. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.175
    Симпатии:
    13
    Баллы:
    29
    Добавь колонку в макет...и выводи в область твое количество..а не..поторопился :)

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