8.х Как в отчете сделать вывод по контрагенту

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

  1. TopicStarter Overlay
    maritime
    Offline

    maritime

    Регистрация:
    22 апр 2011
    Сообщения:
    26
    Симпатии:
    0
    Баллы:
    1
    Как в отчете сделать вывод по контрагенту, а если поле контрагент не заполнено, то выводить по всем контрагентам?
    Делаю так:
    Отчет выходит по всем контрагентам, а если без фигурных скобок то по всем не выходит, а только по выбранному.


    |
    // |ГДЕ ОСВЗалоге.Контрагент=&Контрагент
    |{ГДЕ
    | ОСВЗалоге.Контрагент=&Контрагент}
    |
    |УПОРЯДОЧИТЬ ПО
    | Контрагент,
    | ИнвНомер
    |ИТОГИ
    | СУММА(БалансоваяСтоимость),
    | СУММА(СуммаИзноса),
    | СУММА(ОстаточнаяСтоимость)
    | ПО
    | ОСВЗалоге.Контрагент
    | ОБЩИЕ
    |";

    Вложения:

  2. Dmitriy_76
    Offline

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

    Регистрация:
    26 мар 2011
    Сообщения:
    2.174
    Симпатии:
    13
    Баллы:
    29
    а УстановитьПараметр("Контрагент",Контрагент) где у тебя ?


    да...и прикрепленные скрины у тебя маловатые какие то.. че так слабо...в bmp ... psd делай в след раз :)
  3. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Такой вариант есть:

    Код:
    УсловиеПроКонтрагента = "";
    
    Запрос = Новый Запрос;
    
    Запрос.Текст = "
    |ВЫБРАТЬ
    |   ....
    |" + УсловиеПроКонтрагента + "
    |УПОРЯДОЧИТЬ ПО
    |   Контрагент,
    |   ИнвНомер 
    |ИТОГИ
    |   СУММА(БалансоваяСтоимость),
    |   СУММА(СуммаИзноса),
    |   СУММА(ОстаточнаяСтоимость) 
    |ПО
    |   ОСВЗалоге.Контрагент
    |   ОБЩИЕ"; 
    
    Если ЗначениеЗаполнено(Контрагент) Тогда
    УсловиеПроКонтрагента = " ГДЕ ОСВЗалоге.Контрагент=&Контрагент";
    Запрос.УстановитьПараметр("Контрагент", Контрагент);
    КонецЕсли;
    
  4. TopicStarter Overlay
    maritime
    Offline

    maritime

    Регистрация:
    22 апр 2011
    Сообщения:
    26
    Симпатии:
    0
    Баллы:
    1

    Есть установить параметр:

    Код:
    Запрос.УстановитьПараметр("Период",Новый Граница (КонецДня(Период),ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Контрагент", Контрагент);
    Запрос.Текст = "ВЫБРАТЬ
    |	Софт_ОсновныеСредстваВЗалогеСрезПоследних.ОсновноеСредство КАК 
    ******
    |{ГДЕ
    |     ОСВЗалоге.Контрагент=&Контрагент}
    
    |УПОРЯДОЧИТЬ ПО
    |    Контрагент,
    |	ИнвНомер    
    |ИТОГИ
    |	СУММА(БалансоваяСтоимость),
    |	СУММА(СуммаИзноса),
    |	СУММА(ОстаточнаяСтоимость)   
    |   ПО
    |	ОСВЗалоге.Контрагент,
    |    ОБЩИЕ
    |";
    
    
    [warn="maritime"]
    Убедительная просьба пользоваться тегами
    [/warn]
  5. TopicStarter Overlay
    maritime
    Offline

    maritime

    Регистрация:
    22 апр 2011
    Сообщения:
    26
    Симпатии:
    0
    Баллы:
    1
    Спасибочки, помогло конечно такое условие.
    Я бы еще хотела научиться в фигурных скобках задавать параметр:

    |{ГДЕ
    | ОСВЗалоге.Контрагент=&Контрагент}

    Я так понимаю это должно значить, что если контрагент заполнен, то выводить по нему, а если нет по всем?
    В чем я ошибаюсь?

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