У різних фірмах бувають різні працівники (добросовісні та >:D)
Вони можуть влізти у старі документи та "поправити" деякі накладні у свою сторону (в сторону постачальників чи покупців) отримавши від цього вигоду.
Пропозиція:
Опції>Права користувачів>Права на документи та довідники> ввести ще одне поле яке заборонить "Додавати", "Правити" та "Видаляти" документи відповідно до встановленої дати.
Наприклад: 31 травня 2012 року
по 31 травня включно можна документи тільки переглядати
з 1 червня можна з документами робити все що передбачено правами на відповідного нористувача
P/S пишу з власного досвіду
Для этих целей вы можете использовать Опции->действия пользователей (предварительно включив слежение за действиями пользователей).
Здесь указывается дата, когда кто-то редактировал любой документ.
Другое дело, что без фильтра (как для архива документов) неудобно что-то выловить в списке действий....
Вы можете работать с ним следующим образом:
- Периодически просматривать что и кто творил с вашими документами. Если дата выходит за необходимый диапазон, бить по попе недобросовестного сотрудника
- Создать пользовательский отчет, который будет самостоятельно отыскивать все, что вам нужно в действиях пользователя (например, отчет выводит список документов, которые были изменены пользователем, если дата изменения и дата документа отличаются более чем на N дней
P.S. С предложениями о доработках программы обращайтесь на поддержку. Сайт для этого не предназначен (см. правила)
Звіт це добре, но все-таки я б віддав перевагу закриттю періду
Як по мені нормальна ідея. Я за.
Хоча деякий функціонал вже і є - заборона змінювати поточну дату.
"Заборона змінювати поточну дату" - это хорошо, но в силу того что товар у нас мелкий, приемка-перещет,перемер длится по одной накладной иногда неделю, а то и больше. Идет постоянное редактирование одного документа. Если закрыть приемщикам доступ к прошлым датам, они навыписывают мне столько маленьких приходиков, что мне придется расширять свой штат еще и на учетчиков документации. Дешевле закрыть глаза на их "мелкие шалости". Но возможность закрыть изменение документов до определенной даты была-бы супер.
Нижеприведенное предлагается не как альтернатива для ваших потребностей, а более как подсобный инструмент....
Вот вам запрос (на производительность не тестировал, может будет работать довольно медленно, а может и нет... не знаю, в общем), можете сделать на основании этого запроса отчет , который выведет вам все действия пользователей и кто эти действия делал (как в ОПции->действия пользователей). Это будет работать, конечно, если вы включили слежение за действиями пользователей.
Подстроить его придется немножко под себя (например, добавить учет периода дат или выводить только измененные / созданные документы, дата создания/изменения которых отличается более чем на N дней). И т.п. и, конечно же, нужно будет создать свой шаблон для отчета.
Детальнее не пишу, т.к. у каждого свои потребности (а они бесконечны..., скорее всего).
--запрос исправлен 21.06.2012
--made by ukrskladzvit@yandex.ru
Select
*
from
S_USERS_LOG L left join S_USERS U on (L.s_user_id=U.num)
left join doc_types dt on (L.doc_type_id=dt.num)
left join params p on ('UsersLogAction_RUS'||cast(L.s_user_action as varchar (1)) =p.name)
P.S. доделывать отчет не буду. Смогу только подсказать некоторые моменты (нужно же всем когда-то начинать осваивать средства программы). Более того на форуме достаточно пользователей, которые подскажут куда и что нужно добавить или изменить
Огромное спасибо, будем пробовать.
Ну что же, если будете пробовать, вот вам практически готовый отчет (вернее, готовый запрос к отчету).
--made by ukrskladzvit@yandex.ru
Select
L.doc_nu as N_DOC
,L.doc_date_dok
,L.s_user_time
,L.s_user_time-L.doc_date_dok as day_change_after_create
,U.u_name
,U.u_surname
,U.u_middlename
,U.u_job
,DT.name
,DT.name_rus
,P.name
,P.param
from
S_USERS_LOG L left join S_USERS U on (L.s_user_id=U.num)
left join doc_types dt on (L.doc_type_id=dt.num)
left join params p on ('UsersLogAction_RUS'||cast(L.s_user_action as varchar (1)) =p.name)
where
((l.s_user_time-L.doc_date_dok)>=10 or (l.s_user_time-L.doc_date_dok)>=10)
and L.doc_date_dok>='#дата_с#'
and L.doc_date_dok<='#дата_по#'
order by
4 desc,5
- Где day_change_after_create - разница в днях между датой в документе и датой редактирования документа
- Вместо чисел 10 в выражении ((l.s_user_time-L.doc_date_dok)>=10 or (l.s_user_time-L.doc_date_dok)>=10) установите какую разницу в днях между созданием документа и его редактированием вы хотите, чтобы вывел отчет (в данный момент, стоит кол-во дней =10, все остальные изменения, где разница в днях менее не выводятся).
- С вопросами сортировки подскажу, остальное попробуйте сделать сами и впечатления отпишите на форуме
P.S. В предыдущем запросе неверно выводил действия пользователей над документами, здесь исправленоЗабыл... укажите как параметр отчета: период дат