8.х торг 29 "Товарный отчет"

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Вишенка, 2 сен 2011.

  1. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

    Регистрация:
    1 фев 2011
    Сообщения:
    153
    Симпатии:
    1
    Баллы:
    29
    Управление торговлей "Управление торговлей", редакция 10.3 (10.3.12.3)
    Нашла отчетик торг 29, устраивает все, но с остатками разобраться не могу.
    Они выводятся исходя из следующей функции :
    Код:
    Функция СформироватьТекстЗапросаПоОстаткам(ВидОтчета)
    
    ТекстЗапроса = 
    "ВЫБРАТЬ
    |   ПартииТоваровНаСкладах.Регистратор,
    |	ВЫРАЗИТЬ(ЕСТЬNULL(ПартииТоваровНаСкладах.СтоимостьНачальныйОстаток,0) КАК ЧИСЛО(15,3)) КАК НачОстКупленный,
    |	ВЫРАЗИТЬ(ЕСТЬNULL(ПартииТоваровНаСкладах.СтоимостьПриход,0) КАК ЧИСЛО(15,3)) КАК Приход,
    |	ВЫРАЗИТЬ(ЕСТЬNULL(ПартииТоваровНаСкладах.СтоимостьРасход,0) КАК ЧИСЛО(15,3)) КАК Расход,
    |	ВЫРАЗИТЬ(ЕСТЬNULL(ПартииТоваровНаСкладах.СтоимостьКонечныйОстаток,0) КАК ЧИСЛО(15,3)) КАК КонОстКупленный
    |	
    |ИЗ
    |	РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(&НачПериодаГраница, &КонПериодаГраница, Регистратор, ,ДокументОприходования.Организация = &Организация И СтатусПартии <> &ВидТовар "+?(Склад.Пустая(),""," И Склад = &Склад ")+") КАК ПартииТоваровНаСкладах
    |
    |УПОРЯДОЧИТЬ ПО ПартииТоваровНаСкладах.Регистратор.Дата
    |
    |";
    
    Возврат ТекстЗапроса;
    
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/конецфункции')">КонецФункции	</span>
    
    
    Также когда выводит строчку последнего контрагента (допустим по реализации) - все документы выводит, а итого по нему не выводит, хотя для предыдущих контрагентов выводит все. И правильно общие суммы считает.
    Заранее спасибо!!!
  2. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

    Регистрация:
    1 фев 2011
    Сообщения:
    153
    Симпатии:
    1
    Баллы:
    29
  3. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

    Регистрация:
    1 фев 2011
    Сообщения:
    153
    Симпатии:
    1
    Баллы:
    29
    Спустя 3 дня...=)
    По отчету "Ведомость товаров на складах" выводятся начальные и конечные остатки. Соотвественно в отчет Ведомость товаров на складах они попадаются через отчет "Универсальный".
    Посмотрела модуль и поняла, что ничего не понимаю :D
    Люди добрые, помогите разобраться пожалуйста как считаются начальные и конечные остатки в отчете Универсальный :angry:
  4. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    В сам код универсального отчета не залазил, но думаю что там используются виртуальные таблицы регистров.
  5. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

    Регистрация:
    1 фев 2011
    Сообщения:
    153
    Симпатии:
    1
    Баллы:
    29
    да там виртуальные таблицы.
    в моем отчете Торг 29 виртуальная таблица РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты, из которой выбираются поля ПартииТоваровНаСкладах.СтоимостьНачальныйОстаток и ПартииТоваровНаСкладах.СтоимостьКонечныйОстаток (нач и конеч остатки соотвественно).
    потом в процедуре "товарный отчет" остатки считаются:
    Код:
    НачС = 0;
    НачСТара = 0;
    КонС = 0;
    КонСТара = 0;
    Если ВыборкаОстатков.Количество() > 0 Тогда
    ВыборкаОстатков.Следующий();
    НачС = ВыборкаОстатков.НачОстКупленный;
    Пока ВыборкаОстатков.Следующий() Цикл
    КонецЦикла;	
    КонС=ВыборкаОстатков.КонОстКупленный;
    КонецЕсли;
    
    ОстНач=Макет.ПолучитьОбласть("ОстатокНачала");
    ОстНач.Параметры.ДатаНачала=Лев(Строка(Начпериода),10);
    ОстНач.Параметры.НачС=НачС;
    ОстНач.Параметры.НачСТара=НачСТара;
    ТабДок.Вывести(ОстНач);
    
    
    
    в итоге выводится неверный начальный остаток. и он почему то равен конечному остатку.
    если сравнить отчеты (торг 29 мой и ведомость по товарам на складах ) - неправильные остатки. :angry:
    может подскажете плиииз=)
  6. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Может с датой что-то не так? Может нужно использовать НачалоДня() и КонецДня() ?
  7. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

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

    конечный остаток правильно считается, начальный - никак не не хочет... :angry:
  8. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    А в НачПериодаГраница какая дата и время стоит?
  9. TopicStarter Overlay
    Вишенка
    Offline

    Вишенка Опытный в 1С

    Регистрация:
    1 фев 2011
    Сообщения:
    153
    Симпатии:
    1
    Баллы:
    29
    Процедура ТоварныйОтчет(ТабДок, СтруктураПараметров) Экспорт

    НачПериода = СтруктураПараметров.НачПериода;
    КонПериода = СтруктураПараметров.КонПериода;
    Склад = СтруктураПараметров.Cклад;
    ВЦенхДокументов = СтруктураПараметров.ВЦенхДокументов;
    Организация = СтруктураПараметров.Организация;
    СтоимостьБезНДС = СтруктураПараметров.СтоимостьБезНДС;
    ДетализацияПоКонтрагентам = СтруктураПараметров.ДетализацияПоКонтрагентам;
    ОтборКонтрагентовТара = СтруктураПараметров.ОтборКонтрагентовТара;

    НачПериодаГраница = НачалоДня(НачПериода);
    КонПериодаГраница = КонецДня(КонПериода);

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