Ошибка при выгрузке файла

1. Ruslan-Proff 2 23.08.13 12:46 Сейчас в теме
Добрый день уважаемые коллеги. Работаем с Бухгалтерией 3.0.23.9. файловый вариант. База лежит на сервере. У пользователей при выгрузке справки 2-НДФЛ на компьютер пользователя возникает следующая ошибка:

{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(358)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Ложь) Тогда
по причине:
Неправильный путь к файлу 'e1c://file/Server/M/Akrilan/-=БУХГАЛТЕРИЯ=-/MOSK/e1cib/tempstorage/c0e9dadd-33f7-45ba-a9f8-bb6232f37437'

Что делать?? Подобная ошибка возникает и при других выгрузках.
+
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. motorkuzbassa.it 99 23.08.13 13:01 Сейчас в теме
(1)наверное прав не хватает, выгрузи под админом.
+
3. Ruslan-Proff 2 23.08.13 13:03 Сейчас в теме
(2) motorkuzbassa.it, Права полнейшие. Админиские. И разрешения на папку где база тоже полные
+
10. sergnik 23.08.13 15:03 Сейчас в теме
(1) Ruslan-Proff,
Вам нужно вписать "Истина" вместо "Ложь"
ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Ложь)
И будет вам счастье =))

У Вас же файловая база, а не серверная. А так, наверное, платформенный механизм глобального контекста пытается работать с файлами по шаблонам серверных путей хранения временных файлов.Но сервера же нет)
+
4. Kometa 5 23.08.13 13:05 Сейчас в теме
А если на серверном компе выбрать каталог "РабочийСтол", может юзер не так путь выбирает каталога.
+
5. Ruslan-Proff 2 23.08.13 13:27 Сейчас в теме
На серверном на удаленке все нормально
+
6. Kometa 5 23.08.13 13:34 Сейчас в теме
Длинный какой-то у вас путь. Может создать на компе юзера папку и подключить диск на удаленке к этой папке. и когда надо будет выгружать - юзер просто выбирает эту папку?
+
7. Ruslan-Proff 2 23.08.13 13:52 Сейчас в теме
(6) Kometa, Не не пойдет. Нужно устранить ошибку или понять от чего вдруг
+
8. JohnTur 1 23.08.13 14:23 Сейчас в теме
Дело в правах доступа сервера к компьютеру пользователя. т.к. версия БП 3 то скорее всего запущена тонким клиентом. Попытайтесь с сервера попасть на комп пользователя и создать любой файл или папку по указанному пути.
+
9. sergnik 23.08.13 14:59 Сейчас в теме
А читать синтаксис-помощник не пробовали? =)))
Глобальный контекст (Global context)
ПолучитьФайлы (GetFiles)

Синтаксис:

ПолучитьФайлы(<ПолучаемыеФайлы>, <ПолученныеФайлы>, <РасположениеФайлов>, <Интерактивно>)
Параметры:

<ПолучаемыеФайлы> (обязательный)
Тип: Массив.
Массив объектов типа ОписаниеПередаваемогоФайла.
Каждый объект описывает получаемый файл:
Хранение - расположение данных во временном хранилище или в информационной базе;
Имя - это локальный путь, по которому должен быть расположен получаемый файл. Это может быть либо полный путь, либо часть пути, которая будет объединена со значением параметра <РасположениеФайлов>. Это также может быть имя файла или имя каталога (каталогов) + имя файла.
<ПолученныеФайлы> (необязательный)
Тип: Массив.
Массив объектов типа ОписаниеПереданногоФайла.
Каждый объект описывает получаемый файл:
Хранение - расположение данных во временном хранилище или в информационной базе;
Имя - это локальный путь, по которому должен быть расположен получаемый файл. Это может быть либо полный путь, либо часть пути, которая будет объединена со значением параметра <РасположениеФайлов>. Это также может быть имя файла или имя каталога (каталогов) + имя файла.

<РасположениеФайлов> (необязательный)
Тип: ДиалогВыбораФайла; Строка.
Определяет общее расположение помещаемых файлов в локальной файловой системе.
Может быть задан строкой, либо, заранее подготовленным, диалогом выбора файлов в режиме выбора каталога или сохранения файлов.

<Интерактивно> (необязательный)

Тип: Булево.
Истина - задан интерактивный режим, в котором пользователю показывается диалог, в котором он может выбрать локальное расположение файлов.
Ложь - на сервер передается список файлов, описанный в параметре <Файлы>.
В интерактивном режиме строка, переданная в параметре <Диалог/Путь> рассматривается как начальное значения для выбора пути.

Значение по умолчанию: Истина
Возвращаемое значение:


Тип: Булево.
Истина - получен хотя бы один файл; Ложь - получение всех файлов отменено пользователем.
Описание:
Получает набор файлов и сохраняет их в локальную файловую систему пользователя.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.
Примечание:

Для работы метода на веб-клиенте, необходимо предварительно подключить расширение работы с файлами.
В веб-клиенте при работе в Firefox при выполнении метода до окончания загрузки выводится модальное окно с отображением процента получения файла. Выполнение метода заканчивается после окончания получения файла.
+
11. JohnTur 1 23.08.13 15:05 Сейчас в теме
(9) sergnik, конфигурация похоже типовая. какой смысл редактировать ее, если все решается изменением прав доступа
+
12. sergnik 23.08.13 15:12 Сейчас в теме
(11) JohnTur,
То, что конфигурация типовая, не значит, что там все идеально разработано)

