УТ 11.3.1: создание и проведение документов будущей датой

1. skilster 46 26.01.17 14:54 Сейчас в теме
Как запретить создание и проведение документов будущей датой? Свободно проводятся счета с датой 31.05.2017 и далее. Как это запретить?

Версия УТ - 11.3.1.109
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. h00k 50 05.02.17 22:05 Сейчас в теме
(1)
Свободно проводятся счета с датой 31.05.2017 и далее. Как это запретить?

Создать подписку на событие ПриЗаписи счёта и заказа, в ней поставить проверку если текущая дата сеанса меньше даты документа, то выдать сообщение пользователю и прервать операцию.

В принципе, если нет желания включать в конфигурации возможность изменения, то можно сделать и через расширение конфигурации.
2. Adilgeriy 25 26.01.17 23:00 Сейчас в теме
запрети пользователям поле дата. в дополнительных настройках вроде. отбери права на изменение даты в системе- Гость точно не может этого сделать. и поставь пароль на биос
3. naa1c 79 27.01.17 13:43 Сейчас в теме
подписку на события с проверкой по нужным условиям
корум; h00k; roman77; +3 Ответить
4. Sokar 27.01.17 13:57 Сейчас в теме
через права пользователя - запретить неоперативное проведение документов
5. JohnGalt 57 31.01.17 18:36 Сейчас в теме
Если запретить неоперативное проведение, то запрет будет и для документов прошлого периода. Для указанной конфигурации проще добавить для всех документов подписку на событие и там сделать проверку на дату с отказом записи, если дата превышает текущую.
6. onetone 05.02.17 16:33 Сейчас в теме
Почему нельзя просто сделать такое условие?
Объект.Дата <= ТекущаяДата();
Хоть в подписке, хоть в нужных документах?
8. h00k 50 05.02.17 22:13 Сейчас в теме
(6)
Почему нельзя просто сделать такое условие?
Объект.Дата <= ТекущаяДата();

Потому что задача обратная, да и стоит учитывать, что на сервере дата-время может отличатся от даты и времени на клиенте.

(6)
Хоть в подписке, хоть в нужных документах?

За попытку вписать такие проверки в модули документов - руки отрывать надо.
9. onetone 05.02.17 22:51 Сейчас в теме
(8)
Почему нельзя просто сделать такое условие?
Объект.Дата <= ТекущаяДата();

Потому что задача обратная, да и стоит учитывать, что на сервере дата-время может отличатся от даты и времени на клиенте.


Для этого есть ТекущаяДатаСеанса()



(8)
Хоть в подписке, хоть в нужных документах?

За попытку вписать такие проверки в модули документов - руки отрывать надо.


Где написано что все условия при проведении документа нужно выносить в подписку на событие?
10. h00k 50 05.02.17 23:34 Сейчас в теме
(9)
Для этого есть ТекущаяДатаСеанса()

Есть, в расширении в клиентской процедуре обработки события перед записью именно её и надо использовать.

(9)
Где написано что все условия при проведении документа нужно выносить в подписку на событие

Очевидные вещи не требуют отдельного уточнения. Изучайте рекомендации и стандартные практики по доработке, тогда подобные вопросы даже не возникнут. Либо подписка на событие, либо расширение - остальные варианты создадут не нужные сложности при обновлении.
11. onetone 06.02.17 00:12 Сейчас в теме
(10)
Где написано что все условия при проведении документа нужно выносить в подписку на событие

Очевидные вещи не требуют отдельного уточнения. Изучайте рекомендации и стандартные практики по доработке, тогда подобные вопросы даже не возникнут. Либо подписка на событие, либо расширение - остальные варианты создадут не нужные сложности при обновлении.


Не хочется с Вами спорить, Ваши утверждения верны или важны(как Вам больше нравится) в том случае, если это мелкая доработка в типовой конфе, а если это в корне переписанная типовая конфигурация, то расширения или подписку использовать здесь не обязательно. А введу того что речь идет о ут 11, думаю она изрядно дописано.

P.S. Зачем умничать про "хорошие привычки" если это не касается вопроса ТС.
12. BudkoT 13.02.17 19:37 Сейчас в теме
(11)потому что есть стандарты разработки, а все остальное говнокод. И предлагать в качестве решения говнокод - это моветон, о чем и написал иносказательно товарищ Андрей
13. onetone 13.02.17 19:48 Сейчас в теме
(12) Мне кажется данный вопрос уже закрыли.
И к решению вопроса ТС это не относится.
Дальше флудить смысла нет.
14. user754006 23.01.20 12:47 Сейчас в теме
Режим проведения в метаданных документа поставить в режим "Разрешить", после этого 1ска, не даст проводить документ, если дата больше текущего дня.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот