Несколько вопросов по индексному файлу XBase #585462


#0 by Rounder
1. Добавить(<Имя>, <Выражение>, <Уникальность>, <Убывание>, <Фильтр>) здесь <Выражение> - это выражение на языке FoxPro? 2. Если да - то почему ругается на выражение "kdk+prneot+dtoc(ddk,1)", а именно на параметры функции dtoc? (если писать dtoc(ddk), то индекс создается) 3. Как в самом файле DBF проставить байт/признак наличия индексного файла?
#1 by aleks-id
настоящие джедаи давно не работают с хбазе
#2 by Rounder
тогда прошу ответить мне - не настоящему джедаю :)
#3 by aleks-id
озвучь задачу для чего это нужно. может запросом проще взять необходимые данные?
#4 by Mikeware
Выражение - оно не на фоксе, а скорее на чистом иксбейсике.
#5 by aleks-id
#6 by СвинТуз
почему это? ))
#7 by aleks-id
попробуй с двумя dtoc - в один дату без времени, во второй время
#8 by Rounder
- так почему тогда ругается на dtoc? Вот ее синтаксис DTOC(dExpression | tExpression [, 1]) Озвучиваю - выгружаю данные из 1С в задач на досовом FoxPro - нужно попутно создавать индексные файлы, иногда переиндексация.
#9 by Mikeware
Потому, что в чистом xBase функция DTOC имеет лишь один аргумент...
#10 by НЕА123
в СП индексXBase. DTOS - Твое все(может и нет). +1.
#11 by Rounder
Спасибо. Попробую. А что с вопросом 3? 3. Как в самом файле DBF проставить байт/признак наличия индексного файла? Суть вопроса, dbf существуют, индексные нет. Т.е. в одной связке создать не могу. Создаю индексный к уже существующему dbf. В фоксе открываю - индексный не привязан.
#12 by НЕА123
в СП. КоллекцияИндексов. работу с индексами DBF в 1С я стараюсь избегать. если возможно, проще их в самом фоксе и сделать.
#13 by Rounder
Не понял для чего ссылка на СП на КоллекцияИндексов. Там нет ответа как к уже существующей dbf-ке привязать индексный файл, чтобы нужный байт в dbf стал равным 1, и открывая bdf средствами фокса индексный файл подхватывался автоматически. Я тоже избегал работы с индексами - но в 1С разработчик я, а в фоксе - другой человек, и он просит выдавать ему в т.ч. и индексный файл.
#14 by aleks-id
разработчику фокспро дать по голове и заставить лазить в 1с через СОМ а не сидеть на досовым УГ
#15 by Rounder
это невозможно сделать по политическим мотивам :)
#16 by Rounder
Так что? Нет возможности связать уже существующую dbf-ку с вновь созданным индексным файлом?
#17 by НЕА123
в фоксе, вроде, можно явно указать CDX. типа так USE ТABLE Index TableIdex.
#18 by Rounder
Тогда отдам эту идею фоксовику.
#19 by СвинТуз
а если файл CDX  имеет то же имя что и основная таблица он открывается автоматически вместе с таблицей вроде как ... ленится плохо пусть делает переиндексацию у себя при открытии а если индекс не открывать вместе с файлом он вроде и не пишется при изменениях в таблице ...
#20 by НЕА123
>а если файл CDX  имеет то же имя что и основная таблица >он открывается автоматически вместе с таблицей >вроде как ... по-моему да. в любом случае надо индексировать в фоксе. ненадежная это вещь индексы. рушатся, да и нет гарантии, что индексы 1с построятся такие же как у фокса.
#21 by Mikeware
Вообще говоря, он не обязан открываться (не помню, чтоб это было в стандарте). Но в фоксе (и в фоксбэйзен, и фокспро - открывается) И становится текущим индексом. Более того, практически гарантировано, что они построятся по другому... вообще, у dbf файлов есть куча стандартов, и разные поля по разному используются различными субд. И индексы у разных субд строятся тоже по разному...
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С