|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Здравствуйте. С Access 2007 знакома недавно, не судите строго. Ничего похожего здесь найти не смогла. Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети. Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 01:06 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
При редкатировании блокировать таблицу, тогда при попытке изменить запись будет ошибка, которую можно отработать... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 03:30 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AngelinЗдравствуйте. С Access 2007 знакома недавно, не судите строго. Ничего похожего здесь найти не смогла. Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети. Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей? Спасибо. Вы бредите? AngelinДанные блокировать получается. Вот через данные и надо злодействовать. Пиши туды "признак блокировки". Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась". ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 07:20 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AngelinЗадача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму.Открытие формы само по себе есть открытие на редактирование (если иное не установлено свойствами формы - что вряд ли в контексте вопроса). Следовательно, Вы хотите при открытии формы определить, открыта ли она у другого пользователя, и если открыта - то блокировать кнопку. Это так? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 07:52 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
https://support.office.com/ru-ru/article/Свойство-Блокировка-записей-RecordLocks-6ca29bbb-8824-4671-8087-97fe0568019a Свойство блокировка записи - может это нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 08:12 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Главное - не кнопка, а то, что ТС хочет сделать. А что он хочет сделать? Не дать одновременно одну и ту же запись? вроде так? Это можно сделать другими методами, а не блокируя кнопку. Например, через свободную форму. Открыть по кнопке свободную форму для редактирования. Открыть рекордсет. Считать нужную запись. Распихать значения по полям. Закрыть рекордсет. исправить значения. При помощи рекордсета или запроса изменить данные в таблице. Никакого конфликта записей не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 09:00 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
JossА что он хочет сделать?А вот хрен её знает. Может, задача - уведомить пользователя, что другой пользователь находится в режиме редактирования? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 09:20 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Спасибо всем за уделённое внимание. Кнопка запускает макрос с запросом на выбор данных из одной таблицы (по отмеченной галочке) и добавления их в другую таблицу. А хотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 12:45 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AndrFПри редкатировании блокировать таблицу, тогда при попытке изменить запись будет ошибка, которую можно отработать... Как эту ошибку отследить? Если можно напишите небольшой пример, или дайте ссылку где почитать можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 12:52 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Angelinхотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь.Ага... тот самый "другой пользователь" может открыть форму и уйти на обед - и что, все остальные в это время будут курить бамбук? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 12:54 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AkinaAngelinхотелось видеть вместо этого при нажатии кнопки, сообщение о том, что необходимо немного подождать т.к. с этой формой занят другой пользователь.Ага... тот самый "другой пользователь" может открыть форму и уйти на обед - и что, все остальные в это время будут курить бамбук? Это продумала, стоит таймер с обнулением по действию и форма закроется через минуту. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:03 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AkinaAngelinЗадача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму.Открытие формы само по себе есть открытие на редактирование (если иное не установлено свойствами формы - что вряд ли в контексте вопроса). Следовательно, Вы хотите при открытии формы определить, открыта ли она у другого пользователя, и если открыта - то блокировать кнопку. Это так? Да, именно так! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:07 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
JossГлавное - не кнопка, а то, что ТС хочет сделать. А что он хочет сделать? Не дать одновременно одну и ту же запись? вроде так? Это можно сделать другими методами, а не блокируя кнопку. Например, через свободную форму. Открыть по кнопке свободную форму для редактирования. Открыть рекордсет. Считать нужную запись. Распихать значения по полям. Закрыть рекордсет. исправить значения. При помощи рекордсета или запроса изменить данные в таблице. Никакого конфликта записей не будет. Ваша конструкция сложна для меня, возможно ли объяснить на примере, или где мне возможно прочитать об этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:10 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Блокировать по факту ОТКРЫТИЯ формы - как я постарался показать выше, неправильно. А за автозакрытие формы через минуту программист будет убит с особой жестокостью - гарантирую! Лучше подумайте вот в каком направлении: Пользователь открывает форму. Загружает в неё некую запись. Выполняет её редактирование. И жмёт кнопку сохранения. Код проверяет, не изменилась ли запись. Если она всё в том же состоянии - выполняется обновление. Но если кто-то успел её изменить - то оператору сообщается, что "пока Вы тут колупались, данные-то поменялись!"... ну и, наверное, есть смысл показать, что именно изменилось. Пусть принимает решение - записать своё, оставить изменённое другими, или подкорректировать свой вариант с учётом последних изменений. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:14 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Akina, Таймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму. В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:31 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AngelinТаймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму. В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.Ну тогда вообще не вижу проблемы. Смотрите опции рекордсета, там есть DenyWrite. Открытую на редактирование запись никто не изменит. А если DenyRead - то даже и не прочитает. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:35 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
автор...кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ. Занавес. Бурные овации. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:36 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
aleks2AngelinЗдравствуйте. С Access 2007 знакома недавно, не судите строго. Ничего похожего здесь найти не смогла. Задача: Заблокировать кнопку на форме, открытой одним пользователем, когда другой пользователь вносит изменения в эту-же форму. Данные блокировать получается. Работа по локальной сети. Вопрос: Существует ли макрокоманда или какой код надо написать, который поможет отследить действия пользователей? Спасибо. Вы бредите? AngelinДанные блокировать получается. Вот через данные и надо злодействовать. Пиши туды "признак блокировки". Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась". Что за "признак блокировки"? Можно какой-нибудь наглядный пример? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:37 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Akina, Спасибо, попробую разобраться. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:47 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Angelinaleks2пропущено... Вы бредите? пропущено... Вот через данные и надо злодействовать. Пиши туды "признак блокировки". Тока тщательно промедитируй сценарии "забыли снять блокировку или программа кирдыкнулась". Что за "признак блокировки"? Можно какой-нибудь наглядный пример? Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 13:49 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
aleks2Angelinпропущено... Что за "признак блокировки"? Можно какой-нибудь наглядный пример? Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием. Для меня это всё пустые слова, плиз пример кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 14:03 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
Angelinaleks2пропущено... Вставьте в таблицу поле (если очень хочется - создайте таблицу), пишите туды чо хотите при открытии формы и читайте перед открытием. Для меня это всё пустые слова, плиз пример кода. Извиняй, я подобной фигней не маялся и не собираюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 14:20 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
AkinaAngelinТаймер постоянно обнуляется при действии пользователя, а только при бездействии досчитывает до конца и закрывает форму. В форму никаких данных заносить не надо кроме логического поля (галочка), там лист всех продуктов, из которых стоит выбрать те, которые необходимо занести в заказ.Ну тогда вообще не вижу проблемы. Смотрите опции рекордсета, там есть DenyWrite. Открытую на редактирование запись никто не изменит. А если DenyRead - то даже и не прочитает. Прочитала про recordset https://support.office.com/ru-ru/article/Свойство-Набор-записей-Recordset-753d8ef0-6ad9-4731-b116-1788e3276600 Но как применить это в моём случае не понимаю, подскажите. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 14:22 |
|
Мониторинг действий других пользователей.
|
|||
---|---|---|---|
#18+
aleks2Angelinпропущено... Для меня это всё пустые слова, плиз пример кода. Извиняй, я подобной фигней не маялся и не собираюсь. Ну тогда иди... и займись не фигнёй! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2017, 14:27 |
|
|
start [/forum/topic.php?fid=45&fpage=74&tid=1612372]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
57ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 355ms |
total: | 519ms |
0 / 0 |