|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
Хорошего дня всем. :) Извините, если задаю дурацкий вопрос, но что то в голову ничего не идёт... Дано - есть база данных, все таблицы которой, кроме одной, будут использоваться пользователями только для просмотра. И нужно сделать так, чтобы изменения, которые пользователь вносит в эту единственную модифицируемую таблицу не были видны другим пользователям по ходу работы с базой и этой таблицей. По сути, меняется там одно единственное поле Selected (.T. или .F.) в зависимости от того, подходит строка под заданные условия поиска или нет и его значения нужны только конкретному пользователю в его сеансе работы. Есть ли возможность каким-нибудь образом обойтись без Local View или select'а в курсор с параметром readwrite? Так как на таблицу навешано много индексов и строить их каждый раз на старте для поднятого View или сформированного Cursor не очень хочется... Извините за ламерство и заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 13:28 |
|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
Например табличная буфферизация - при входе открыл таблицу, при выходе сбросил все изменения... Только как быть с конфликтами когда одну запись изменяют несколько юзеров? В общем - расказывайте зачем такой изврат ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 14:29 |
|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
BurnНапример табличная буфферизация - при входе открыл таблицу, при выходе сбросил все изменения... Только как быть с конфликтами когда одну запись изменяют несколько юзеров? Ну собственно в том то и дело... Да и опять-таки, отметки одного пользователя при одновременной работе с таблице будут видны и другому пользователю... BurnВ общем - расказывайте зачем такой изврат Изврат из-за того, что изначально сделал фильтрацию данных в таблице (для функции поиска) через фильтр индекса (в многих индексах в фильтре прописано то самое selected). Сделать поиск на SQL запросе не получилось, так как полей для поиска очень большое количество и если пользователи выбирают поиск по многим условиям, то Fox ругается на очень длинный текст запроса... Проще говоря Selected = .T. значит, что строка удовлетворяет условиям поиска, .F. - нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 14:46 |
|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
[quot Ulrich22Да и опять-таки, отметки одного пользователя при одновременной работе с таблице будут видны и другому пользователю...[/quot] При 5-й буфферизации никаих изменений в исходную таблицу не будет внесено пока не будет выполнена функция TableUpdate() а значит и никакой другой юзер никаких изменений не заметит ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 15:56 |
|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
BurnUlrich22 Да и опять-таки, отметки одного пользователя при одновременной работе с таблице будут видны и другому пользователю... При 5-й буфферизации никаих изменений в исходную таблицу не будет внесено пока не будет выполнена функция TableUpdate() а значит и никакой другой юзер никаких изменений не заметит Burn, большое спасибо за помощь. Буду пробовать. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 17:33 |
|
Вопрос по многопользовательскому доступу
|
|||
---|---|---|---|
#18+
Вот здесь описан вариант решения проблемы установки метки записи для одного пользователя. Там же ниже описаны и другие варианты решения задачи. http://forum.foxclub.ru/read.php?29,382911,382936#msg-382936 Идея в том, что для хранения метки создается отдельный курсор, существующий только у данного клиента. Исходная таблица вообще никак не модифицируется. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2009, 20:49 |
|
|
start [/forum/topic.php?fid=41&msg=36007827&tid=1586401]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
604ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 342ms |
total: | 1046ms |
0 / 0 |