View previous topic :: View next topic |
Author |
Message |
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 16 Nov 2005 15:34 Post subject: Как создать индексный файл IDX |
|
|
Собственно SUBJ.
Как при наличие CDX создать IDX и работать с ни |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 16 Nov 2005 16:03 Post subject: |
|
|
Тут народ уроки просит - тема немного общая по созданию индексов.
Давайте я ее в урок вечером обращ |
|
Back to top |
|
|
Олег Смирнов
Joined: 06 Sep 2004 Posts: 821 Location: Олег Смирнов Occupation: Раут (поганист-сисадмин) Interests: Новосибирск
|
Posted: 16 Nov 2005 18:07 Post subject: Re: Как создать индексный файл IDX |
|
|
shura_k wrote: | Как при наличие CDX создать IDX и работать с ним? |
Сразу глупый вопрос: а чего такого позволяет сделать .IDX чего нельзя сделать с .CDX? _________________ С уважением, Олег Р. Смирн |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 16 Nov 2005 20:03 Post subject: |
|
|
Это для совместимости с другим ПО. |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 17 Nov 2005 11:13 Post subject: |
|
|
nordk wrote: | Тут народ уроки просит - тема немного общая по созданию индексов.
Давайте я ее в урок вечером обращу |
Обещали урока и нет
И на вопрос ни кто не ответил |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Nov 2005 11:19 Post subject: |
|
|
Виноват- исправлюсь
Не смог придумать как все обобщить.
Дело в том, что с одной стороны хотелось показать как простой временный индекс делается, с другой стороны можно сделать хитрее - ведь то что вы спрашиваете это собственно встроенная возможность InitList() все фильтры в БЭСТе по F6 это временные индексы и если внимательно посмотреть в набор параметров _aheads - то там можно увидеть параметры которые собственно и предлагают вам делать хитрые собственные фильтры на индексах. Вот сходу решил что легко обобщу а вечером посидел и понял, что поспешил... |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Nov 2005 11:21 Post subject: |
|
|
Чтобы не задерживать посмотрите вот это
Code: | FUNCTION CreIndex(cNameNtx,cNtxKey,cForKey,nRow)
IF cForKey==NIL
cForKey:='.T.'
ENDIF
Busy(.T.)
INDEX ON &cNtxKey TO (cNameNtx) ;
FOR &cForKey
Busy(.F.)
DBGOTOP()
RETURN cNameNtx |
Code: | cTmp_Cdx := TempFile(PATH_TMP,"CDX")
FErase(cTmp_Cdx)
cTmp_Cdx := CreIndex(cTmp_Cdx,"UPPER(indexkey)") |
|
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 17 Nov 2005 11:26 Post subject: |
|
|
Спасибо,
но я спрашивал не про CDX, а IDX
На сколько я понял надо сменить RDD, а потом работать обычными функциями?
И честно говоря, даный вопрос хотелось бы осветить не встроенными функциями Бэста, а чистым Харборо |
|
Back to top |
|
|
dmitry
Joined: 03 Jan 2002 Posts: 33 Location: Орлов Д.В. Occupation: Элипс-Опт Interests: Москва
|
Posted: 17 Nov 2005 11:31 Post subject: |
|
|
shura_k wrote: | Спасибо,
но я спрашивал не про CDX, а IDX
|
напишите так
Code: | cTmp_Cdx := TempFile(PATH_TMP,"IDX")
|
|
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 17 Nov 2005 11:37 Post subject: |
|
|
Quote: | напишите так
Code: | cTmp_Cdx := TempFile(PATH_TMP,"IDX")
|
|
Я спорить не буду, но разве это не даст просто смену расширения? |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Nov 2005 13:11 Post subject: |
|
|
Вы запускаете встроенную функцию и она вам по расширению строит что просите
А что касается чистого харбора - в БЭСТе он не в чистом виде и моя задача программирование в БЭСТ-4, потому с этих ракурсов и подхожу ко всем вопросам
Вернее меня поправляют уже xHarbour что он там "чистый"
Но IDX DBCREATEINDEX() - работает без проблем - Вы же хотите не просто индекс а к существующему |
|
Back to top |
|
|
shura_k
Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
|
Posted: 17 Nov 2005 13:57 Post subject: |
|
|
Все варианты приводят просто к смене расширения, внутреняя структура индеска остаётся CDX |
|
Back to top |
|
|
nordk
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
|
Posted: 17 Nov 2005 15:28 Post subject: |
|
|
DBCREATEINDEX() - создает IDX |
|
Back to top |
|
|
|