|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Коллеги, добрый день! Есть задача - отслеживать изменение данных в таблице, т.е если изменены были несколько полей таблицы, то и в ЛОГ должны попасть эти данные несколькими полями. В таблице 50 столбцов. Возможные столбцы таблицы ЛОГА: Код юзера Дата изменения Столбец Тип изменения старое значение новое значение Как это можно организовать? Буду рад любой помощи, заранее спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2016, 11:35 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
опечатался) Есть задача - отслеживать изменение данных в таблице, т.е если изменены были несколько полей таблицы, то и в ЛОГ должны попасть эти данные несколькими СТРОКАМИ. В таблице 50 столбцов. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2016, 11:39 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
-SWAN-, для Access 2010 и выше появились макросы данных - Работа с макросами и выражениями в Access 2010 для более старых версий - Злоумышленник. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2016, 11:45 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, спасибо! Буду копать) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2016, 13:55 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, странно, не могу у себя в Accesse 2010 найти макросы данных( ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2016, 15:29 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
-SWAN-, действительно странно. До этих макросов можно дойти, по крайней мере, двумя способами. 1. Открываешь таблицу в конструкторе, вкладка "Работа с таблицами. Конструктор.Создать макросы данных" 2. Открываешь таблицу, вкладка "Работа с таблицами. Таблица." тут кнопки с макросами данных. Небольшой пример логирования. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2016, 19:58 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, спасибо, прям то что надо мне) Только я не понимаю, где же увидеть этот макрос данных в твоей базе? куда он спрятан?))) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 09:55 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, нашел) спасибо еще раз) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 09:58 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, еще вопрос - как добавить в лог название изменяемого столбца (поля) ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 10:12 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, и еще вопрос, как в лог можно добавить Имя Юзера из постоянно открытой в БД формы? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 10:20 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
-SWAN-, пока ответить не могу, нет по рукой Access 2010. Только позже. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 11:31 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург-SWAN-, пока ответить не могу, нет по рукой Access 2010. Только позже. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2016, 17:23 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
ПанургПанург-SWAN-, пока ответить не могу, нет по рукой Access 2010. Только позже. эх, немного не то( у меня 50 столбцов в таблице и желательно сделать лог по всем. В таблице Лога есть поле "название столбца" - вот туда мне бы и хотелось добавлять данные "столбец1" "столбец2" и тд. И есть еще постоянно открытая скрытая форма в которой хранится ИмяЮзера, который открыл БД, вот ее я тоже хочу добавить в лог, чтобы знать кто изменил\удалил данные. Но все-равно, спасибо за помощь! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 12:29 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
-SWAN-, ну насколько мне помнится в таблицу добавляется и название поля и название таблицы где произошло изменение. Там единственно только пользователь, который внёс изменения не доделан. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 12:54 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
ПанургТам единственно только пользователь, который внёс изменения не доделан.А не доделан потому, что у макросов нет способа получить имя пользователя (или они мне не известны пока), ни у системы, ни у БД, и с VBA контакт практически отсутствует. Если только попробовать передавать через TempVars... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 13:00 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, Элементарно макросы могут получать что угодно. Там можно использовать функции из общих модулей. У меня макросы пишут полную информацию о пользователе, базе, режиме базы и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 13:48 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Совет по макросам, которые логируют изменения: в самом начале проверяйте через функцию состояние переменной, которая "включает" макросы (просто собственная глобальная переменная). Это пригодится для массового апдейта больших таблиц - при выключении скорость возрастает в несколько раз и не пишется ненужная информация. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 13:51 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
MrShin, а ты пробовал увидеть эти функции из макросов в Access 2010? У меня из макросов (и не только) видны только общие функции да и то не все. умные все стали... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2016, 14:05 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, Не понял, в чем проблема с функциями. Естественно, пробовал, все это работает на многих серьезных проектах. Вот, пожалуйста, ниже скришот типичного Before Change дата макро, который выззывает функции. Вот сами функции: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40.
Хочу обратить внимание. что модуль с этими функциями должен быть продублирован в обеих частях разделенной базы, т.к. дата макро "видят" функции только из текущей Codebase, т.е. если эти функции находятся только в бэкэнде, то макросы будут работать нормально только если открыть бэкэнд и там попробовать поменять данные. При редактировании из фронтенда функция должна быть объявлена как глобальная в самом фронтэнде. Раньше я выносил функции для работы с датамакро в отдельную библиотеку и подключал ее в обеим частям базы данных, но потом просто стал копировать, т.к. редактировать данный непосредственно из бэкэнда приходится довольно редко, и то только разработчику. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2016, 18:00 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
MrShin...Не понял, в чем проблема с функциями...С макросами не работал и не обращал внимания, на то, что у меня в Access 2010 невидны из конструктора макросов многие функции VBA и все пользовательские. Возможно, это система безопасности шалит... А может установка косячная... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2016, 08:46 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Панург, База должна быть в Trusted каталоге и подключены нужные референсы. Ни один из моих многих клиентов не жаловался на проблемы с макросами. Если есть пример, могу попробовать запустить его у себя или выложить свой заведомо рабочий пример. Если не заработает, то проблемы с установкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2016, 09:28 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
MrShinБаза должна быть в Trusted каталогеДа, дело, по-видимому, в этом. Чуть позже проверю. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2016, 10:31 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
Доброе утро, у меня при попытки сохранить макрос выдает ошибку компиляции, говорит ошибка синтаксиса в модуле VB, не нравится ему Updated('Text_'), подскажите в чем может быть проблема, как ее решить? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 12:30 |
|
Логирование изменений в таблице Access 2010
|
|||
---|---|---|---|
#18+
AsyaL, а где ты используешь Updated - в макросе или коде VBA? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2016, 14:07 |
|
|
start [/forum/topic.php?fid=45&msg=39264665&tid=1613305]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 138ms |
0 / 0 |