7.7 Отчет по продажам ТиС 9.2

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем mazza, 23 авг 2010.

  1. TopicStarter Overlay
    mazza
    Offline

    mazza Опытный в 1С

    Регистрация:
    4 фев 2009
    Сообщения:
    138
    Симпатии:
    0
    Баллы:
    26
    ТиС 9.2 есть Отчет по продажам ТМЦ. Как в табличную часть вывести все товары, имеющиеся в наличии на складах, а не только те которые продавались.
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Группировка по номенклатуре ВСЕ
  3. TopicStarter Overlay
    mazza
    Offline

    mazza Опытный в 1С

    Регистрация:
    4 фев 2009
    Сообщения:
    138
    Симпатии:
    0
    Баллы:
    26
    Группировку нужно сделать в запросе? Подскажите по точнее.
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Там группировкИ добавляются в текст запроса в цикле в отдельной процедуре
  5. TopicStarter Overlay
    mazza
    Offline

    mazza Опытный в 1С

    Регистрация:
    4 фев 2009
    Сообщения:
    138
    Симпатии:
    0
    Баллы:
    26
    Все равно в отчете только проданный товар, а не вся номенклатура со склада. Если можно показать на примере
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Код:
    Процедура УстановитьГруппировкиЗапроса(ТекстЗапроса, ТекстЗагол)
    СписокГруппировок = СоздатьОбъект("СписокЗначений");
    
    Для Сч=1 По Группировки.РазмерСписка() Цикл
    Если Группировки.Пометка(Сч)=1 Тогда
    ПредставлениеГрупп="";
    ТекстГрупп=Группировки.ПолучитьЗначение(Сч,ПредставлениеГрупп);
    Если  (ТекстГрупп = "Поставщик") или (ТекстГрупп = "Номенклатура") или (ТекстГрупп = "Покупатель") Тогда
    ТекстБезГрупп = " без групп";
    Иначе
    ТекстБезГрупп = "";
    КонецЕсли;
    //добавили НАЧАЛО 
    Если  (ТекстГрупп = "Номенклатура") Тогда
    ТекстБезГрупп=ТекстБезГрупп+" ВСЕ";
    КонецЕсли;
    //добавили КОНЕЦ
    ТекстЗапроса 	= ТекстЗапроса 	+ "Группировка "+ТекстГрупп+ТекстБезГрупп+";";   
    ТекстЗагол 		= ТекстЗагол 	+ ?(ТекстЗагол="",""," / ")+ПредставлениеГрупп;
    СписокГруппировок.ДобавитьЗначение(ТекстГрупп,ПредставлениеГрупп);
    Если ТекстГрупп = "Номенклатура" Тогда
    НомерГруппировкиПоТМЦ = СписокГруппировок.РазмерСписка();
    ИначеЕсли ТекстГрупп = "ДокПоставки" Тогда
    НомерГруппировкиПоПартиям = СписокГруппировок.РазмерСписка();
    ИначеЕсли ТекстГрупп = "Док" Тогда
    НомерГруппировкиПоДок = СписокГруппировок.РазмерСписка();   
    Если НомерГруппировкиПоТМЦ < 1000 Тогда
    ТекстЗапроса = ТекстЗапроса + "Группировка НомерСтроки;";
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;
    
    КонецПроцедуры // УстановитьГруппировкиЗапроса()
    
    
    Параметр группировки ВСЕ по справочникам подразу­мевает, что в запрос будут включены лю­бые значения данных (в том числе нулевые) для каждого допустимого элемента справоч­ника.
  7. TopicStarter Overlay
    mazza
    Offline

    mazza Опытный в 1С

    Регистрация:
    4 фев 2009
    Сообщения:
    138
    Симпатии:
    0
    Баллы:
    26
    Я так тоже пробовал в отчете все равно только проданный товар.
    Код:
    Если  (ТекстГрупп = "Номенклатура") Тогда
    ТекстБезГрупп=ТекстБезГрупп+" ВСЕ";
    КонецЕсли;
    
    
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Там еще есть фильтр по нулевым значениям:
    Процедура ПечатьСтрокиДокумента
    Код:
    //нужно закоментировать это условие
    Если (Запрос.РасходС = 0) и (Запрос.ВозвратС = 0) и (КолПоОтчетам = 0)  и (Запрос.ОборотСумма = 0) и (Запрос.ОборотКомРасход = 0) и (Запрос.ОборотВ = 0) Тогда 
    Возврат;
    КонецЕсли;
    
    

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