|
Загрузка из dbf На люникс
| ☑ |
0
into
30.10.18
✎
17:02
|
Выгружаю dbf файл вреде бы все нормально. Пытаюсь загрузить - получаю сообщение: Перед выполнением операции нужно открыть базу
Имя файла вот так выглядит:/tmp/Status.dbf
При выгрузке ни на что не ругается:
ИмяФайла="Status";
ИмяФайлаБазы = КаталогВременныхФайлов() + ИмяФайла + ".dbf";
|
|
1
Garykom
гуру
30.10.18
✎
17:29
|
Регистр?
Проверить существование файла программнг
|
|
2
into
30.10.18
✎
19:12
|
Сделал тоже самое через текстовый файл. Работает. Видимо какие-то ограничения платформы.
|
|
3
Garykom
гуру
30.10.18
✎
19:21
|
Да были какие то проблемы с этим.
Там может быть что угодно от глюков 1С до неправильных прав (нет прав на read только write ибо записывал) или еще что с кодировкой.
Суть что платформа 1С под linux использует некие библиотеки для работы с dbf.
И точно не попутал &НаКлиенте с &НаСервере?
|
|
4
Garykom
гуру
30.10.18
✎
19:23
|
Хотя скорее всего серверному процессу 1С прав не хватает банально, но глюк очень странный потому что должно работать ибо если нет то писать в техподдержку 1С надо.
|
|
5
Кирпич
30.10.18
✎
19:25
|
(0) А ты базу открыл? Где код, где ты базу открываешь?
|
|
6
into
30.10.18
✎
19:28
|
ДБФ = Новый XBase;
ДБФ.Кодировка = КодировкаXBase.OEM;
ИмяФайла="status";
ИмяФайла = КаталогВременныхФайлов() + ИмяФайла + ".dbf";
Сообщить(ИмяФайлаБазы);
ДБФ.ОткрытьФайл(ИмяФайла);
Если Не ДБФ.Открыта() Тогда
Сообщить ("Нет файла");
КонецЕсли;
Пока НЕ ДБФ.ВКонце() Цикл
Сообщить(ДБФ.NAME);
ДБФ.Следующая();
КонецЦикла;
ДБФ.ЗакрытьФайл();
|
|
7
Garykom
гуру
30.10.18
✎
19:31
|
(6) Заметил что у тебя в (0) "ИмяФайла="Status";" а тут "ИмяФайла="status";" ?
|
|
8
Garykom
гуру
30.10.18
✎
19:31
|
Под линуксом "S"<>"s"
|
|
9
into
30.10.18
✎
19:33
|
Сначала было S потом исправил на s и в выгрузке и в загрузке
|
|
10
Garykom
гуру
30.10.18
✎
19:40
|
А имя файла если глянуть созданного там случаем не ".DBF" ?
|
|