Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 12:38

Нужна помощь с запросом!!!

Автор kynin, 29 сен 2011, 21:36

0 Пользователей и 1 гость просматривают эту тему.

kynin

Доброго дня. в общем есть у меня запрос. на одном из форумов сказали мне что нужно его пакетно представить, дабы читался он лучше(действительно, так читается лучше))). вот я его в таком виде и выкладываю здесь. в чем моя проблема:
был запрос, он в зависимости от промежутка времени и выбранного продавцы показывал день когда он работал, сумму и выручку(то что имеет продавец). но есть товары у которых в комментарии стоит "???"(товар который был оформлен как залог). то их стоимость нужно просто отнимать от дня когда работал продавец, они просто не считаются в зарплату. так вот, он мне правильно все отнимает, но почему он сначала пишет дату с верной суммой выручки, а потом нет.
Код:
"ВЫБРАТЬ
   |НАЧАЛОПЕРИОДА(ПартииТоваровНаСкладах.Период, ДЕНЬ) КАК ДЕНЬ,
   |СУММА(ОтчетОРозничныхПродажах.Сумма) КАК Стоимость,
   ПартииТоваровНаСкладах.Склад КАК Склад
ПОМЕСТИТЬ ВТПартии
ИЗ
   РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
      ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажах
      ПО ПартииТоваровНаСкладах.Регистратор = ОтчетОРозничныхПродажах.Ссылка
         И ПартииТоваровНаСкладах.НомерСтроки = ОтчетОРозничныхПродажах.НомерСтроки
ГДЕ
   ПартииТоваровНаСкладах.Период МЕЖДУ &ДатаНач И &ДатаКон
   И ПартииТоваровНаСкладах.КодОперации = &КодОперацииРеализацияРозница

СГРУППИРОВАТЬ ПО
   НАЧАЛОПЕРИОДА(ПартииТоваровНаСкладах.Период, ДЕНЬ),
   ПартииТоваровНаСкладах.Склад
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   НАЧАЛОПЕРИОДА(IT_ПродавцыСмены.Период, ДЕНЬ) КАК ДЕНЬ,
   IT_ПродавцыСмены.Продавец КАК Продавец,
   IT_ПродавцыСмены.Склад КАК Склад
ПОМЕСТИТЬ ВТПродавец
ИЗ
   РегистрСведений.IT_ПродавцыСмены КАК IT_ПродавцыСмены
ГДЕ
   IT_ПродавцыСмены.Период МЕЖДУ &ДатаНач И &ДатаКон
   И IT_ПродавцыСмены.Продавец = &Продавец
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   СУММА(ОтчетОРозничныхПродажахТовары.Сумма) КАК Сумма,
   НАЧАЛОПЕРИОДА(ОтчетОРозничныхПродажахТовары.Дата, ДЕНЬ) КАК ДЕНЬ
ПОМЕСТИТЬ ВТЗалог
ИЗ
   Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
ГДЕ
   ВЫРАЗИТЬ(ОтчетОРозничныхПродажахТовары.Комментарий КАК СТРОКА) ПОДОБНО "%???%"
   И ОтчетОРозничныхПродажахТовары.Дата МЕЖДУ &ДатаНач И &ДатаКон

СГРУППИРОВАТЬ ПО
   НАЧАЛОПЕРИОДА(ОтчетОРозничныхПродажахТовары.Дата, ДЕНЬ)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ВТПартии.ДЕНЬ,
   ВЫБОР
      КОГДА ВТЗалог.ДЕНЬ = ВТПартии.ДЕНЬ
         ТОГДА ВТПартии.Стоимость - ВТЗалог.Сумма
      ИНАЧЕ ВТПартии.Стоимость
   КОНЕЦ КАК СУММА
ИЗ
   ВТЗалог КАК ВТЗалог,
   ВТПартии КАК ВТПартии
      ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТПродавец КАК ВТПродавец
      ПО ВТПартии.ДЕНЬ = ВТПродавец.ДЕНЬ
         И ВТПартии.Склад = ВТПродавец.Склад

СГРУППИРОВАТЬ ПО
   ВТПартии.ДЕНЬ,
   ВЫБОР
      КОГДА ВТЗалог.ДЕНЬ = ВТПартии.ДЕНЬ
         ТОГДА ВТПартии.Стоимость - ВТЗалог.Сумма
      ИНАЧЕ ВТПартии.Стоимость
   КОНЕЦ"

  Во вложенном файле видно как он выводит результат. вот тут я сравниваю по дате и отнимаю сумму залога:
"ВЫБОР
      КОГДА ВТЗалог.ДЕНЬ = ВТПартии.ДЕНЬ
         ТОГДА ВТПартии.Стоимость - ВТЗалог.Сумма
      ИНАЧЕ ВТПартии.Стоимость
   КОНЕЦ КАК СУММА"
В чем проблема, не могу ни как понять. подскажите пожалуйста.

Skellar

Не совсем понял, зачем вам группировка по целому условию. И вообще, зачем группировка? Попробуйте не внутреннее, а полное соединение.

primus

не понимаю, зачем объединять регистры с документом. Через регистры будет проще и быстрее - внимательно посмотри, как проводятся документы, которые тебя интересуют.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск