Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Мониторинг действий других пользователей. / 25 сообщений из 49, страница 1 из 2
26.05.2017, 01:06:52
    #39460053
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Здравствуйте.
С Access 2007 знакома недавно, не судите строго.
Ничего похожего здесь найти не смогла.
Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети.
Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей?
Спасибо.
...
Рейтинг: 0 / 0
26.05.2017, 03:30:12
    #39460065
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
При редкатировании блокировать таблицу, тогда при попытке изменить запись будет ошибка, которую можно отработать...
...
Рейтинг: 0 / 0
26.05.2017, 07:20:19
    #39460086
aleks2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AngelinЗдравствуйте.
С Access 2007 знакома недавно, не судите строго.
Ничего похожего здесь найти не смогла.
Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети.
Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей?
Спасибо.

Вы бредите?

AngelinДанные блокировать получается.

Вот через данные и надо злодействовать.
Пиши туды "признак блокировки".
Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась".
...
Рейтинг: 0 / 0
26.05.2017, 07:52:45
    #39460093
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AngelinЗадача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму.Открытие формы само по себе есть открытие на редактирование (если иное не установлено свойствами формы - что вряд ли в контексте вопроса). Следовательно, Вы хотите при открытии формы определить, открыта ли она у другого пользователя, и если открыта - то блокировать кнопку. Это так?
...
Рейтинг: 0 / 0
26.05.2017, 08:12:49
    #39460098
netfrog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
...
Рейтинг: 0 / 0
26.05.2017, 09:00:55
    #39460126
Joss
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Главное - не кнопка, а то, что ТС хочет сделать. А что он хочет сделать? Не дать одновременно одну и ту же запись? вроде так? Это можно сделать другими методами, а не блокируя кнопку. Например, через свободную форму. Открыть по кнопке свободную форму для редактирования. Открыть рекордсет. Считать нужную запись. Распихать значения по полям. Закрыть рекордсет. исправить значения. При помощи рекордсета или запроса изменить данные в таблице. Никакого конфликта записей не будет.
...
Рейтинг: 0 / 0
26.05.2017, 09:20:58
    #39460139
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
JossА что он хочет сделать?А вот хрен её знает. Может, задача - уведомить пользователя, что другой пользователь находится в режиме редактирования?
...
Рейтинг: 0 / 0
26.05.2017, 12:45:24
    #39460344
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Спасибо всем за уделённое внимание.

Кнопка запускает макрос с запросом на выбор данных из одной таблицы (по отмеченной галочке) и добавления их в другую таблицу.
А хотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь.
...
Рейтинг: 0 / 0
26.05.2017, 12:52:39
    #39460359
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AndrFПри редкатировании блокировать таблицу, тогда при попытке изменить запись будет ошибка, которую можно отработать...

Как эту ошибку отследить?
Если можно напишите небольшой пример, или дайте ссылку где почитать можно.
...
Рейтинг: 0 / 0
26.05.2017, 12:54:24
    #39460363
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Angelinхотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь.Ага... тот самый "другой пользователь" может открыть форму и уйти на обед - и что, все остальные в это время будут курить бамбук?
...
Рейтинг: 0 / 0
26.05.2017, 13:03:48
    #39460376
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AkinaAngelinхотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь.Ага... тот самый "другой пользователь" может открыть форму и уйти на обед - и что, все остальные в это время будут курить бамбук?

Это продумала, стоит таймер с обнулением по действию и форма закроется через минуту.
...
Рейтинг: 0 / 0
26.05.2017, 13:07:25
    #39460383
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AkinaAngelinЗадача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму.Открытие формы само по себе есть открытие на редактирование (если иное не установлено свойствами формы - что вряд ли в контексте вопроса). Следовательно, Вы хотите при открытии формы определить, открыта ли она у другого пользователя, и если открыта - то блокировать кнопку. Это так?

Да, именно так!
...
Рейтинг: 0 / 0
26.05.2017, 13:10:20
    #39460384
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
JossГлавное - не кнопка, а то, что ТС хочет сделать. А что он хочет сделать? Не дать одновременно одну и ту же запись? вроде так? Это можно сделать другими методами, а не блокируя кнопку. Например, через свободную форму. Открыть по кнопке свободную форму для редактирования. Открыть рекордсет. Считать нужную запись. Распихать значения по полям. Закрыть рекордсет. исправить значения. При помощи рекордсета или запроса изменить данные в таблице. Никакого конфликта записей не будет.

