Имя: Пароль:
1C
 
1С 8 Проблема с файловой системой
0 satoru
 
17.07.15
13:15
Платформа: 8.3.3.687
Конфигурация: не типовая
ОС: Windows XP SP3
------------------------
При попытке создать файл по указанному пути "D:\1С\Обмен\", 1С зависает (спасает только перезагрузка!). Обмен с основной базой идет через DBF файлы.
Права на папку есть у пользователя user, под которым запускается 1С.
1 minsk1s
 
17.07.15
13:19
(0) путь менять пробовали?
2 minsk1s
 
17.07.15
13:20
(0) под админом пробовали?
3 minsk1s
 
17.07.15
13:20
(0) антивирусник отключать пробовали?
4 OnCheck
 
17.07.15
13:21
код в студию
5 satoru
 
17.07.15
13:29
(1) (2) (3)  Да
6 butterbean
 
17.07.15
13:33
это точно не на серваке выполняется?
7 satoru
 
17.07.15
13:34
Поиск = НайтиФайлы(Константы.ПутьКФайлуАртикулов.Получить());
    Если Поиск.Количество() = 0 Тогда
        Предупреждение("Внимание не обнаружен файл артикулов. ОБРАТИТЕСЬ К ОПЕРАТОРУ!");
        АРМК.СигналОшибки();
        АРМК.ЗаписатьВЛог(""+ТекущаяДата()+" Не выполнена выгрузка! Нет файла артикула.");
        Возврат;
    КонецЕсли;
    

    ОбъектDBF = Новый XBase;
    ОбъектDBF.ОткрытьФайл(Константы.ПутьКФайлуАртикулов.Получить());

    ТаблицаДанных = Новый ТаблицаЗначений;
    ТаблицаДанных.Колонки.Добавить("Артикул");
    ТаблицаДанных.Колонки.Добавить("Код");
    ТаблицаДанных.Колонки.Добавить("Наименование");
    ТаблицаДанных.Колонки.Добавить("Штрихкод");
    ТаблицаДанных.Колонки.Добавить("Весовой");
    ТаблицаДанных.Колонки.Добавить("НетШтрихкода");
    ТаблицаДанных.Колонки.Добавить("Цена");

...    

    Попытка
        УдалитьФайлы(Константы.ПутьКФайлуАртикулов.Получить());
    Исключение
        Предупреждение("Внимание не возможно удалить файл артикулов. ОБРАТИТЕСЬ К АДМИНИСТРАТОРУ!");
        АРМК.СигналОшибки();
        АРМК.ЗаписатьВЛог(""+ТекущаяДата()+" Не удален файл артикулов.");
    КонецПопытки;
8 satoru
 
17.07.15
13:34
(6)  База файловая
9 OnCheck
 
17.07.15
13:37
(7) та же открываешь, а не создаешь
10 butterbean
 
17.07.15
13:37
(7) и какой там путь? должен быть вместе с именем файла
11 satoru
 
17.07.15
13:38
пардон не тот код

    Файл = Новый XBase;
    Файл.Кодировка = КодировкаXBase.OEM;
    Файл.Поля.Добавить("NUMBER","N",9,0);
    Файл.Поля.Добавить("DATA","D",10,0);
    Файл.Поля.Добавить("KOD","N",15,0);
    Файл.Поля.Добавить("FEATURE","S",100,0);
    Файл.Поля.Добавить("BARCODE","S",150,0);
    Файл.Поля.Добавить("KOL","N",10,3) ;
    Файл.Поля.Добавить("PRICE","N",15,2);
    Файл.Поля.Добавить("SUMMA","N",15,2);
    Файл.Поля.Добавить("SKIDKA","N",10,0);
    Файл.Поля.Добавить("SUMSKIDKI","N",15,2);
    Файл.Поля.Добавить("KODKARTI","S",32,0);
    //Создаем папку с текущей датой
    ПутьККаталогу = Константы.ПутьККаталогуОтчетовКА.Получить()+""+Формат(Отчет.Дата,"ДФ=dd.MM.yy");
    Если НайтиФайлы(ПутьККаталогу).Количество() = 0 Тогда
        СоздатьКаталог(ПутьККаталогу);
    КонецЕсли;
    Путь = ПутьККаталогу + "\"+Число(Отчет.Номер)+"_"+Формат(Отчет.Дата,"ДФ=yy")+".DBF";
    Файл.СоздатьФайл(Путь);
    Файл.Записать();
12 satoru
 
17.07.15
13:50
(10) D:\1С\Обмен\BaseArt.DBF
13 lera01
 
17.07.15
13:50
Каталог с таким хитрым именем Константы.ПутьККаталогуОтчетовКА.Получить()+""+Формат(Отчет.Дата,"ДФ=dd.MM.yy"); может существовать, но в нем не быть файлов, а ты еще раз создаешь каталог.
14 lera01
 
17.07.15
13:51
Посмотри в отладчике ПутьККаталогу
15 satoru
 
17.07.15
14:06
(14) Путь "D:\1С\Обмен\17.07.2015"
16 satoru
 
17.07.15
14:08
Проблема решена! Переустановил 1С, при этом удалил все каталоги в Program Files. Всем спасибо.
17 Fish
 
17.07.15
14:24
"при этом удалил все каталоги в Program Files" - радикальное решение :))
18 ifso
 
17.07.15
14:56
(17) эттолько если без бэкапов )
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн