Проблема: на данный момент при редактировании документа (например, добавлении основания), чья дата завершения меньше, чем текущая дата на сервере, система отображает ошибку "Дата завершения меньше текущей даты" и не позволяет сохранять изменения. В связи с этим необходимо отключить проверку условия, что дата завершения должна быть больше текущей даты в случае, если это поле не менялось.
Сопроводительная документация:
Используется: Документооборот -> Карточка РКК (документы со статусом "Черновик" и "Отклонен").
Решение: необходимо проводить валидацию только измененных полей документа отдельно по следующим группам:
Краткое содержание;
Тип документа;
Дата регистрации + Длительность / Дата завершения;
Основание;
Списать в (если поле обязательно);
Определить исполнителя (если поле обязательно).
При этом валидация должна происходить на стороне сервера.
Валидация при сохранении документа с измененными полями. Необходимо запрещать сохранять изменения в карточке РКК и отображать ошибку со следующим текстом в зависимости от поля:
не заполнено поле "Краткое содержание":
Введите название документа
не выбрано значение в комбобоксе "Тип документа":
Выберите тип документа. Если список пуст, обратитесь к методологу
для способа ввода срока "Длительность" не заполнено значение соответствующего поля РКК:
Введите длительность
для способа ввода срока "Дата завершения" (только если значение соответствующего поля РКК изменено таким образом, что является меньше значения текущей даты на сервере):
Дата завершения меньше текущей даты
Примечание 1
Если дата, указанная в компоненте "Дата завершения" не была изменена, необходимо позволять сохранять изменения в карточке РКК, а также отсылать документ на регистрацию в случае, даже если эта дата меньше, чем текущая дата на сервере.
Примечание 2
Изменения должны учитываться лишь в случае, если значение поля до момента вызова валидации отличается от сохраняемого.
Примечание 3
Необходимо сохранить функционал компонентов "Длительность", "Дата регистрации" и "Дата завершения", а именно:
В случае ввода неправильного формата даты (несуществующая дата) и/или длительности (отрицательное число / 0 / символы вместо цифр) необходимо подсвечивать поле красным цветом и отображать ошибку с текстом, согласно изменяемому компоненту.
Валидация при отправке на регистрацию документа с измененными полями. Необходимо запрещать сохранять изменения в карточке РКК, а также отправлять документ на регистрацию и отображать ошибку со следующим текстом в зависимости от поля:
те же ошибки, что и при сохранении изменений;
не выбрано значение в выпадающем списке "Списать в" (только при включенной настройке "Требовать указание дела" в Конфигураторе):
Данный тип документа требует указание дела. Выберите его в карточке и отправьте повторно. Если список пуст, обратитесь к методологу
не выбран пользователь в диалоге выбора пользователей "Определить исполнителя" (только при включенной настройке "Требовать ввода исполнителя" в Конфигураторе):
Данный тип документа требует определения исполнителя. Выберите его в карточке и отправьте повторно
Примечание
В случае отображения последних двух ошибок необходимо отображать их в ходе выполнения документа в столбце "Комментарии" процесса "Отказ в регистрации".
Пример ожидаемого результата
Создать черновик документа_1.
Создать черновик документа_2.
Перевести время на сервере таким образом, что дата завершения документа_1 была меньше, т.е. документ_1 стал просроченным.
Авторизоваться с логином и паролем сотрудника канцелярии.
Открыть карточку РКК документа_1.
В поле "Основание" выбрать документ_2.
Сохранить изменения.
Документ_1 успешно сохранен, в качестве основания данного документа указан документ_2.