Автор | Сообщение |
|
| |
Пост N: 50
Зарегистрирован: 08.04.06
|
|
Отправлено: 17.11.06 02:56. Заголовок: Новые проблемы с CDX (SIX)
Внезапно обнаружил, что если CDXный файл имеет то же имя, что и база, то его невозможно закрыть по SET INDEX TO или CLOSE INDEXES... И простейшая вроде бы задача удалить все CDXы превращается в солидное мероприятие с закрытием всех баз... Кто-нибудь уже сталкивался?
|
|
|
Ответов - 8
[только новые]
|
|
|
| постоянный участник
|
Пост N: 89
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.11.06 10:49. Заголовок: Re:
Да я уже с таким сталкивался. Самый лучший способ это открывать индексный файл с другим именем, т.е. если база user.dbf то индекс user0.dbf Если не изменяет память в Клипере для CDX есть параметр SET AUTOPEN или SET AUTORDER
|
|
|
|
| |
Пост N: 478
Зарегистрирован: 17.05.05
|
|
Отправлено: 17.11.06 11:52. Заголовок: Re:
sx_autoOpen(.f.)
|
|
|
|
| |
Пост N: 64
Зарегистрирован: 06.06.06
|
|
Отправлено: 17.11.06 11:56. Заголовок: Re:
Была и у меня такая проблема. А как использовать эти AUTOOPEN и AUTOORDER? Как называются эти функции?
|
|
|
|
| |
Пост N: 479
Зарегистрирован: 17.05.05
|
|
Отправлено: 17.11.06 12:06. Заголовок: Re:
ort пишет: цитата: | А как использовать эти AUTOOPEN и AUTOORDER? |
| Dima пишет: и ни чего на автомате открываться не будет ;) ЗЫ Иногда доку читать полезно ;) Тот же *.ng например
|
|
|
|
| |
Пост N: 65
Зарегистрирован: 06.06.06
|
|
Отправлено: 17.11.06 13:00. Заголовок: Re:
Dima пишет: цитата: | Иногда доку читать полезно ;) |
| Да я как раз перед этим читал доку и знаю как это полезно! Вот только sx_AutoOpen() из Six - я им не пользуюсь. Вот про стандартный DBFCDX хотелось бы узнать - в тех же *.ng ничего не нашел
|
|
|
|
| постоянный участник
|
Пост N: 90
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.11.06 21:58. Заголовок: Re:
Про эту фичу еще в Магните на семинарах расказывали, и был такой Мирончиков, он вел некоторые семинары. У меня где-то были примеры с Магнита. А в стандартной доке помоему я их тоже не видел.
|
|
|
|
| |
Пост N: 10
Зарегистрирован: 17.10.05
|
|
Отправлено: 19.11.06 23:45. Заголовок: Re:
В общем-то такое поведение движка и есть правильное, что за необходимость удалять CDX-индексы на открытых таблицах? А если оно в сети?
|
|
|
|
| |
Пост N: 51
Зарегистрирован: 08.04.06
|
|
Отправлено: 21.11.06 07:31. Заголовок: Re:
LYSK пишет: цитата: | В общем-то такое поведение движка и есть правильное |
| Чтобы открывались индексы сами - бог бы с ними, поэтому наверное я и на sx_autoOpen(.f.) особого внимания не обратил - проблема в том, что закрыть их невозможно... и это неправильно. LYSK пишет: цитата: | что за необходимость удалять CDX-индексы на открытых таблицах? А если оно в сети? |
| Есть у меня в программе такая функция - при подозрении что индексы грохнулись чтобы не вручную удалять CDX (сам однажды, будучи у юзверя и решая проблемы глюков на автомате заработавшись написал в нортоновской строке DEL *.DBF и потом долго думал, дурак я или как?), а программа сама это делала (естессно, в монопольном режиме делается :-). Ещё пара функций есть одинаковой направленности - пользовательское изменение ширины полей и добавление полей в базу - так вот если по изменяемому полю индекс, удаление и пересоздание CDXов - самое то, а при добавлении поля просто необходимая вещь! В общем, переобозвал я индексные файлы от греха подальше, да и всё! Всем спасибо!
|
|
|
|