Имя: Пароль:
1C
 
ДБФ файл. Ругается на длину имени
0 Маркусс
 
02.10.09
09:10
Здравствуйте.
Для отчетности требуется создать файл дбф. Структура определена в документации. Наименование должно иметь ИНН, дату и т.д.При попытке создания пишет следующее:
Ошибка при вызове метода контекста (СоздатьФайл): Длина имени файла превысила 8 символов
   БД.СоздатьФайл(ИмяФайла);
по причине:
Длина имени файла превысила 8 символов

В документации указано, что формат должен быть DBF 4. Подскажите, плиз, как прописать в коде данный формат.
ИмяФайла = "c:\465465465465461.DBF";
   БД = Новый XBase;
БД.Поля.Добавить("SELFKPP", "C", 10);
   БД.Поля.Добавить("REPORTDATE", "D", 8);
   БД.Поля.Добавить("EAN13", "C", 13);
   БД.Поля.Добавить("AMOUNT", "C", 4);
   БД.СоздатьФайл(ИмяФайла);


Спасибо.
1 IronDemon
 
02.10.09
09:11
Не превышай
2 dragonIMV
 
02.10.09
09:12
мне вот тоже это интересно, а то приходится делать файлы с именем не более 8 символов...
3 Kolyasik
 
02.10.09
09:13
465465465465461 - больше восми знаков... наверное поетому :)))
4 ДенисЧ
 
02.10.09
09:13
Напиши так

ИмяФайла = "c:\4654.DBF"
тут твой код
КомандаСистемы("ren c:\4654.DBF c:\465465465465461.DBF");


А потом иди на базар и купи там гУся.
5 dragonIMV
 
02.10.09
09:17
(4) не, это понятно что можно сделать...
а вот существует ли возможность изначально делать файл с именем длинее 8 символов?
6 ДенисЧ
 
02.10.09
09:18
(5) Существует. Не использовать объект XBase, например.
Или не использовать 1с.
Или не использовать компьютер.
Или...
7 Kolyasik
 
02.10.09
09:23
Описание:
XBase - основной объект для работы с таблицами баз данных в формате DBF. Предоставляет доступ к коллекции полей и индексов таблицы, позволяет открывать и записывать файлы таблиц, работать с записями таблицы.
При работе с файлами DBF следует иметь в виду, что имя файла должно удовлетворять ограничению 8.3.
8 Kolyasik
 
02.10.09
09:23
СП рулит
9 IKSparrow
 
02.10.09
09:26
На всякий случай перевожу написанное в (7) - не понимает DBF больше 8 символов в имени файла. И кириллицу не понимает там же. Стандарт такой. Имя должно быть как по старинке в DOS (операционка такая была). FILENAME.DBF. Всё.
10 SmallDog
 
02.10.09
09:28
сначала дать простое имя, потом переименовать как надо - проверено, работает
11 dragonIMV
 
02.10.09
09:31
(9) хорошая была операционка)))) не то что винда...
12 Маркусс
 
02.10.09
09:31
(4)Спасибо. только использовал move
13 Lama12
 
02.10.09
09:32
(12)Потом хрен откроешь пока не переименуешь обратно.
14 dragonIMV
 
02.10.09
09:34
(13)во во, вроде он или не даст открыть такой файл, или вроде бы только первые 8 символов названия будет читать...
15 ASU_Diamond
 
02.10.09
09:45
(9) эээ... а в семерке вроде как понимал...
16 Mikeware
 
02.10.09
09:48
(15) Нет.
17 ДенисЧ
 
02.10.09
09:48
(15) "ет" (с)
2 + 2 = 3.9999999999999999999999999999999...