Можно ли такое организовать?

1. Shining_ninja 2173 19.02.12 16:38 Сейчас в теме
Задача:
Есть десять пользователей, они за день создают кучу документов (их редактируют, проводят, снова редактируют и т.д.), но после рабочего дня (+ еще несколько часов), должен возникать запрет на редактирование и проведение документов (можно, только снять проведение), то есть скажем:
Пользователь А - создал за день 10 документов, с ними что-то делал, вернулся на работу в 7-00 следующего дня, а эти документы не может отредактировать, а может снять только проведение и все.

1С крутится на сервере, пользователи все подключены к серверу. Возникает мысль создать там, фоновое задание, которое будет запускаться, скажем в 23.01 и ставить запрет.
Вообще такое возможно создать средствами 1С (без запуска 1С)?

Просто, конечно можно добавить код при запуске, но это может понизить производительность, хотя если других возможностей не найдется, придется к нему прибегнуть.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. sdpj 44 19.02.12 18:08 Сейчас в теме
(1) Shining ninja,
А зачем оставлять возможность отмены проведения для этих документов?
3. Shining_ninja 2173 19.02.12 18:44 Сейчас в теме
(2) jims
Так хочет начальство)))
6. shatshat 19.02.12 20:35 Сейчас в теме
(1) Shining ninja,

вполне можно обойтись без фоновых заданий

с учетом вариантов (4) jims, (5) ber84,

реквизит ДатаСоздания прямо в документ. заполняется для нового, никогда больше не меняется, на форме не виден
ПриСозданииНаСервере() проверять и блокировать (ТолькоПросмотр) несегодняшние документы.
блокируем и проведенные и непроведенные доки ( иначе снял проведение - и редактируй ). если это не устраивает, и пользователи могут оставлять проведение "на завтра" - усугубляем задачу

булевый реквизит в той же шапке, который устанавливается в истина перед первым проведением и тогда запрет на редактирование несегодняшних+однажды_уже_проведенных (этот самый флажок) - чтоб не химичили с распроведением

не знаю, возможно ли менять реквизит документа именно непосредственно перед проведением (не просто запись а именно с проведением), если нет - в проведении выставляем флажок для документа в независимом (движения не должны откатываться распроведением) регистре сведений

варьируйте )
4. sdpj 44 19.02.12 19:07 Сейчас в теме
Можно попробовать сделать регистр сведений, в котором хранить дату создания документов (т.к. она может отличаться от даты документа), по которой определять в подписке на событие ПередЗаписью документа - можно ли сохранять изменения.
5. ber84 19.02.12 20:11 Сейчас в теме
Создать реквизит у документа с типом "Булево", фоновым заданием у документов этого типа после 23х часов заполнять значением Истина, в процедуре ПередЗаписью() у документа, сделать проверку если Истина, то не записывать.
7. Shining_ninja 2173 20.02.12 20:10 Сейчас в теме
Документов много, пользователей порядка 10, проверки при создании и т.д. на Дату, будут подтормаживать процесс или все также останется в плане производительности?
8. Shining_ninja 2173 24.02.12 16:45 Сейчас в теме
А вообще реально ли создать какие-то действия с конфигурацией из фоновых заданий без запуска конфигурации.
Скажем изменить реквизит у документа?
9. Dens11 27.02.12 21:59 Сейчас в теме
У нас реализовано так:
в справочнике пользователи добавлен реквизит количество дней (число), далее подписка на событие проведение документа.
Пример - у пользователя стоит 0 т.е. редактирование документов только текущим днем то проверяем так текущая дата начало дня минус количество дней умноженное на количество секунд в дне и вот если дата документа меньше этой даты то отказ при проведнии документа. НО!!! дату документа надо брать обязательно надо вот так Ссылка.Дата а не Объект.Дата ОЧЕНЬ ВАЖНО!!
если брать дату из объекта то получается следующая ситуация, что берем меняем дату документа на сегодня и делаем отмену проведения документа.
И таким образом можно контролировать число дней доступа на изменение документов у всех пользователей, в том числе и с полными правами.
14. Shining_ninja 2173 29.02.12 20:35 Сейчас в теме
(9) Dens11
Твой вариант, больше всех понравился
10. kykysk 28.02.12 10:44 Сейчас в теме
Програмно написать дольно просто на любой документ в процедуре при открытии
11. Dens11 28.02.12 12:19 Сейчас в теме
подписки на событие "при открытии" НЕТ.Да и изменение модуля объекта влечет за собой затруднения при обновлении, а таким способом как я описал выше можно сразу много документов охватиь и меньше Гемо...я при изменении релиза.
12. wwizard 7 28.02.12 19:16 Сейчас в теме
У нас реализовано так:
в справочнике пользователи добавлен реквизит количество дней (число)

- а как это добавить?
13. Dens11 29.02.12 01:13 Сейчас в теме
в конфигураторе открываешь справочник Пользователи в реквизитах добавляешь новый с наименованием например "КоличествоДнейДоступа" и ставишь тип число. Потом размещаешь на форме это поле. Далее новая подписка на событие с проверкой.
Оставьте свое сообщение

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