Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Сложный отчет с периодом

Сложный отчет с периодом
Я
   on2
 
09.10.19 - 13:14
Привет мальчики! Не могу никак сообразить как реализовать. Делаю на базе СКД на базе регистра.

Нужно вывести следующую информацию о продажах (период нужно выбирать (например с марта по май)
-------------------------------------------------------------------
продукция/месяц   март     апрель    май    ....
-------------------------------------------------------------------
курица             100       50       0
яйцо               3         0        5
-------------------------------------------------------------------
ИТОГ              103        50       5
 
 
   Волшебник
 
1 - 09.10.19 - 13:16
В чём проблема?
   on2
 
2 - 09.10.19 - 13:16
Подскажите алгоритм действий...
   piter3
 
3 - 09.10.19 - 13:16
На что алгоритм?
   on2
 
4 - 09.10.19 - 13:16
для начала нужно понять как перейти в конкретных дат на месяцы (1)
   Жан Пердежон
 
5 - 09.10.19 - 13:16
в каком месте этот отчет сложный?
   on2
 
6 - 09.10.19 - 13:17
и в ячейки "не попадают" значения в виде кол-ва, где что делаю не так((
   pechkin
 
7 - 09.10.19 - 13:17
(4) в скд у дат есть плюсики
   on2
 
8 - 09.10.19 - 13:17
(5) для меня везде))))
   on2
 
9 - 09.10.19 - 13:18
(7) там много плюсиков))) на какой вкладке смотреть?
   trooba
 
10 - 09.10.19 - 13:30
(9) на последней- дополнения периода
   D_E_S_131
 
11 - 09.10.19 - 14:27
(0) А у Вас просто вывести продажи получается? Типа:
Курица, 23.03.2019, 100
Яйцо, 25.03.2019, 3
Курица, 02.04.2019, 50
Яйуо, 10.05.2019, 5
ИТОГО 158
   on2
 
12 - 09.10.19 - 15:29
(11) да у меня по горизонту даты идут....
-------------------------------------------
номенклатура  01.03.18      01.04.18
-------------------------------------------
яйцо          3                 0     
курица         100             50
   _Дайвер_
 
13 - 09.10.19 - 15:50
Делаешь оформление в наборе данных для поля дата ММММ гггг, на вкладке Настройки, на поле группировки ставишь дополнение "месяц", чтобы по порядку шло
   on2
 
14 - 09.10.19 - 17:33
(13) сейчас попробую
   on2
 
15 - 09.10.19 - 19:16
(13) что то у меня нет ничего похожего...может есть пример какой аналогичный??
   on2
 
16 - 10.10.19 - 22:47
Ну как бы я отчет сделала!!!!! ВАУУУУ!
Так вот -  теперь для гуру 1С расскажу в чем смысл "сложного" отчета)))
Мне надо его запрограммировать без СКД и конструкторов отчета.

Набросала макет, форму, на форму накинула табличный документ...
теперь думаю как извлечь данные причем с группировкой по месяцам...

Какие будут мысли мальчики?
   MuxaH
 
17 - 11.10.19 - 07:57
(16) В запросе есть конструкция ПЕРИОДАМИ. Получится примерно та же конструкция, что  была в СКД. Только чтоб получить эти периоды в выборке надо в методе Выбрать() для результата запроса, третьим вроде параметром, указать "ВСЕ". Ну и вперёд - заполнять макет.
   D_E_S_131
 
18 - 11.10.19 - 10:25
"Какие будут мысли мальчики?" - есть мысль поискать курсы по 1С.
   on2
 
19 - 12.10.19 - 14:54
(16) сказал так, что я ничего не поняла))))
В общем осталась передо мной простая задачка:
1. сформировать запрос
2. построить по группировка присоединение секций.
3. вывести в макет.

Сейчас при формировании запроса проблема с периодом не могу найти пример как период в запросе реализовать с учетом что регистр накопления (Продажи.Обороты).
-------------
сейчас ругается что поле ПродажиОбороты.Период не найдено.
-----сам запрос-----
ВЫБРАТЬ
    ПродажиОбороты.Рыбы КАК Номенклатура,
    СУММА(ПродажиОбороты.КолвоОборот) КАК Количество,
    ПродажиОбороты.Период КАК Период
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, месяц, ) КАК ПродажиОбороты

СГРУППИРОВАТЬ ПО
    ПродажиОбороты.Период,
    ПродажиОбороты.Рыбы
ИТОГИ
    СУММА(Количество)
ПО
    ОБЩИЕ,
    Номенклатура,
    Период
   hhhh
 
20 - 12.10.19 - 15:12
(19) вот такой запрос

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


остальное мусор. Выкинь.
   on2
 
21 - 12.10.19 - 15:17
(20) сейчас попробую....
так а в период что передавать?  две даты?
   on2
 
22 - 12.10.19 - 15:48
(20) все вроде разобралась с запросом))) еду дальше
   on2
 
