Автор | Сообщение |
|
| |
Пост N: 74
Зарегистрирован: 07.08.06
|
|
Отправлено: 26.04.07 15:34. Заголовок: ADS4NW 7.X: ax_AllLocks() возвращает массив с длиной = 2*число_блокировок. У вас также ?
Сабж.
|
|
|
Ответов - 3
[только новые]
|
|
|
| |
Пост N: 62
Зарегистрирован: 30.05.05
|
|
Отправлено: 03.05.07 13:20. Заголовок: Re:
p519446 Где такую функцию только нашел и зачем ее юзать!? И что подразумевается под блокировками?! Если блокировка записей в таблице, то для этого же есть AX_GetLocks() и Ax_Rlock(), AX_IsLocked().... а эта же относиться к "менеджментовым". Хотя проверил, действительно возвращает двумерный массив как сказано в описаловке. NW51+ADS7+CLIPER52E
|
|
|
|
| |
Пост N: 75
Зарегистрирован: 07.08.06
|
|
Отправлено: 08.05.07 15:06. Заголовок: Re:
Pager пишет: цитата: | Где такую функцию только нашел и зачем ее юзать!? |
| 2Pager: ax_GetLocks() возвращает массив номеров записей, заблокированных "МНОЮ" (т.е. тем, кто её сейчас вызывает); ax_IsLocked() -- возвращает .T. or .F., если текущая запись опять-таки заблокирована "МНОЮ". А мне надо знать, заблокирована ли сейчас запись с конкретным номерком _ДРУГИМ_ сеансом. Понятно, что я могу ПОПЫТАТЬСя её блокирнуть с помощью ax_Rlock(.f.) и при возврате .f. считать, что эта строка сейчас заблокирована ДРУГИМ сеансом. Только этот вызов, имхо, более "жаден" к ресурсам - он лезет с вопросом к ОС сервера. Но ведь АДС при установке блокировок где-то у себя держит "свою" таблицу с номерами строк! И обновляет её с некоторой периодичностью на случай, когда клиент "умирает" (проверено на ADS for NW 6.x. 7.x: примерно через 2-3 секунды после "смерти" клиента АДС снимает блокировку с записи и, ес-сно, убирает её из своей таблицы). Вот я и начал юзать эту ф-цию. И работать стало побыстрее примерно (ненамного, конечно, но ощутимо). ЗЫ. Я описаловку читал, про 2D-массив, ес-сно, тоже знаю. Только мой вопрос не почему он возвращает 2D-array, а почему в этом массиве элементы ЗАДУБЛИРОВАНЫ (!!!) Ы ?
|
|
|
|
| |
Пост N: 44
Зарегистрирован: 11.12.06
|
|
Отправлено: 22.05.07 15:29. Заголовок: Re:
p519446 пишет: цитата: | ax_IsLocked() -- возвращает .T. or .F., если текущая запись опять-таки заблокирована "МНОЮ". |
| по-моему, кем угодно. почему мне так катежется - в памяти сидит имя функции IsLockedByMe, которую мы делали ну и isLocked делает именно то, о чем ты говоришь - пытается блокировать
|
|
|
|