с некоторого времени в конфе стало возможным отправить в отпуск сотрудника, который уже находится в отпуске. оформили документ 23.07 на отпуск сотрудника с 1 по 14 августа, потом оформили документ 24.07 на отпуск этого же сотрудника с 6 по 20 августа и система без предупреждения об ошибке его дает провести.
кусок запроса где проверяется только дата начала отпуска и дата начала состояния сотрудника:
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК ИмеющиесяСостояния
| ПО ТЧРаботникиОрганизации.ДатаНачала = ИмеющиесяСостояния.Период
| И ТЧРаботникиОрганизации.Ссылка <> ИмеющиесяСостояния.Регистратор
| И ТЧРаботникиОрганизации.Сотрудник = ИмеющиесяСостояния.Сотрудник
может я что упустил в действующем законодательстве и так теперь можно?
(0) какой документ? кадровый? всегда так было, по крайней мере n-лет, а для расчетных есть - "Контролировать пересечение периодов начислений, регистрирующих норму времени", для вытесняющих/вытесняемых ВР
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК ИмеющиесяСостояния
ПО ТЧРаботникиОрганизации.Ссылка <> ИмеющиесяСостояния.Регистратор
И ТЧРаботникиОрганизации.Сотрудник = ИмеющиесяСостояния.Сотрудник
И ((ТЧРаботникиОрганизации.ДатаНачала МЕЖДУ ИмеющиесяСостояния.Период И ИмеющиесяСостояния.ПериодЗавершения)
ИЛИ (ТЧРаботникиОрганизации.ДатаОкончания МЕЖДУ ИмеющиесяСостояния.Период И ИмеющиесяСостояния.ПериодЗавершения))
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший