Имя: Пароль:
1C
1С v8
Проблемы с чтением DBF
0 shadow_sw
 
26.08.16
10:03
доброго времени суток!
не первый раз делаю загрузку из DBF файлов, но с таким сталкиваюсь впервые. Суть - беру на FTP файлы, пытаюсь читать(загрузка в документы), но постоянно 1с сообщает:
    Пока БД.Следующая() Цикл
по причине:
Перед выполнением операции нужно открыть базу

БД.Открыта() постоянно в состоянии Ложь
КаталогЗагрузкиДанных = "d:\SW\";
БД = Новый XBase();
БД.ОткрытьФайл(КаталогЗагрузкиДанных+"123123.DBF");
// БД.ОткрытьФайл("d:\sw\OLORDERН.DBF");//

    Пока БД.Следующая() Цикл
Пробовал явно указывать путь, перемещал в другое место(думал прав нет).Причем отладчик еще говорит
БД.ОткрытьФайл(КаталогЗагрузкиДанных+"OLORDERН.DBF")    {(1)}: Обращение к процедуре объекта как к функции (ОткрытьФайл)    

Подскажите ЧТЯДНТ?
1 Ёпрст
 
гуру
26.08.16
10:04
(0) скопируй файлы на рабочий каталог, потом читай.
2 shadow_sw
 
26.08.16
10:05
(1) рабочий каталог = КаталогВременныхФайлов() ?
3 shadow_sw
 
26.08.16
10:21
пробовал переименовать файл, результат тот же
4 Ёпрст
 
гуру
26.08.16
10:25
(2) да куда угодно, главное, чтоб он не в каталоге на фтп был.
5 Strogg
 
26.08.16
10:28
(4)++ а копировать более лутьше каким-нибудь батником, который будет висеть в планировщике. есть такая прога: ncftpget. Самый норм вариант. Тыж какой-нито докоборот замутить пытаешься...
6 shadow_sw
 
26.08.16
10:29
СерверFTP = "";
    КаталогFTP = "";
    ПользовательFTP = "";
    ПарольFTP = "";

    FTPКаталогЗагрузки = КаталогFTP+"Export";
    КаталогЗагрузкиДанных = "e:\In\";
    
        Попытка
            Соединение =  Новый FTPСоединение(СерверFTP, , ПользовательFTP, ПарольFTP);
            Массив = Соединение.НайтиФайлы(FTPКаталогЗагрузки, "*.DBF");
            Если Не Массив.Количество() = 0 Тогда
                Для Каждого Стр Из Массив Цикл
                    //Проверяем, есть ли файл в каталоге, если нет - то грузим
                    КаталогНаДиске = Новый Файл(КаталогЗагрузкиДанных+"\"+Стр.Имя);
                    Если НЕ КаталогНаДиске.Существует() Тогда
                        ИмяФайла = КаталогЗагрузкиДанных+"\"+Стр.Имя;
                        Соединение.Получить(Стр.ПолноеИмя, ИмяФайла);     
                    КонецЕсли;    
                КонецЦикла;
                Сообщить("Загружено "+Массив.Количество()+" файлов. Загрузка успешна!");
                
            Иначе    
                Сообщить("Нет файлов!");
            КонецЕсли;            
        Исключение
            Сообщить("Ошибка подключения FTP!!!");
        КонецПопытки;
7 1dvd
 
26.08.16
10:30
открыт в екселе, видимо
8 ptiz
 
26.08.16
10:33
(6) И?
9 shadow_sw
 
26.08.16
10:35
(6) это было к (4)
(7) перегружался специально, уже думал что открыто чем то
10 shadow_sw
 
26.08.16
10:39
11 Ёпрст
 
гуру
26.08.16
10:45
всё читается
12 Ёпрст
 
гуру
26.08.16
10:52
У файла токма чутка заголовок подпорчен и усё
13 Ёпрст
 
гуру
26.08.16
10:55
Хотя не, всегда читается
14 shadow_sw
 
26.08.16
10:56
сча проверю на другом компе, там и платформа отличается, ну какая то мистика в общем и целом
15 Ёпрст
 
гуру
26.08.16
10:56
норм там с заголовком, просто был открыт в другой проге. С 1с-ины всё читается
16 Garykom
 
гуру
26.08.16
11:01
(0) 1С сервер/клиент? права?
17 shadow_sw
 
26.08.16
11:03
(16) файловая(пишу сижу локальный комп), права -проверяю, сча еще имя файла заменить попробую, потому как сделал открытие по маске - не виден файл
18 shadow_sw
 
26.08.16
11:09
всем спасибо, кривые файлы выкладывали коллеги на фтп