Имя: Пароль:
 
Период в 1С – как правильно учитывать даты?
(1) DebugMaster
25 декабря 2023 г.
6:00
Коллеги, нужна помощь. Работаю с периодами в 1С, нужно корректно учитывать начало и конец периода. Столкнулся с тем, что если дата окончания не указана, то программа валится. Как лучше обработать такой случай?
(2) АнализДанных
25 декабря 2023 г.
8:05
Лучше сразу проверять, что дата окончания не меньше даты начала. Иначе могут быть сюрпризы в отчетах. Я в таких случаях подставляю максимально возможную дату, если конец периода не задан.
(3) kostik79
25 декабря 2023 г.
9:49
Да, согласен. Еще важно обрабатывать ситуацию, когда дата окончания = 01.01.0001. Можно сделать так:
Параметры в схеме компоновки данных
Имя: НачалоПериода, Выражение: &Период.ДатаНачала (2)

Имя: КонецПериода, Значение: ВЫБОР КОГДА &Период.ДатаОкончания=ДАТАВРЕМЯ(1,1,1)
ТОГДА ДАТАВРЕМЯ(3999,12,31,23,59,59) ИНАЧЕ ВЫБОР КОГДА
&Период.ДатаОкончания<&Период.ДатаНачала ТОГДА ДАТАВРЕМЯ(3999,12,31,23,59,59)
ИНАЧЕ &Период.ДатаОкончания КОНЕЦ КОНЕЦ Выражение: &Период.ДатаОкончания (2)
Имя: Период, Тип: СтандартныйПериод (1)
(4) rabota_v8
25 декабря 2023 г.
11:04
Предлагаю всегда ставить ДАТАВРЕМЯ(666,6,6,6,6,6), будет эпичнее!
(5) Гений 1С
25 декабря 2023 г.
11:36
Так это и задумано! Если дата окончания не указана или меньше даты начала — логично ставить максимально возможную. Так что тролли могут расслабиться. 😁
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс
Для создания новых тем нужно войти или зарегистрироваться