Дело в том, что текущий синтаксис метода предполагает работу базы в серверном варианте.
Вы можете в этом убедиться абсолютно на любой конфигурации, найдя метод "ПолучитьФайлы" в синтаксис
помощнике - это платформенный механизм.
Недоработка разработчиков, нужно было предусмотреть работу в обоих режимах.
Значит, нужно доработать самому, сообщить на горячую линию консультаций 1С, и ждать
следующего релиза

{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(358)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Ложь) Тогда
по причине:
Неправильный путь к файлу 'e1c://file/Server/M/Akrilan/-=БУХГАЛТЕРИЯ=-/MOSK/e1cib/tempstorage/c0e9dadd-33f7-45ba-a9f8-bb6232f37437'

Просмотрите, пожалуйста синтаксис-помощник и убедитесь сами
+
13. Ruslan-Proff 2 23.08.13 15:31 Сейчас в теме
(12) sergnik, Попробовал. Просит путь к каталогу а потом эта ошибка

{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(358)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Истина) Тогда
по причине:
Неправильный путь к файлу 'e1c://file/Server/M/Akrilan/-=БУХГАЛТЕРИЯ=-/MOSK/e1cib/tempstorage/d9648242-c059-47c5-98e5-efd028e0f6fc'
+
14. sergnik 23.08.13 15:43 Сейчас в теме
(13) Ruslan-Proff,
ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина)
попробуйте добавить эту переменную, чтобы когда
Просит путь к каталогу

этот путь мог в ней сохраниться. На самом деле тяжело отлаживать не видя базы)
+
15. Ruslan-Proff 2 23.08.13 15:49 Сейчас в теме
(14) sergnik, А куда добавлять??
+
16. sergnik 23.08.13 16:01 Сейчас в теме
(15) Ruslan-Proff,
переменную РасположениеФайлов, перед вызовом метода. скажем так чтобы было:

РасположениеФайлов = Неопределено;
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина) Тогда
+
17. Ruslan-Proff 2 23.08.13 16:20 Сейчас в теме
(16) sergnik, не получилось ошибка
{ОбщийМодуль.ПрисоединенныеФайлыКлиент.Модуль(359)}: Ошибка при вызове метода контекста (ПолучитьФайлы)
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина) Тогда
по причине:
Несоответствие типов (параметр номер '3')
Может я неправильно сделал. Вот код:

ПолученныеФайлы = Новый Массив;

РасположениеФайлов = Неопределено;
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина) Тогда

//Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы, , Истина) Тогда
Состояние(НСтр("ru = 'Файл успешно сохранен.'"), , ВыборФайла.ПолноеИмяФайла);
КонецЕсли;

Возврат ВыборФайла.ПолноеИмяФайла;
Иначе
#Если ВебКлиент Тогда
ПолучитьФайл(ДанныеФайла.СсылкаНаДвоичныеДанныеФайла, ДанныеФайла.ИмяФайла, Истина);
Возврат ДанныеФайла.ИмяФайла;
#КонецЕсли
КонецЕсли;
+
18. sergnik 23.08.13 16:52 Сейчас в теме
(17) Ruslan-Proff,
Извини, я затупил) сам запостил описание синтаксиса и сам неправильно посоветовал
в (16).Параметр должен иметь тип Строка или ДиалогВыбораФайла
<РасположениеФайлов> (необязательный)
Тип: ДиалогВыбораФайла; Строка.

Определяет общее расположение помещаемых файлов в локальной файловой системе.
Может быть задан строкой, либо, заранее подготовленным, диалогом выбора файлов в режиме выбора каталога или сохранения файлов.

Нужно так:
РасположениеФайлов = "";
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина) Тогда

или так
Режим = РежимДиалогаВыбораФайла.ВыборКаталога;
//режимы могут быть - Открытие, Сохранение, ВыборКаталога
//попробуй Открытие или ВыборКаталога
РасположениеФайлов = Новый ДиалогВыбораФайла(Режим);
Если ПолучитьФайлы(ПолучаемыеФайлы, ПолученныеФайлы,РасположениеФайлов, Истина) Тогда
+
19. Ruslan-Proff 2 26.08.13 17:02 Сейчас в теме
(11) JohnTur, Так в чем затык прав?? Поясните пожалуйста???
+
20. qwinter 671 26.08.13 17:24 Сейчас в теме
В адресе предприятия слеша нет?))) Меняйте на подчеркивание.
+
21. Ruslan-Proff 2 26.08.13 17:27 Сейчас в теме
(20) qwinter, Не понял?? Это как??
+
22. qwinter 671 26.08.13 17:32 Сейчас в теме
(21) Ruslan-Proff, адрес у организации по который выгружаете 2ндфл какой?
+
23. Ruslan-Proff 2 26.08.13 18:11 Сейчас в теме
(22) qwinter, Вот такой: 140125, Московская обл, Раменский р-н, Островцы д, Подмосковная ул, дом № 27
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот