powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / дата последнего изменения в таблице
9 сообщений из 9, страница 1 из 1
дата последнего изменения в таблице
    #32365003
vivft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как сделать таблицу, чтобы при изменения информации в строке устанавливалась дата последнего изменения?
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365006
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Только если редактирование идет через форму. Тогда можно воспользоваться AfterUpdate.
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365009
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если adp - триггеры
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365010
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, Саныч, а почему "только если редактирование идет через форму"?
Если редактирование идет програмно - то програмно и записывай дату последнего изменения :)
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365020
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
:^) Таки да. Короче, ответ такой: есть все мыслимые возможности, однако в mdb триггеров нет.
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365029
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть все мыслимые возможности, однако в mdb триггеров нет
Двумя руками за!

Тогда можно воспользоваться AfterUpdate.
Двумя руками против!
Таки лучше использовать BeforeUpdate (записи)
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365030
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ЛохДвумя руками за!
Двумя руками против!
Еще немного рук осталось?

ЛохТаки лучше использовать BeforeUpdate (записи)
А это уже мне интересно. Почему?
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365035
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Использование AfterUpdate - два варианта

1. Вариант номер раз. Запись даты изменения в контрол (может быть скрытый) на форме. Что-нить типа такого:
Код: plaintext
1.
2.
Private Sub Form_AfterUpdate()
    Me![ДатаИзменения] = Now ' или Date() '
End Sub

Недостаток очевиден - сразу после сохранения записи она снова переходит в состояние редактирования. Это, конечно, можно победить с помощью Me.Dirty = False, но это не избавляет от проблемы варианта номер два

2. Вариант номер два. Запись даты изменения через DAO/ADO. Что-нить типа такого:
Код: plaintext
1.
2.
Private Sub Form_AfterUpdate()
    CurrentDb.Execute  "Update Table1 Set [ДатаИзменения]="  & трампампам &  " Where ID="  & Me!ID
End Sub

Проблема в возможной неатомарности. Т.е. запись изменится, сохранится, а вот когда начнется выполнение Form_AfterUpdate - она уже будет заблокирована (например), и информация о дате изменения не запишется.

Если же используем BeforeUpdate - то проблем нет. Что-нить типа такого:
Код: plaintext
1.
2.
Private Sub Form_Before_Update(Cancel As Integer)
    Me![ДатаИзменения] = Date
End Sub

Лишнего состояния редактирования нет. Если запись сохранится - то вместе с датой. Если нет (по каким-либо причинам) - то и дата не будет затронута.

Вот.

Кто здесь?
...
Рейтинг: 0 / 0
дата последнего изменения в таблице
    #32365037
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Угу. Благодарен.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / дата последнего изменения в таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]