|
Работа с запросами в операндах 1с УХ | ☑ | ||
---|---|---|---|---|
0
Yunniy_Proger
22.03.24
✎
11:49
|
Добрый день, ситуация следующая, работаю с операндами в 1С:УХ , есть некая формула, итог которой делится на количество дней текущего месяца. Запросом из справочника "периоды" тяну окончание месяца, пробовал привезти к числу через разность дат, не сработало. При формирование экземпляра отчета ругается , что пытаюсь делить число на дату. Вопрос такой, есть ли возможно привести дату к типу число?
Вот сам запрос: ВЫБРАТЬ (ДЕНЬ(Периоды.ДатаОкончания) - ДЕНЬ(Периоды.ДатаНачала)) / 86400 КАК ДатаОкончания ИЗ Справочник.Периоды КАК Периоды ГДЕ НАЧАЛОПЕРИОДА(Периоды.ДатаНачала, ДЕНЬ) = &ДатаНачала И КОНЕЦПЕРИОДА(Периоды.ДатаОкончания, ДЕНЬ) = &ДатаОкончания Вот ошибка при формирование экземпляра: Ошибка вычисления формулы: "Результат = ?(дата(1,1,1)=0,0,?((397420252.97 + 393673852.34) / 2=0,0,(24061146.14 + 43708851.14) / ((397420252.97 + 393673852.34) / 2 ) * 100) / дата(1,1,1))" Вот отборы, которые выставляю https://ibb.co/XyfymhQ |
|||
1
Галахад
22.03.24
✎
11:57
|
Непонятно при чем тут запрос, если проблема в формуле.
P.S. Порицаю за такие формулы. |
|||
2
Yunniy_Proger
22.03.24
✎
11:59
|
(1) Проблемы в формуле нет, так как если вместо запроса выставлять число 30 или 31 , то все работает
|
|||
3
Yunniy_Proger
22.03.24
✎
12:00
|
(1) дата(1,1,1) , мне нужно ,чтобы этого в формуле не было, меня интересует, как привести дату к типу число и возможно ли вообще это в контексте запроса.
|
|||
4
АгентБезопасной Нацио
22.03.24
✎
12:01
|
(2) так запрос-то у тебя не скалярный...
|
|||
5
FIXXXL
22.03.24
✎
12:02
|
(0) / дата(1,1,1)
ну дык ты и делишь на дату |
|||
6
Yunniy_Proger
22.03.24
✎
12:04
|
(5) Ну так и вопрос в том, как мне дату привести к числу
|
|||
7
АгентБезопасной Нацио
22.03.24
✎
12:14
|
(6) "Используй РазностьДат(,,ДЕНЬ), юный падаван!"© Йода
|
|||
8
Гена
22.03.24
✎
12:23
|
(7) О, мудрый Йода, количество календарных дней месяца равно последнему дню этого месяца в числовом формате.
Например, День(КонецМесяца(ТекущаяДата())) |
|||
9
АгентБезопасной Нацио
22.03.24
✎
12:34
|
(8) Гениально! я скажу истчо одно гениальное наблюдение: у всех месяцев первый день имеет в числовом формате значение 1. Поразительно, правда? - так одинаково начинаются, и так по-разному заканчиваются... <тут должна быть притча Лао-цзы об изменчивости...>
Беда только в том, что жизнь длинна, задачи различны, и период отчета может быть не равный месяцу... |
|||
10
Yunniy_Proger
22.03.24
✎
12:48
|
(7) Спасибо учитель, но как я написал ранее, разность дат не прокатывает
|
|||
11
Волшебник
22.03.24
✎
12:49
|
(9) Есть календари с одинаковым количеством дней в месяцах, например
wiki:Международный_фиксированный_календарь в каждом месяце ровно 4 недели (28 дней); |
|||
12
АгентБезопасной Нацио
22.03.24
✎
12:59
|
(10) Йода не учитель, йода магистр...
В чем заключается "непрокатываемость"? Я не работал "с операндами в УХ", но почему не оттрассировать то, что дает запрос, и как он преобразовывает. Странно, что запрос возвращает таблицу, причем с названием колонки как у параметра (может, тип берет от параметра, а значение из запроса?), а из нее берется скалярное значение... |
|||
13
АгентБезопасной Нацио
22.03.24
✎
13:00
|
(11) сразу вспоминается автомат для бритья... "у всех лица, конечно, разные - но только при первом бритье"©
|
|||
14
RVN
22.03.24
✎
13:01
|
(0) У тебя параметр типа дата и твое поле имеют одинаковое название. Вот он и глючит.
Запрос: ВЫБРАТЬ РАЗНОСТЬДАТ(&ДатаНачала, &ДатаОкончания, ДЕНЬ) КАК ДнейВМесяце А в формуле дели на "ДнейВМесяце" |
|||
15
Yunniy_Proger
22.03.24
✎
13:08
|
(14) Спасибо большое, вот все так и было, как ты и написал
|
|||
16
Yunniy_Proger
22.03.24
✎
13:12
|
(12) Спасибо за помощь, все так, из-за одинаковых наименований...
|
|||
17
Garykom
22.03.24
✎
14:29
|
(11) Может просто орбиту (и скорость вращения с наклонением) Земли подправить?
|
|||
18
Волшебник
22.03.24
✎
14:38
|
(17) Это слишком банально. Мы не ищем лёгких путей.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |