Имя: Пароль:
1C
1С v8
Получить из месячных записей недельные
,
0 cons24
 
28.09.18
15:14
Добрый день.
План продаж введен помесячно (регистр накопления. обороты).
Как запросом получить величину плана на каждую неделю?
1 Cool_Profi
 
28.09.18
15:18
Выдели недели из месяца и раскида пропорционально
2 cons24
 
28.09.18
15:19
(1) немного подробнее пожалуйста
3 Cool_Profi
 
28.09.18
15:22
Куда подробней?
Разбиваешь месяц на недели. Относишь количество дней в неделе (а недель может быть больше 4х) к количеству дней в месяце и перемножаешь
4 Вафель
 
28.09.18
15:22
количество за нелелю = колчество / 4.5
5 Cool_Profi
 
28.09.18
15:24
(4) А почему февраль ты так обидель?
6 cons24
 
28.09.18
15:30
Может я не так выразился.
Дано:
01.08 А 10
01.09 А 20
анализируемый период 01.08-06.09

Надо получить таблицу:
01.08 А 10/31*5
06.08 А 10/31*7
13.08 А 10/31*7
20.08 А 10/31*7
27.08 А 10/31*5
...
03.09 А 20/31*4
т.е. 10(план на месяц)/31(дней в месяце)*5(дней в неделе)
7 cons24
 
28.09.18
15:31
(3) как в запросе разбить месяц на недели?
8 Вафель
 
28.09.18
15:38
нужно соеденить с таблицей недель
9 cons24
 
28.09.18
16:31
(8) а таблицу недель откуда взять?
10 DmitrO
 
28.09.18
16:44
Предлагаю записи по месяцам пропорционально распределить по дням этого месяца (можно кстати по рабочим только).
После этого получившуюся таблицу с днями свернуть по неделям.
Для этого надо завести на сервере таблицу с днями (подходит основной производственный календарь, например), иначе придется закидывать ее на сервер при каждом формировании отчета.
11 DmitrO
 
28.09.18
16:45
если честно, задачка походит на тестовую на собеседовании или экзамене каком-то :)
12 palsergeich
 
29.09.18
00:22
в стандартном конструкторе запросов подсказка: все функции которые там есть.Есть такая функция как НачалоПериода, КонецПериода и РазностьДат. этого достаточно что бы решить эту задачу.
hint сначала для каждого месяца попадающего в отчетный период вычисляем количество дней. 1/количество дней - вес одного дня в плане. Для быстрого решения - могу сказать сразу: Максимально возможное количество недель в месяце - 6. Остальное делается теми 3мя функциями
13 palsergeich
 
29.09.18
00:24
(12) А еще есть функция ДеньНедели, с ее помощью все становится совсем тривиально (если задача подразумевает привязку к дням недели, то есть реальный календарь, а не все месяцы начинаются с понедельника)
14 palsergeich
 
29.09.18
00:29
А можно зачитерить, если это не запрещено в условии задачи - воспользоватся регистром сведений ДанныеПроизводственногоКалендаря (в последних конфах он называется чуть по другому)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший