7.7 Отчет по таре

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем eks-profit, 1 июн 2010.

  1. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Направьте светлую голову в нужном направлении.
    Не выходит отчет по таре, писал, чиркал, чего сделал не помню, всё просто перестало работать.
    ПартииНаличие и ПартииОтданные - регистры остатков
    Надо остаток на начало периода, принятая/отданная тара и расшифровку по документам.
    В таблице есть: "У контрагента на начало, Принято у контрагента, Передано контрагенту, На конец: У нас, У контрагента"
    НачОст и КонОст почему-то не работали, а теперь вообще никаких результатов


    Код:
    Процедура Сформировать()
    Запрос = СоздатьОбъект("Запрос");
    
    ТекстЗапроса = 
    "//{{ЗАПРОС(Долг)
    |Период с Дата1 по Дата2;
    |Тара =     Регистр.ПартииНаличие.Номенклатура, Регистр.ПартииОтданные.Номенклатура;
    |Фирма =    Регистр.ПартииНаличие.Фирма, Регистр.ПартииОтданные.Фирма;
    |Контрагент =    Регистр.ПартииНаличие.ТекущийДокумент.Реализация.Контрагент,
    |            Регистр.ПартииНаличие.ТекущийДокумент.ВозвратОтПокупателя.Контрагент,
    |            Регистр.ПартииНаличие.ТекущийДокумент.ПоступлениеТМЦ.Контрагент;
    |Цена =        Регистр.ПартииНаличие.СуммаРуб, Регистр.ПартииОтданные.СуммаРуб; 
    |Док =         Регистр.ПартииНаличие.ТекущийДокумент, Регистр.ПартииОтданные.ТекущийДокумент;
    |Количество =     Регистр.ПартииНаличие.Количество, Регистр.ПартииОтданные.Количество;
    |Функция ОстНаНач = НачОст(Количество);
    |Функция ОстНаКон = КонОст(Количество);
    |Группировка Контрагент без групп;
    |Группировка Тара без групп;
    |Группировка Док;
    |Условие (Тара.ВидНоменклатуры=Перечисление.ВидыНоменклатуры.Тара);";
    //;
    
    Если ПустоеЗначение(ВыбКонтрагент) = 0 Тогда
    ТекстЗапроса = ТекстЗапроса +"
    |Условие (Контрагент в ВыбКонтрагент);";
    КонецЕсли;
    Если ПустоеЗначение(ВыбФирма) = 0 Тогда
    ТекстЗапроса = ТекстЗапроса +"
    |Условие (Фирма в ВыбФирма);";
    КонецЕсли;
    
    ТекстЗапроса = ТекстЗапроса +"
    |"//}}ЗАПРОС;
    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
    Возврат;
    КонецЕсли;
    Табл = СоздатьОбъект("Таблица");
    Табл.ВывестиСекцию("Шапка");
    Пока Запрос.Группировка(1) = 1 Цикл
    Табл.ВывестиСекцию("СтрокаКонтр");
    Пока Запрос.Группировка(2) = 1 Цикл
    Табл.ВывестиСекцию("ТСтрока");
    Пока Запрос.Группировка(3) = 1 Цикл
    Табл.ВывестиСекцию("Докум");
    КонецЦикла;
    КонецЦикла;
    КонецЦикла;
    Табл.ВывестиСекцию("Подвал");
    Табл.Опции(0,0,0,0);
    Табл.Показать("");
    КонецПроцедуры
    
    
    
    
    Пользуемся тэгами
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Не вижу функций суммирования по приходу и расходу... Так работать не будет
  3. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Спасибо добавил:
    |Функция ПриходК = Приход(Количество);
    |Функция РасходК = Расход(Количество);


    Не пашет НачОст и КонОст, дает - 0
  4. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Вы пишете Запрос.НачОст или Запрос.ОстНаНач ??
  5. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Запрос.ОстНаНач
  6. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    В одном запросе вы не получите и движения и остатки.. или/или
  7. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Вообще ничего не понимаю!
    Делал два запроса, в одном приход/расход, в другом остатки
    Пробовал ОстНаНач = ПН.Остаток(Запрос.Фирма,,Запрос.Тара,,,,,"Количество");
    результат - 0
  8. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Метод Остаток нельзя применять с пропусками ресурсов
  9. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Спасибо сделал через СводныеОстатки(), еще бы расшифровку в таблице написать! Пока не знаю как
  10. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Какая именно расшифровка нужна?
  11. TopicStarter Overlay
    eks-profit
    Offline

    eks-profit

    Регистрация:
    1 июн 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    ссылку на документ, чтоб можно было открыть из отчета
  12. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Когда получаете движения по регистру в запросе (приход/расход) добавьте переменную со ссылкой на документ вызвавший движение. Если выбираете через цикл (ВыбратьДвижения) то воспользуйтесь методом ТекущийДокумент()
  13. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    в типовом ТиСе в отчете ВедомостьПоПартиямТМЦ данные берутся одним запросом, и к тому же выбиратьДвижения значительно снизит производительность отчета.

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