Имя: Пароль:
1C
1С v8
Помогите с заданием
0 koloboc74
 
07.10.15
11:20
Привет всем, есть задание
Создать отчет, выводящий самые продаваемые товары за каждый из РАБОЧИХ дней в указанном периоде (информация о рабочих и выходных днях находится в регистре сведений «Регламентированный производственный календарь»).
Если продаж за какой-то день не было, данные за этот день не выводить. Если было продано два и более товара с одинаковым количеством, выводить их все за этот день.
Вот накидал запрос но он что-то не работает , не он работает но не так выводит все данные , а мне надо как в задании.
Вот запрос .
ВЫБРАТЬ
    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК ДатаКалендаря
ПОМЕСТИТЬ СписокДат
ИЗ
    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачПериод И &КонПериод
    И РегламентированныйПроизводственныйКалендарь.ВидДня = &ВидДня
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПродажиОбороты.Период КАК Период,
    ПродажиОбороты.Номенклатура КАК Номенклатура,
    ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
    СписокДат.ДатаКалендаря
ПОМЕСТИТЬ ПродажиСП
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачПериод, &КонПериод, День, ДокументПродажи.Склад = &Склад) КАК ПродажиОбороты,
    СписокДат КАК СписокДат
ГДЕ
    ПродажиОбороты.Номенклатура <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПродажиСП.Номенклатура КАК Номенклатура,
    МАКСИМУМ(ПродажиСП.КоличествоОборот) КАК КоличествоОборот,
    ПродажиСП.ДатаКалендаря
ПОМЕСТИТЬ ДатыПродажи
ИЗ
    ПродажиСП КАК ПродажиСП

СГРУППИРОВАТЬ ПО
    ПродажиСП.Номенклатура,
    ПродажиСП.ДатаКалендаря
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПродажиСП.Номенклатура КАК Номенклатура,
    МАКСИМУМ(ПродажиСП.КоличествоОборот) КАК КоличествоОборот,
    ПродажиСП.ДатаКалендаря КАК ДатаКалендаря
ИЗ
    ПродажиСП КАК ПродажиСП

СГРУППИРОВАТЬ ПО
    ПродажиСП.Номенклатура,
    ПродажиСП.ДатаКалендаря

УПОРЯДОЧИТЬ ПО
    ДатаКалендаря
1 Лефмихалыч
 
07.10.15
11:21
"выводить их все за этот день"- это вывести сумму или каждую продажу в отдельности?
2 zak555
 
07.10.15
11:22
в ут11 кажись есть такой типовой отчёт
3 koloboc74
 
07.10.15
11:24
Надо вывести за период , и самые максимальное количество проданного товара за день
Пример
1 день
1 кофта 4 шт
2 брюки 6 шт
3 юбка 2 шт
4 блуза 12 шт

2 день
1 кофта 8 шт
2 брюки 12 шт
3 юбка 2 шт

В отчет попадают 2 строки
1 Блуза 12 шт 1 день
2 Брюки 12 шт 2 день
4 koloboc74
 
07.10.15
11:26
У меня УТ 8.1
5 Адинэснег
 
07.10.15
11:27
>У меня УТ 8.1...
расходимся
6 Ненавижу 1С
 
гуру
07.10.15
11:30
а если

2 день
1 кофта 80 шт
2 брюки 80 шт
7 koloboc74
 
07.10.15
11:34
Тоже выводить
8 Midaw
 
07.10.15
12:06
начни с чего нибудь попроще )
9 koloboc74
 
07.10.15
12:17
Короче вымучил
Вот запрос кому надо
ВЫБРАТЬ
    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК ДатаКалендаря,
    МАКСИМУМ(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот,
    МАКСИМУМ(ПродажиОбороты.Номенклатура) КАК Номенклатура
ИЗ
    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, День, ДокументПродажи.Склад = &Склад) КАК ПродажиОбороты
        ПО (ПродажиОбороты.Период > ДОБАВИТЬКДАТЕ(РегламентированныйПроизводственныйКалендарь.ДатаКалендаря, ДЕНЬ, -31))
            И РегламентированныйПроизводственныйКалендарь.ДатаКалендаря = ПродажиОбороты.Период
ГДЕ
    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &ДатаНач И &ДатаКон
    И РегламентированныйПроизводственныйКалендарь.ВидДня = &ВидДня

СГРУППИРОВАТЬ ПО
    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
10 xXeNoNx
 
07.10.15
13:11
Усложним:
Есть дни недели - перечисление(пн, вт, ср,...)
Есть время      - перечисление(1час,2часа,3часа,...)
Есть товар, информация по продажам хранится в регистре сведений с измерениями: ДеньНедели, Время, Товар

Нужен отчет показывающий время прихода товара в разрезе дней недели
Пример(исходные данные)
          Пн  ВТ  СР  ЧТ  ПТ СБ
Товар1    3    
Товар1            4
Товар1    2
Товар2        4
Товар2    1

Что должно получиться

          Пн  ВТ  СР  ЧТ  ПТ СБ
Товар1    3       4
Товар1    2
Товар2    1   4
11 xXeNoNx
 
07.10.15
13:12
+(10) Т.е. строки должны свернуться там, где нет пересечения по дням и по времени, если не сворачиваются, то должна быть вторая строка. Отчет на СКД
12 Windyhead
 
07.10.15
13:16
в (9) Запрос какой-то бредовый. особенно строчка "МАКСИМУМ(ПродажиОбороты.Номенклатура) КАК Номенклатура"
13 koloboc74
 
08.10.15
02:59
Windyhead Да не спорю, бред но вот без этого "МАКСИМУМ(ПродажиОбороты.Номенклатура) КАК Номенклатура" не выводит нормально.
AdBlock убивает бесплатный контент. 1Сергей