23 - 12.10.19 - 17:45
Скажите почему функция "ЗаполнитьЗначенияСвойств" у меня не работает:

Область_данные    = Макет.ПолучитьОбласть("Данные|Номенклатура");
ВыбНом=Выборканоменклатура.Рыбы;
ЗаполнитьЗначенияСвойств(Область_данные_Ном.Параметры,ВыбНом);
ТабДок.Вывести(Область_данные);


При этом в макете параметр также "ВыбНом".
Что не так мола сделать?((
   on2
 
24 - 12.10.19 - 18:31
Все отбой (23)- сделала простым способом.
   on2
 
25 - 12.10.19 - 20:03
Ребят, почему ошибка на "Результат" выдает?


ВыборкаПериод = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Период", "ВСЕ");
Пока ВыборкаПериод.Следующий() Цикл
    ОбластьПериод.Параметры.Заполнить(ВыборкаПериод);
    ТабДок.Вывести(ОбластьПериод, ВыборкаПериод.Уровень());
КонецЦикла;
   Franchiser
 
26 - 12.10.19 - 20:37
Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Период");
   on2
 
27 - 12.10.19 - 20:40
В 7.7 я делала проще
Группировка(1) и группировка(2) в случае двух группировок....а тут ХЗ взрыв мозга у меня))))
   on2
 
28 - 12.10.19 - 20:41
ПРостой запрос, выбираю за период номенклатуру и колв-во
а как вывести группировку по номенклатуре и отдельно за период
- взрыв мозга!
   on2
 
29 - 12.10.19 - 20:50
Где ошибка... не могу разобраться! Пишет что измерение "Период" не найдено....

----------
Запрос = новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
               |    ПродажиОбороты.Номенклатура КАК Номенклатура ,
               |    ПродажиОбороты.Период КАК Период,
               |    СУММА(ПродажиОбороты.КолвоОборот) КАК КолвоОборот
               |ИЗ
               |    РегистрНакопления.Продажи.Обороты(,, Месяц, ) КАК ПродажиОбороты
               |
               |СГРУППИРОВАТЬ ПО
           |    ПродажиОбороты.Период,
               |    ПродажиОбороты.Номенклатура 
               |                   
               |УПОРЯДОЧИТЬ ПО
               |    Период,
               |    Номенклатура ,
               |    КолвоОборот";


Выборка_мес = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Период",);

Пока Выборка_мес.Следующий() Цикл
    Выборка_н = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура");
    Пока Выборка_н.Следующий() Цикл
        Сообщить("номенклатура="+Выборка_н.Номенклатура);
    КонецЦикла;    
КонецЦикла;
   on2
 
30 - 13.10.19 - 00:36
закрываем тему! я разобралась!!!!!
 
 
   on2
 
31 - 13.10.19 - 00:36
Я умничка)))))
   on2
 
32 - 13.10.19 - 08:06
Единственное, что хотелось бы у вас спросить, совет....
Я три раза запрос вызываю, как можно вызвав один раз вернуться к его обходу по группировкам без его вызова.... т.е. что бы не делать так:
------------
Выгрузка_3=Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Период", "Все");
   Franchiser
 
33 - 13.10.19 - 10:49
Выборка_Мес.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура");
   Franchiser
 
34 - 13.10.19 - 10:51
РезЗапроса = Запрос.Выполнить();
Выборка_мес = реззапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Период");
   Franchiser
 
35 - 13.10.19 - 10:52
(0) открой для себя конструктор запроса с обработкой результата
   Franchiser
 
36 - 13.10.19 - 10:54
И у тебя в запросе нет секции Итоги По
   on2
 
37 - 13.10.19 - 11:41
(35) (36)итоги ПО зачем нужны ?
   hhhh
 
38 - 13.10.19 - 12:43
(36) в СКД итогов не пишут










д
   Franchiser
 
39 - 13.10.19 - 16:49
(36)(37) тогда зачем обходить результата запроса по группировкам?
   on2
 
40 - 13.10.19 - 17:48
(39) что бы вывести данные в макет, без использования СКД.
Месяца по горизонтали. По вертикали номенклатура, а на пересечении значения.
Это только с помощью обхода групп можно сделать, насколько мне известно... может я не права?
   hhhh
 
41 - 13.10.19 - 18:25
(40) да, но группы - это в ИТОГИ задаются, тут он прав.
   Franchiser
 
42 - 13.10.19 - 18:36
(40) не понятно, ты как нужно тебе вывести данные с СКД или без СКД.
Обход результат по группировкам имеет смысл только для "не СКД".
   on2
 
43 - 13.10.19 - 19:21
(42) мне в макете это надо. БЕЗ СКД!!!!
   Franchiser
 
44 - 13.10.19 - 21:22
(43) тогда нужны Итоги По
   Franchiser
 
45 - 13.10.19 - 21:23
Обход результатов по группировкам работает по секции ИТОГИ ПО


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.