Имя: Пароль:
1C
1С v8
Работа с DBF (Перед выполнением операции нужно открыть базу)
0 DeMi4
 
10.05.12
13:09
&НаКлиенте
Процедура Загрузить(Команда)
       ЗагрузитьНаСервере();
КонецПроцедуры
&НаСервере
Процедура ЗагрузитьНаСервере()
       СпрКонтрагенты = Справочники.Контрагенты;//
       ФайлДБФ=Новый("XBase"); //
       ФайлДБФ.ОткрытьФайл(Объект.Файл);        
       ФайлДБФ.Первая();
       Пока ФайлДБФ.ВКонце() = Ложь Цикл
           НовСпрКонтрагенты = СпрКонтрагенты.СоздатьЭлемент();
           НовСпрКонтрагенты.Наименование = СокрЛП( ФайлДБФ.Name );
           НовСпрКонтрагенты.Код=ФайлДБФ.Code;
           НовСпрКонтрагенты.Записать();
           ФайлДБФ.Следующая();
       конецЦикла;
       ФайлДБФ.ЗакрытьФайл();
КонецПроцедуры

Выдает такую вот ошибку "Перед выполнением операции нужно открыть базу"
1 zippygrill
 
10.05.12
13:12
мож у тебя открыт в какой нибудь дфв viewer?
2 Галахад
 
гуру
10.05.12
13:12
Наверное уже открыл в прошлый раз и не закрыл.
3 DeMi4
 
10.05.12
13:15
Перезагружал специально комп даже
4 DeMi4
 
10.05.12
13:15
Путь то же корректно передается
5 Valery
 
10.05.12
13:22
файлДБФ.Открыта() что выдает?
6 DeMi4
 
10.05.12
13:29
Ложь (нет)
7 DeMi4
 
10.05.12
13:31
Путь передается
"D:\12345.dbf"
8 DeMi4
 
10.05.12
13:31
И отладчик вообще не хочет пробегать по куску что выполняется на сервере
9 Valery
 
10.05.12
13:33
попробуй путь руками прописать в параметрах.
Сам файл живой?  в экселе открывается? индекс к нему нужен?
10 netDog
 
10.05.12
13:39
База клиент-серверная? На сервере файл dbf лежит?
11 DeMi4
 
10.05.12
13:40
Файл живой индекс к нему не нужен. Не открывает даже те файлы которые когда то открывал и загружал
12 DeMi4
 
10.05.12
13:41
Да и эксель тоже открывает
13 DeMi4
 
10.05.12
13:41
База лежит на серваке. Файл лежит на моем компе.
14 DeMi4
 
10.05.12
13:42
SQL
15 netDog
 
10.05.12
13:43
код выполняется на сервере. Прописываешь ты локальный путь, значить и искать этот файл он у тебя пытается на сервере
16 Valery
 
10.05.12
13:48
диалог выбора файла прикрути, там точно путь к файлу будет указан
17 netDog
 
10.05.12
13:50
(16) ежели я правильно помню - диалог выбора файла на сервере не работает. А у него процедура выполняется именно на сервере
18 Valery
 
10.05.12
13:52
на сервере не работает. так никто не мешает на клиента перенести отдельной процедурой
19 Valery
 
10.05.12
13:52
это для отладки, посмотреть путь
20 zippygrill
 
10.05.12
13:57
что в Объект.Файл?
21 DeMi4
 
10.05.12
13:58
Строка с путем на моем компе
22 Valery
 
10.05.12
13:58
(20) судя по всему "D:\12345.dbf"
23 netDog
 
10.05.12
13:59
(21) как сервер догадается что нужно смотреть на твоем компе? Он выполняет код у себя, смотрит этот файл - не находит. Все честно
24 DeMi4
 
10.05.12
14:02
Бесит это клиент сервер
25 zippygrill
 
10.05.12
14:07
(21) хз тогда. у меня тоже клиент-сервер. файл локальный. В отладчике все видно.
26 netDog
 
10.05.12
14:18
(25) если в отладчике виден серверный код, то либо сервер в режиме дебаг запущен, либо на одной машине находится или это не клиент сервер. А может и я чего не знаю. Раскрой тайну)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс