Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Вниз

Индексы Foxpro (cdx)   Найти похожие ветки 

 
eLimar   (2005-07-04 01:17) [0]

Необходимо добавлять данные в базы фокспро. Но в некоторых индексах используются функции при построении индексов. Используя halycon таблицы с такими индексами не открываются. Как можно обойти данную проблему (отключать индекс не предлагать или тогда как перестроить индекс)?


 
Anatoly Podgoretsky ©   (2005-07-04 08:40) [1]

Функция, функции рознь.


 
sniknik ©   (2005-07-04 09:13) [2]

для клипера функции в индексах (выражения с ними) работают в halycon-е (главное чтобы были), для фокса не приверял но судя по всему используются те же самые (в одном месте все описаны)... должно работать.
если чего и нехватает/не адекватно срабатывает, исходники есть правь как хочеш. (был случай с переходом на другую версию клипера стал не так индекс восприниматься. оказалось изза различий обработки одной из функций. в сопряжонной проге пришлось исправлять halycon-овскую на аналогичное изменение в действии, иначе индексы друг друга не понимали)
если индекс по пользовательской функции, то ее естественно придется добавлять.


 
elimar   (2005-07-04 09:54) [3]

При попытке в дизайнере открыть датасет с подключенным индексом, пишет:
There is no function for LUPPER.
Я не специалист по фокспро, поэтому не знаю это стандартная функция или нет. Я в принципе догадываюсь, что разработчики компонента должны были предусмотреть эту возможность.
А если это пользовательская функция - где ее добавлять?
P.S. Я подключаюсь к базам не моей программы, поэтому посмотреть как у них реализовано нет ни какой возможности.


 
ANB ©   (2005-07-04 10:19) [4]


> LUPPER
- похоже, это своя реализация Upper, которая в фоксе не работает с русскими буквами.


 
elimar ©   (2005-07-04 10:45) [5]

А где должны находится пользовательские функции?


 
sniknik ©   (2005-07-04 11:08) [6]

пользовательские... там где опишеш. стандартные в ds6_fctn.pas, там можно и посмотреть как добавить свою.


 
sniknik ©   (2005-07-04 11:14) [7]

> поэтому посмотреть как у них реализовано нет ни какой возможности.
частично индекс (выражение) можно посмотреть в заголовке индекса, на файловом (idx) это особенно хорошо видно, с cdx сложнее. естественно что делает это выражение не так не поймеш, но по самому индексу можно догадатся... сравнить значения полей в базе, само выражение по которому строится индекс и что туда, в этот индекс попадает. в общем разобратся можно.
а тут даже разбираться не надо скорее всего, ANB ©   (04.07.05 10:19) [4] прав на 98%.


 
elimar ©   (2005-07-05 00:22) [8]

У меня нет исходник Halcyon, потому посмотреть на реализацию очень проблематично. Почитав форумы, многие предлагают еще Apollo, есть ли там возможность описать пользовательские функции для индексов?


 
elimar ©   (2005-07-05 01:24) [9]

Вопрос решился тупо, но эффективно. Я добавляю в таблицу без включенного индекса, а при выходе старый индекс убиваю. Прога, которая работает с этой базой, сама автоматически восстанавливает индексы.
Всем спасибо.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.013 c
14-1120413328
Soft
2005-07-03 21:55
2005.08.14
Какую CMS использовать?


1-1122380013
Elle
2005-07-26 16:13
2005.08.14
Компонент PageControl


4-1118784775
ranetka
2005-06-15 01:32
2005.08.14
запустить свой логон


1-1122372526
serg128
2005-07-26 14:08
2005.08.14
Как поменять цвет строки в TListBox?


4-1118401293
Андрей Жук
2005-06-10 15:01
2005.08.14
Неверный результат работы функции





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский