Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.08.2013, 17:16   #41
duh_si
Форумчанин
 
Регистрация: 18.04.2013
Сообщений: 118
По умолчанию

Тут подумал на досуге, может бог с ним с этим полем № Заказа , вывести в новое поле первичный ключ таблицы Заказ и брать его т.е записывать в ЖурналИзменений,
Вопрос остался: как из этого поля взять значение которое там есть, и поместить его сюда !НомерЗаписи = ?
duh_si вне форума Ответить с цитированием
Старый 21.08.2013, 10:31   #42
duh_si
Форумчанин
 
Регистрация: 18.04.2013
Сообщений: 118
По умолчанию

Цитата:
Сообщение от duh_si Посмотреть сообщение
Вопрос остался: как из этого поля взять значение которое там есть, и поместить его сюда !НомерЗаписи = ?
С этим разобрался

Да в принципе и все остальное сделал....

Myhaylo Спасибо большое за помощь и подсказки...Хоть вы на мои бредовые вопросы отвечаете ...Если бы не количество прсмотров этой темы, подумал бы что тут кроме нас и нет ни кого( в Дискуссии учавствовать народ не горит желанием )

Последний раз редактировалось duh_si; 21.08.2013 в 10:37.
duh_si вне форума Ответить с цитированием
Старый 28.04.2017, 17:40   #43
bormanpb
Новичок
Джуниор
 
Регистрация: 01.04.2015
Сообщений: 1
По умолчанию

Я вот так логирование в Access 2010 (триггер-лайт) сделал себе, без учёта удаления:

Код:
'Узнаём имя пользователя
Function myUser() As String
Dim si
Set si = CreateObject("WScript.Network")
myUser = si.UserName
Set si = Nothing
End Function

'Узнаём имя компьютера
Function MyComp() As String
Dim si
Set si = CreateObject("WScript.Network")
MyComp = si.ComputerName
Set si = Nothing
End Function

Public Sub Trigger_log()
'**********Начало логера*********
Dim lo As DAO.Recordset
Dim ct As Control, ov As String, nv As String
Set lo = CurrentDb.OpenRecordset("log", dbOpenDynaset, dbSeeChanges) 'Таблица, куда пишем лог
Set ct = Screen.ActiveControl
On Error Resume Next
ov = ct.OldValue
nv = ct.Value
Obj = Screen.ActiveControl.Name
fo = Screen.ActiveForm.Name
i = Screen.ActiveForm![id] 'чтобы писалась в лог id записи из счетчика главной таблицы, вывожу это поле в форму и скрываю его
lo.AddNew
lo!dttm = Now()
lo!usr_nm = myUser()
lo!comp_nm = MyComp()
lo!field_nm = Obj
lo!form_nm = fo
lo!old_txt = ov
lo!new_txt = nv
lo!err_id = i
lo.Update
lo.Close
Set lo = Nothing
'**********Конец логера**********
End Sub
а вызывается эта процедура по действию после обновления (прописывается в каждом поле). Пример:
Код:
Private Sub status_AfterUpdate()
Call Trigger_log
End Sub

Последний раз редактировалось bormanpb; 28.04.2017 в 18:11.
bormanpb вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Access 2010 Alex A Microsoft Office Access 4 19.07.2013 15:09
Delphi mysql trigger - как правильно писать? Прошу пример iskurt Помощь студентам 7 03.06.2012 19:03
VB 2010 + Access 2010 iEnRJ Помощь студентам 1 03.03.2012 14:28
Из Access 2010 в Access 2007 Radzhab Microsoft Office Access 3 10.05.2011 22:13
Mysql + trigger crazy horse SQL, базы данных 1 17.03.2010 09:34