Ваша конструкция сложна для меня, возможно ли объяснить на примере, или где мне возможно прочитать об этом.
...
Рейтинг: 0 / 0
26.05.2017, 13:14:13
    #39460390
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Блокировать по факту ОТКРЫТИЯ формы - как я постарался показать выше, неправильно. А за автозакрытие формы через минуту программист будет убит с особой жестокостью - гарантирую!

Лучше подумайте вот в каком направлении:

Пользователь открывает форму. Загружает в неё некую запись. Выполняет её редактирование. И жмёт кнопку сохранения. Код проверяет, не изменилась ли запись. Если она всё в том же состоянии - выполняется обновление. Но если кто-то успел её изменить - то оператору сообщается, что "пока Вы тут колупались, данные-то поменялись!"... ну и, наверное, есть смысл показать, что именно изменилось. Пусть принимает решение - записать своё, оставить изменённое другими, или подкорректировать свой вариант с учётом последних изменений.
...
Рейтинг: 0 / 0
26.05.2017, 13:31:41
    #39460403
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Akina,

Таймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму.

В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.
...
Рейтинг: 0 / 0
26.05.2017, 13:35:07
    #39460406
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AngelinТаймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму.

В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.Ну тогда вообще не вижу проблемы. Смотрите опции рекордсета, там есть DenyWrite. Открытую на редактирование запись никто не изменит. А если DenyRead - то даже и не прочитает.
...
Рейтинг: 0 / 0
26.05.2017, 13:36:23
    #39460407
Predeclared
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
автор...кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.
Занавес.
Бурные овации.
:)
...
Рейтинг: 0 / 0
26.05.2017, 13:37:54
    #39460411
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
aleks2AngelinЗдравствуйте.
С Access 2007 знакома недавно, не судите строго.
Ничего похожего здесь найти не смогла.
Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети.
Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей?
Спасибо.

Вы бредите?

AngelinДанные блокировать получается.

Вот через данные и надо злодействовать.
Пиши туды "признак блокировки".
Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась".

Что за "признак блокировки"?
Можно какой-нибудь наглядный пример?
...
Рейтинг: 0 / 0
26.05.2017, 13:47:26
    #39460418
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Akina,

Спасибо, попробую разобраться.
...
Рейтинг: 0 / 0
26.05.2017, 13:49:34
    #39460419
aleks2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Angelinaleks2пропущено...


Вы бредите?

пропущено...


Вот через данные и надо злодействовать.
Пиши туды "признак блокировки".
Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась".

Что за "признак блокировки"?
Можно какой-нибудь наглядный пример?

Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием.
...
Рейтинг: 0 / 0
26.05.2017, 14:03:24
    #39460436
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
aleks2Angelinпропущено...


Что за "признак блокировки"?
Можно какой-нибудь наглядный пример?

Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием.
Для меня это всё пустые слова, плиз пример кода.
...
Рейтинг: 0 / 0
26.05.2017, 14:20:33
    #39460451
aleks2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Angelinaleks2пропущено...


Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием.
Для меня это всё пустые слова, плиз пример кода.
Извиняй, я подобной фигней не маялся и не собираюсь.
...
Рейтинг: 0 / 0
26.05.2017, 14:22:34
    #39460453
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
AkinaAngelinТаймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму.

В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.Ну тогда вообще не вижу проблемы. Смотрите опции рекордсета, там есть DenyWrite. Открытую на редактирование запись никто не изменит. А если DenyRead - то даже и не прочитает.
Прочитала про recordset

https://support.office.com/ru-ru/article/Свойство-Набор-записей-Recordset-753d8ef0-6ad9-4731-b116-1788e3276600

Но как применить это в моём случае не понимаю, подскажите.
...
Рейтинг: 0 / 0
26.05.2017, 14:27:12
    #39460458
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
aleks2Angelinпропущено...

Для меня это всё пустые слова, плиз пример кода.
Извиняй, я подобной фигней не маялся и не собираюсь.
Ну тогда иди... и займись не фигнёй!
...
Рейтинг: 0 / 0
26.05.2017, 16:22:14
    #39460556
Angelin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мониторинг действий других пользователей.
Ребята, с пониманием темы, подскажите пожалуйста !
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Мониторинг действий других пользователей. / 25 сообщений из 49, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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