Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
МНОГОПОЛЬЗОВАТЕЛЬСКИЕ ПРИЛОЖЕНИЯ И КУРСОР АДАПТЕР
|
|||
|---|---|---|---|
|
#18+
ВСЕМ ДОБРЫЙ ДЕНЬ! ЕСТЬ ПРОБЛЕММА ПРИ МНОГОПОЛЬЗОВАТЕЛЬСКОЙ РАБОТЕ C INTERBASE (И НАВЕРНОЕ С ДРУГИМИ БАЗАМИ!!!) C ПРИМЕНЕНИЕМ АДАПТЕРА КУРСОРА. КОГДА В VFP6 РАБОТАЕШЬ С ПРОВАИДЕРОМ ПРИ КОРРЕКТИРОВКЕ ЗАПИСИ ОДНИМ ПОЛЬЗОВАТЕЛЕМ, ДРУГОЙ (ЕСЛИ ОН ЗАГРУЗИЛ RECORDSET ДО ИЗМЕНЕНИЯ ПЕРВЫМ ПОЛЬЗОВАТЕЛЕМ) МОЖЕТ ПРОСТО ОПРЕДЕЛИТЬ ЧТО ЗАПИСЬ УЖЕ ОТКОРРЕКТИРОВАНА: VERR=0 ON ERROR VERR=1 RECORDSET.UPDATE ON ERROR IF VERR=1 * СООБЩЕНИЕ RECORDSET.REQUERY ENDIF ЕСЛИ ЖЕ ВТОРОЙ КЛИЕНТ ЗАГРУЗИЛ RECORDSET С ИСПОЛЬЗОВАНИЕМ КУРСОРА АДАПТЕРА ТО СИСТЕМА СПОКОЙНО ОБНОВЛЯЕТ ЕГО. КОНЕЧНО МОЖНО ПЕРЕД КАЖДЫМ ОБНОВЛЕНИЕМ ДЕЛАТЬ REFRESH , НО ЭТО ГЛУПОСТЬ! КАК ВТОРОМУ КЛИЕНТУ ПЕРЕХВАТИТЬ СОСТОЯНИЕ (В АДО ЕСТЬ ХОРОШИЙ МЕТОД RESYNC - В КУРСОРЕ АДАПТОРЕ НЕТ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2004, 09:39 |
|
||
|
МНОГОПОЛЬЗОВАТЕЛЬСКИЕ ПРИЛОЖЕНИЯ И КУРСОР АДАПТЕР
|
|||
|---|---|---|---|
|
#18+
ПОСМОТРЕЛ HELP БОЛЕЕ ВНИМАТЕЛЬНО! КУРСОР АДАПТЕР АВТОМАТИЧЕСКИ ДЛЯ КУРСОРА УСТАНАВЛИВАЕТ ОПТИМИСТИЧЕСКУЮ БУФЕРИЗАЦИЮ СТРОК НАВЕРНОЕ ДЕЛО В ТОМ ЧТО НАДО ПОСЛЕ REPL ИСПОЛЬЗОВАТЬ VERR=0 ON ERROR VERR=1 =TABLEUPDATE(.T.,.F.) IF VERR=1 *СООБЩЕНИЕ О ТОМ ЧТО ЗАПИСЬ ИЗМЕНЕНА ДРУГИМ ПОЛЬЗОВАТЕЛЕМ =TABLEREVERT() ENDIF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 13:28 |
|
||
|
МНОГОПОЛЬЗОВАТЕЛЬСКИЕ ПРИЛОЖЕНИЯ И КУРСОР АДАПТЕР
|
|||
|---|---|---|---|
|
#18+
Команда TableUpdate() не генерит сообщение об ошибке. Она просто возвращает значение .F. Чтобы уточнить причину отказа в обновлении надо использовать функцию AERROR() примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. В зависимости от вида ошибки и реакции пользователя либо делаешь повторный TableUpdate(), либо откатываешь изменения TableRevert(), либо даешь возможность пользователю внести изменения в некорректные данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 14:26 |
|
||
|
МНОГОПОЛЬЗОВАТЕЛЬСКИЕ ПРИЛОЖЕНИЯ И КУРСОР АДАПТЕР
|
|||
|---|---|---|---|
|
#18+
БОЛЬШОЕ СПАСИБО ЗА ПОСКАЗКУ - ПОПРОБУЮ ДОМА (НА РЕАЛЬНОЙ БАЗЕ ЗАРЕКСЯ!) ОДНАКО В HELP НАЧИНАЯ С VFP 3.0 ПИШУТ, ЧТО ПРИ ВТОРОМ ПАРАМЕТРЕ .F. ПОПЫТКА ОБНОВЛЕНИЯ ЗАПИСИ РАНЕЕ ОТКОРРЕКТИРОВАННОЙ ДРУГИМ ПОЛЬЗОВАТЕЛЕМ ГЕНЕРИРУЕТ ОШИБКУ VFP (ВНЕ ЗАВИСИМОСТИ ОТ ТОГО БУФЕРИЗИРУЕТСЯ СТРОКА ИЛИ ТАБЛИЦА) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 14:43 |
|
||
|
МНОГОПОЛЬЗОВАТЕЛЬСКИЕ ПРИЛОЖЕНИЯ И КУРСОР АДАПТЕР
|
|||
|---|---|---|---|
|
#18+
Help не всегда соответствует реальному положению вещей. Такие моменты надо проверять на практике. Возможно, в VFP3 действительно генерилась ошибка, но в VFP6 (и более поздних) никакой ошибки не возникает. Ошибка будет только при попытке применить TableUpdate() на НЕ буфферизированных данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2004, 15:16 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32580324&tid=1596243]: |
0ms |
get settings: |
12ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
66ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 271ms |
| total: | 447ms |

| 0 / 0 |
