evorle145
30.01.14
✎
16:12
Пытаюсь на 8.3 в управляемых формах на клиенте прочитать файл:
ВыбФайл = «C:\ВО_200114.txt»;
Текст=Новый ТекстовыйДокумент();
Текст.Прочитать(ВыбФайл);
Выдает ошибку:
{ВнешняяОбработка.Загрузка_приходных_накладных_в_1С_8_2.МодульОбъекта(214)}: Ошибка при вызове метода контекста (Прочитать)
Текст.Прочитать(ВыбФайл);
по причине:
Файл не обнаружен ‘C:\ВО_200114.txt’
Но файл там 100% есть! Помогите
fmrlex
30.01.14
✎
16:14
с корня убери
Wobland
30.01.14
✎
16:14
откуда вычислил 100%?
Wobland
30.01.14
✎
16:14
(1) на сервер
fmrlex
30.01.14
✎
16:16
(3) А ну да, скорее всего.
evorle145
30.01.14
✎
16:16
(2) , взял отладчик, и в том месте где идет Прочитать(ВыбФайл), скопировал значение ВыбФайл в буфер обмена, потом вставил в командную строку и нажал энтер => файл открылся.
Wobland
30.01.14
✎
16:17
(5) не гарантирует наличия файла там, где его ищут, а не там, где ты его положил
Mafoni
30.01.14
✎
16:18
процедура сия у тя случаем не на сервере ли выполняется ?
evorle145
30.01.14
✎
16:19
(3), реально! положил сюда \\nbnb\хлам\ВО_200114.txt => прочитал. А почему с моего диска С не хочет читать?
fmrlex
30.01.14
✎
16:20
(8) Корень защищен
Wobland
30.01.14
✎
16:20
(8) потому что на сервере нет твоего диска
Mafoni
30.01.14
✎
16:21
(10) диск С скорее всего есть а вот файла скорее всего нет
fmrlex
30.01.14
✎
16:22
(8) Пробуй C:\1\ВО_200114.txt
evorle145
30.01.14
✎
16:23
(12) , тоже пишет что не найден…
(8),(10), так получается он ищет диск С не моего компьютера, а на сервере, где база sql крутится? хотя я запускаю 1с через толстого клиента со своего компа..
sikuda
30.01.14
✎
16:24
«C:\\ВО_200114.txt». Да с безопасностью такого решения все плохо.
Mafoni
30.01.14
✎
16:24
Пришли весь код функции которая у тя читает файл
Fish
30.01.14
✎
16:27
(13) Если команда выполняется на сервере, то вполне логично, что и файл ищется на сервере. И скорее не на сервере SQL, а на сервере 1С.
Господин ПЖ
30.01.14
✎
16:29
уже давно в корень дисков класть ничего нельзя…
fmrlex
30.01.14
✎
16:29
(13) Ну все понятно. Серверная процедура.
evorle145
30.01.14
✎
16:29
(15) , вы реально здесь телепаты…
обработка получения имени пути у меня на клиенте выполняется, а вот прочитать я его пытаюсь из модуля обработки, код которого выполняется на сервере…
Спасибо большое, никак не привыкну к управляемым формам….
Mafoni
30.01.14
✎
16:31
(19) удачи
13_Mult
30.01.14
✎
16:31
Чаще, синтакс — помошника читать надо ))
Wobland
30.01.14
✎
16:31
(19) >МодульОбъекта(214)
это непропиваемый опыт и внимательность, а не телепатизм
fmrlex
30.01.14
✎
16:33
(22) От блин, а я не заметил ))
Новиков
30.01.14
✎
16:33
(19) твоим следующим вопросом, по-идее, должно быть такое — почему со своего компьютера файл читается, а с компьютера Афанасия Мухтаровича — нет. Я подожду
evorle145
30.01.14
✎
16:34
(22) , блин, так я еще и подсказку оказывается изначально уже дал)))
(24), это тут не причем
Новиков
30.01.14
✎
16:36
(25) конечно не причем. Т.к. ты не задал этот вопрос, т.к. у тебя все хорошо и с этой ситуацией ты пока не столкнулся Я повторюсь — я подожду
Mafoni
30.01.14
✎
16:37
(26) взял попкорн уселся поудобней
evorle145
30.01.14
✎
16:38
(26) , Интригант? о_О
вот, смотрите в (8), там «\\nbnb\хлам\ВО_200114.txt» — это и есть компьютер Григория. И все отлично считалось.
EvgeniuXP
30.01.14
✎
16:39
(2) оказалось не 100%, а 0%
fmrlex
30.01.14
✎
16:40
(28) Ну правильно, сервер свою папку «хлам» видит, пусть даже по сетевому пути.
evorle145
30.01.14
✎
16:41
(30) , nbnb — это не сервер.
fmrlex
30.01.14
✎
16:43
(31) без разницы, все равно он ее видит.
evorle145
30.01.14
✎
16:46
(26), то есть вы хотите сказать, что те папки, которые видны с сервера будут считываться, а те что не видны — нет. Это я понимаю. Решение вижу только два: открывать им доступ с сервера или выполнять метод Прочитать «&наклиенте».
sikuda
30.01.14
✎
16:51
В вэб-клиенте вопрос: Передать файл на сервер \\nbnb\хлам\ВО_200114.txt ? Ура я нашел модальное окно, в режиме использования модальности — не использовать. 8.3.4.389
EvgeniuXP
30.01.14
✎
16:54
(34) откатываемся обратно по окнам?
Описание ошибки:
Обнаружена при разработке обработки для изменения содержимого файла формата XML в серверной базе 1С 8 в режиме управляемого приложения. При тестировании на сервере ошибка не возникала. Проявила себя при работе на рабочем месте пользователя.
Найденные решения:
По факту ошибка возникала при выполнении метода «Прочитать()» для объекта «ТекстовыйДокумент». Как было отмечено, при тестировании работы обработки непосредственно на сервере данной ошибки не возникало. Она проявила себя уже при попытке работы на другом рабочем месте. Обработка разрабатывалась для конфигурации 1С: Комплексная автоматизация 8, ред. 2, которая работает в режиме управляемого приложения — это необходимо отметить. Т.к. это проясняет причины возникновения проблемы.
По привычке разместил операции по чтению содержимого текстового файла и извлечению его содержимого на стороне сервера — см. «&НаСервере» перед процедурой «ОбрабткаНаСервере()». Клиент-серверная архитектура платформы 1С: Предприятие 8.3, казалось бы, к этому обязывала.
В итоге получалось, что платформа на клиентском рабочем месте искала файл по указанному пути на сервере, где развернут сервер 1С: Предприятия 8 исходя из директивы «&НаСервере», а не на рабочем компьютере, где была запущена обработка.
Но, как оказалось позже — конструктор «Новый ТекстовыйДокумент», методы «Прочитать()», «ПолучитьТекст()» — все они доступны не только на стороне сервера, но и на стороне тонкого и толстого клиента. Поэтому замена директивы «&НаСервере» на «&НаКлиенте» решила проблему.
Если по какой-то причине окажется, что я не совсем ясно объяснил суть проблемы, то вот еще обсуждение на форуме mista.ru, где данная пробелма обсуждается несколько другими словами: 1с 8.3 при чтении файла пишет: Файл не обнаружен
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
02-11-2020
Журавлев А.С.
(Сайт azhur-c.ru)
evorle145
30.01.14 — 16:12
Пытаюсь на 8.3 в управляемых формах на клиенте прочитать файл:
ВыбФайл = «C:ВО_200114.txt»;
Текст=Новый ТекстовыйДокумент();
Текст.Прочитать(ВыбФайл);
Выдает ошибку:
{ВнешняяОбработка.Загрузка_приходных_накладных_в_1С_8_2.МодульОбъекта(214)}: Ошибка при вызове метода контекста (Прочитать)
Текст.Прочитать(ВыбФайл);
по причине:
Файл не обнаружен ‘C:ВО_200114.txt’
Но файл там 100% есть! Помогите
fmrlex
1 — 30.01.14 — 16:14
с корня убери
Wobland
2 — 30.01.14 — 16:14
откуда вычислил 100%?
Wobland
3 — 30.01.14 — 16:14
(1) на сервер
fmrlex
4 — 30.01.14 — 16:16
(3) А ну да, скорее всего.
evorle145
5 — 30.01.14 — 16:16
(2) , взял отладчик, и в том месте где идет Прочитать(ВыбФайл), скопировал значение ВыбФайл в буфер обмена, потом вставил в командную строку и нажал энтер => файл открылся.
Wobland
6 — 30.01.14 — 16:17
(5) не гарантирует наличия файла там, где его ищут, а не там, где ты его положил
Mafoni
7 — 30.01.14 — 16:18
процедура сия у тя случаем не на сервере ли выполняется ?
evorle145
8 — 30.01.14 — 16:19
(3), реально! положил сюда \nbnbхламВО_200114.txt => прочитал. А почему с моего диска С не хочет читать?
fmrlex
9 — 30.01.14 — 16:20
(8) Корень защищен
Wobland
10 — 30.01.14 — 16:20
(8) потому что на сервере нет твоего диска
Mafoni
11 — 30.01.14 — 16:21
(10) диск С скорее всего есть а вот файла скорее всего нет
fmrlex
12 — 30.01.14 — 16:22
(8) Пробуй C:1ВО_200114.txt
evorle145
13 — 30.01.14 — 16:23
(12) , тоже пишет что не найден…
(8),(10), так получается он ищет диск С не моего компьютера, а на сервере, где база sql крутится? хотя я запускаю 1с через толстого клиента со своего компа..
sikuda
14 — 30.01.14 — 16:24
«C:\ВО_200114.txt». Да с безопасностью такого решения все плохо.
Mafoni
15 — 30.01.14 — 16:24
Пришли весь код функции которая у тя читает файл
Fish
16 — 30.01.14 — 16:27
(13) Если команда выполняется на сервере, то вполне логично, что и файл ищется на сервере. И скорее не на сервере SQL, а на сервере 1С.
Господин ПЖ
17 — 30.01.14 — 16:29
уже давно в корень дисков класть ничего нельзя…
fmrlex
18 — 30.01.14 — 16:29
(13) Ну все понятно. Серверная процедура.
evorle145
19 — 30.01.14 — 16:29
(15) , вы реально здесь телепаты…
обработка получения имени пути у меня на клиенте выполняется, а вот прочитать я его пытаюсь из модуля обработки, код которого выполняется на сервере…
Спасибо большое, никак не привыкну к управляемым формам….
Mafoni
20 — 30.01.14 — 16:31
(19) удачи
13_Mult
21 — 30.01.14 — 16:31
Чаще, синтакс — помошника читать надо ))
Wobland
22 — 30.01.14 — 16:31
(19) >МодульОбъекта(214)
это непропиваемый опыт и внимательность, а не телепатизм
fmrlex
23 — 30.01.14 — 16:33
(22) От блин, а я не заметил ))
Новиков
24 — 30.01.14 — 16:33
(19) твоим следующим вопросом, по-идее, должно быть такое — почему со своего компьютера файл читается, а с компьютера Афанасия Мухтаровича — нет. Я подожду
evorle145
25 — 30.01.14 — 16:34
(22) , блин, так я еще и подсказку оказывается изначально уже дал)))
(24), это тут не причем
Новиков
26 — 30.01.14 — 16:36
(25) конечно не причем. Т.к. ты не задал этот вопрос, т.к. у тебя все хорошо и с этой ситуацией ты пока не столкнулся Я повторюсь — я подожду
Mafoni
27 — 30.01.14 — 16:37
(26) взял попкорн уселся поудобней
evorle145
28 — 30.01.14 — 16:38
(26) , Интригант? о_О
вот, смотрите в (8), там «\nbnbхламВО_200114.txt» — это и есть компьютер Григория. И все отлично считалось.
EvgeniuXP
29 — 30.01.14 — 16:39
(2) оказалось не 100%, а 0%
fmrlex
30 — 30.01.14 — 16:40
(28) Ну правильно, сервер свою папку «хлам» видит, пусть даже по сетевому пути.
evorle145
31 — 30.01.14 — 16:41
(30) , nbnb — это не сервер.
fmrlex
32 — 30.01.14 — 16:43
(31) без разницы, все равно он ее видит.
evorle145
33 — 30.01.14 — 16:46
(26), то есть вы хотите сказать, что те папки, которые видны с сервера будут считываться, а те что не видны — нет. Это я понимаю. Решение вижу только два: открывать им доступ с сервера или выполнять метод Прочитать «&наклиенте».
sikuda
34 — 30.01.14 — 16:51
В вэб-клиенте вопрос: Передать файл на сервер \nbnbхламВО_200114.txt ? Ура я нашел модальное окно, в режиме использования модальности — не использовать. 8.3.4.389
EvgeniuXP
35 — 30.01.14 — 16:54
(34) откатываемся обратно по окнам?
Не могу вызвать из временного хранилища, ошибка «Файл не обнаружен»
Автор maxxi, 26 сен 2022, 14:41
0 Пользователей и 1 гость просматривают эту тему.
Есть xml-файл На сервере.(«E:projectcontr.xml»)
Из клиента запускаю регламентное задание:
Процедура ЗаписьДанныхНаСервере() Экспорт
ЧтениеXML=Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(""E:projectcontr.xml"");
Результат = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
Для каждого Элемент Из Результат.ЭлементСправочника Цикл
Если ТипЗнч(Элемент.Наименование) <> Тип("Строка") Тогда
Продолжить
КонецЕсли;
НайденнаяКарта = Справочники.ДисконтКарты.НайтиПоРеквизиту("Наменование", Число(Элемент.Наименование));
//ЧтениеXML.ЗначениеАтрибута("УНП");
//Справочники.Контрагенты.НайтиПоРеквизиту("Наименование", Число(ЧтениеXML.Наименование));
Если НайденнаяКарта <> Неопределено Тогда
Продолжить;
КонецЕсли;
НоваяКарта = Справочники.ДисконтКарты.СоздатьЭлемент();
НоваяКарта.Наименование = Элемент.Наименование;
НоваяКарта.Имя = Элемент.Имя;
НоваяКарта.Фамилия = Элемент.Фамилия;
НоваяКарта.ФИО = Элемент.ФИО;
НоваяКарта.ПроцентКарта = Элемент.ПроцентКарта;
НоваяКарта.СрокДействия = Элемент.СрокДействия;
НоваяКарта.ДатаРегистрация = Элемент.ДатаРегистрация;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Адрес = Элемент.Адрес;
НоваяКарта.ДатаРождения = Элемент.ДатаРождения;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Телефон = Элемент.Телефон;
НоваяКарта.Записать();
Выдает ошибку:
{ОбщийМодуль.ОбщийМодуль1.Модуль(3)}: Ошибка при вызове конструктора (ДвоичныеДанные)
по причине:
по причине:
Файл не обнаружен 'E:projectcontr.xml'
Затем помести файлы в Временное Хранилище по коду:
Процедура ЗаписьДанныхНаСервере() Экспорт
ДанныеФайла= Новый ДвоичныеДанные("E:projectcontr.xml");
АдресДанных=ПоместитьВоВременноеХранилище(ДанныеФайла);
Данные=ПолучитьИзВременногоХранилища(АдресДанных);
ПутьКФайлуНаСервере=ПолучитьИмяВременногоФайла("xml");
Данные.Записать(ПутьКФайлуНаСервере);
ЧтениеXML=Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ПутьКФайлуНаСервере);
Результат = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
Для каждого Элемент Из Результат.ЭлементСправочника Цикл
Если ТипЗнч(Элемент.Наименование) <> Тип("Строка") Тогда
Продолжить
КонецЕсли;
НайденнаяКарта = Справочники.ДисконтКарты.НайтиПоРеквизиту("Наменование", Число(Элемент.Наименование));
//ЧтениеXML.ЗначениеАтрибута("УНП");
//Справочники.Контрагенты.НайтиПоРеквизиту("Наименование", Число(ЧтениеXML.Наименование));
Если НайденнаяКарта <> Неопределено Тогда
Продолжить;
КонецЕсли;
НоваяКарта = Справочники.ДисконтКарты.СоздатьЭлемент();
НоваяКарта.Наименование = Элемент.Наименование;
НоваяКарта.Имя = Элемент.Имя;
НоваяКарта.Фамилия = Элемент.Фамилия;
НоваяКарта.ФИО = Элемент.ФИО;
НоваяКарта.ПроцентКарта = Элемент.ПроцентКарта;
НоваяКарта.СрокДействия = Элемент.СрокДействия;
НоваяКарта.ДатаРегистрация = Элемент.ДатаРегистрация;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Адрес = Элемент.Адрес;
НоваяКарта.ДатаРождения = Элемент.ДатаРождения;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Телефон = Элемент.Телефон;
НоваяКарта.Записать();
КонецЦикла;
КонецПроцедуры
Все равно Выдает ошибку:
{ОбщийМодуль.ОбщийМодуль1.Модуль(3)}: Ошибка при вызове конструктора (ДвоичныеДанные)
по причине:
по причине:
Файл не обнаружен 'E:projectcontr.xml'
Подскажите пожалуйста, где допускаю ошибку.
Спасибо всем.
maxxi, может это, надо так, с такими кавычками
ЧтениеXML.ОткрытьФайл("E:projectcontr.xml");
- 1 пользователь сказал спасибо!
если помогло нажмите: Спасибо!
antoneus, Файловая система, а это серверная.
LexaK, это при копировании так получилось))
maxxi, еще раз, точнее проверьте имя файла! загружаете Дисконтные карты,
и файл называется contr.xml — очень похоже на Контрагентов!
- 1 пользователь сказал спасибо!
если помогло нажмите: Спасибо!
Вообще, временное хранилище нужно, чтобы запулить данные с клиента на сервер, например. А то я не улавливаю логики: создаем двоичные данные из файла на сервере, кладем их в хранилище, тут же вытаскиваем, тут же на сервере их сохраняем во временный файл и открываем чтением xml. Ну странно как-то.
- 1 пользователь сказал спасибо!
antoneus, Это я только тестировала, потому что где то прочитала, что если передаем на сервер тогда только через временное хранилище.
Удивительно, если вызвать через кнопку, все работает отлично, без всяких хранилищ.
ручном режиме, без проблем находить эту папку и загружает.
прописала, путь такого вида:
\serverprojectcontr.xml
Пока все норм.
Доброго времени суток. Help!!!
Платформа 8.3.5.1460
Конфигурация БГУ 2.0.31.24
Типовая, управляемые формы.
Находится на сервере 1С.
Выскакивает ошибка: Ошибка при вызове метода контекста (ПолучитьФайл) или
Ошибка при вызове метода контекста (ПолучитьФайлы)
по причине: Файл не обнаружен ‘e1c://server/…’
Все это появляется, когда пытаешься выгрузить что-то из этой базы, будь то отчет регламентированный или импорт/экспорт файлов, в общем любого файла.
Были попытки различных шаманских действий: тестировать, выгружать (кстати, при файловом режиме все отлично выгружается и никаких ошибок нет), запускать от имени администратора, чистить AppData.
Спасайте!!! Посоветуйте что с этим делать, пожалуйста.
При обновлении на последних релизах иногда вылетает:
Файл не обнаружен ‘C:UsersUser1AppDataLocalTempv8_52E1_12.tmpCommonCommand.ирВставитьСсылку.xml’
{ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(28281)}: ЧтениеXML.ОткрытьФайл(ИмяФайла, ПараметрыЧтения);
{ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(28722)}: ДокументДОМ = ирОбщий.ПрочитатьФайлВДокументDOMЛкс(ИмяФайла);
{ИнструментыРазработчикаTormozit ОбщаяФорма.ирАдаптацияРасширения.Форма(82)}: Если ирОбщий.АдаптироватьРасширениеЛкс(ИмяПользователя, ПарольПользователя) Тогда
{ИнструментыРазработчикаTormozit Обработка.ирПлатформа.Форма.ОПодсистеме.Форма(287)}: ОткрытьФормуМодально(«ОбщаяФорма.ирАдаптацияРасширения»);
по причине:
Файл не обнаружен ‘C:UsersUser1AppDataLocalTempv8_52E1_12.tmpCommonCommand.ирВставитьСсылку.xml’
Не понятно что чистить. Пробовал удалять и устанавливать «с нуля» ИР, пробовал чистить Temp в AppData — не помогает
Платформа: 8.3.17.1549
Режим БД: клиент-серверный
Конфигурация. Название: Бухгалтерия предприятия, редакция 3.0 (3.0.83.37)
Конфигурация. Основной режим запуска: Управляемое приложение
Конфигурация. Вариант встроенного языка: Русский
Конфигурация. Режим совместимости: Версия8_3_14
Конфигурация. Версия БСП: 3.1.2.512
Инструменты разработчика. Версия: Расширение 5.60e
Инструменты разработчика. Инструмент: Прочее
Инструменты разработчика. Объекты на сервере: Да
Расширения. EF_00_00321545 ()
Расширения. EF_00_00321334 ()
Расширения. EF_00_00312093_2 ()
Расширения. EF_00_00326724 ()
Расширения. EF_00_00326711 ()
Расширения. EF_00_00326142 ()
Расширения. EF_00_00317335 ()
Расширения. EF_00_00327370 ()
Расширения. EF_40000226 ()
Расширения. EF_00_00328443_6 ()
Расширения. EF_00_00329191 ()
Расширения. EF_00_00329612 ()
Расширения. EF_40027558_6 ()
Расширения. EF_30174508_4 ()
Расширения. EF_10226267_3 ()
Расширения. EF_00_00331575 ()
Расширения. EF_30174534 ()
Расширения. EF_00_00324483 ()
Расширения. лл_ДопФункции ()
Расширения. avm_НастройкаПрав ()
Расширения. ИнструментыРазработчикаTormozit (5.63e)
Клиент. ОС: Windows x86 Microsoft Windows 10 version 10.0 (Build 19041)
Клиент. Приложение: Управляемое приложение 32б
Клиент. От имени администратора Windows: Нет
Клиент. Текущий язык системы: ru_RU
Сервер. ОС: Windows x86 Microsoft Windows 7 version 6.1 Service Pack 1 (Build 7601)
Сервер. Отладка: нет
Доброе утро. С прошлого года не занималась выгрузкой платежных поручений из 1с(в прошлом году благополучно это получалось). Сейчас столкнулась с такой проблемой:создала плат. поручение, далее отправить в банк, далее выбираю банк. счет, период, файл выгрузки в банк по трем точкам выбираю папку на раб.столе-обмен с банком, далее открыть файл, сохранить, нажимаю выгрузить и тут 1с выдает :»файл не обнаружен. Прилагаю скрин. Подскажите, что исправить, чтобы пользоваться выгрузкой как раньше?Спасибо!
Заполнить, проверить и подать уведомление о сумме налога
Юлия Радская, 1С:Предприятие 8.3 (8.3.10.2561)
Конфигурация:Бухгалтерия предприятия (базовая), редакция 3.0 (3.0.52.32) (http://v8.1c.ru/buhv8/)
ЛенаКагл, добрый день. Не смогла смоделировать ситуацию:
Цитата (ЛенаКагл):далее открыть файл,
В какой момент у Вас это окошко появляется?
У меня по трем точкам выбирается папка, куда должен сохраниться файл выгрузки и далее «выгрузить» — файл появляется в папке. Затем в банк-клиенте опять указываю этот файл и все благополучно подгружается.
г. Новосибирск3 492 балла
ЛенаКагл,
удалите базу из списка баз и снова добавьте её туда
Если не поможет, то
В конфигураторе сделайте ТиИ — Тестирование и исправление
(меню Администрирование — Тестирование и испраление) со следующими опциями-переключателями:
«Тестирование и исправление», и отличными от «Не изменять»
[img big=/Files/ForumUpload/1861337_big.! ТиИ.id-o_1bq2gjkq211u8mf7nue195ui86i.jpg]/Files/ForumUpload/1861337.! ТиИ.id-o_1bq2gjkq211u8mf7nue195ui86i.jpg[/img]
Заполняйте платежки с актуальными на сегодня КБК, кодами дохода и другими обязательными реквизитами
kleovor, после нажатия Выгрузить
ЛенаКагл,
такое ощущение, что мы с Вами в разных программах работаем =)))
Давайте пошагово:
1. После того, как создали ПП и нажали «отправить в банк» у Вас появляется вот такое окно:
2. Далее внизу нажимаете на три точки и выбираете куда сохранить файл.
Программа сама присвоит имя файлу.
3. После нажатия кнопки «сохранить» у Вас будет вот так (с поправкой на имя файла и путь)
Нажимаете «выгрузить»
4. После нажатия «Выгрузить» у меня появляется вот такое окошко:
Все, в 1С сделано все что надо. Теперь ничего не закрывая переходите в банк-клиент и подгружаете файл, сохраненный в папку по шагу 2-3.
Никакого «открыть файл» у меня не возникает.
М.б. попробовать совет nsk1C?
1С давно обновляли?
kleovor, спасибо, видно что-то с программой. Пока копируем в самом онлайн-банке.
Вот именно в тот момент(п.4 )после выгрузки у меня появляется то, что вставила как скрин, увы. Обновляю как только появляются обновления. С загрузкой выписок, к счастью, нет проблем.
Заполнить, проверить и сдать всю отчетность по взносам через интернет
Дорабатывал обработку загрузки прихода из Excel. Обработка изначально была не моя, все хорошо работало, но внезапно клиент в облаке переехал с файловой базы на SQL, потому что файловая тормозила.
И тут 1С начала писать, что файл не обнаружен. Оказывается, код загрузки из Excel был написан только под толстого клиента. Пришлось дорабатывать стандартным образом:
//На клиенте
ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);//На сервере
ПолноеИмяФайла = ПолучитьИмяВременногоФайла(«XLS»);
ДД.Записать(ПолноеИмяФайла);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст);
Доработал и забыл. Как вдруг новая напасть — попросили доработать обработку, начинаю ее отлаживать, а она не считывает данные из XLSX файла.
Причем выдает ошибку доступа к временному файлу:
Я попробовал записывать во временный каталог, но это не принесло результата:
ТекКаталог = ПолучитьИмяВременногоФайла();
СоздатьКаталог(ТекКаталог);
ПолноеИмяФайла = ТекКаталог + «» + Новый УникальныйИдентификатор() + ТипФайла; //ПолучитьИмяВременногоФайла(«XLS»);ДД.Записать(ПолноеИмяФайла);Ф = Новый Файл(ПолноеИмяФайла);
Сообщить(ПолноеИмяФайла + » Существует: » + Ф.Существует());ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст); //, ТипФайлаТабличногоДокумента.ODS);
Причем 1С писала, что файл существует:
Тогда почему же она не может его считать? Задачу нужно было решить срочно, причем прикладную логику я уже сделал, а споткнулся на мелочи. Я уже было хотел перейти на локальный компьютер для разработки (тем более что на сервере из соображений быстродействия отключена отладка). Но тут мне пришла мысль впервые попробовать использовать не временные файлы, а потоки:
ПотокДанных = Новый ПотокВПамяти();
ЗаписьДД = Новый ЗаписьДанных(ПотокДанных);
ЗаписьДД.Записать(ДД);
ЗаписьДД.Закрыть();
ПотокДанных.Перейти(0, ПозицияВПотоке.Начало);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПотокДанных, СпособЧтенияЗначенийТабличногоДокумента.Текст, ТипФайлаТабличногоДокумента.ODS);
ПотокДанных.Закрыть();
Увы, при этом выдавалась все та же ошибка доступа. Кроме того, в документации я посмотрел, что из памяти можно считывать не все форматы, а только MXL и ODS. Бред, конечно, но такова 1С.
И тут до меня дошло попробовать поменять расширение на XLSX:
//на клиенте
ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);
Ф = Новый Файл(ПолноеИмяФайла);
ТипФайла = Ф.Расширение);//на сервере
ТекКаталог = ПолучитьИмяВременногоФайла();
СоздатьКаталог(ТекКаталог);
ПолноеИмяФайла = ТекКаталог + «» + Новый УникальныйИдентификатор() + ТипФайла;
ДД.Записать(ПолноеИмяФайла);ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст);
И всё заработало. У 1С, как обычно, беда с диагностикой ошибок. Она пишет совсем не ту ошибку, которая вызывает проблему. Доступ к файлу есть, просто формат файла 1С определяет по расширению, а не содержимому файла.
Время факт: 0,5 час. На поиски решения проблемы.
Показывать по
10
20
40
сообщений
Новая тема
Ответить
Лариса
Дата регистрации: 13.01.2015
Сообщений: 212
Добрый день.После обновления посл.релиза 638 при входе в реглам. отчетность выдает ошибку «не обнаружен файл ExtForms/Rp12q1.grp/ Rplist.txt. Что это.Как исправить?Спасибо
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20846
Лариса, проверти наличие папки
Лариса
Дата регистрации: 13.01.2015
Сообщений: 212
Prikum,Rp12q1.grp есть, но не открывается.Пишет файлили папка повреждены, чтение невозможно.
Что мне предпринять?
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20846
Лариса, проверьте компьютер на вирусы, проверить диск на ошибки.
Геннадий С
активный пользователь
офлайн
Дата регистрации: 26.03.2017
Сообщений: 642
Лариса, и загрузите актуальный релиз регламентированных отчетов, а папку Rp12q1.grp за 2012 год удалите из ExtForms.
Показывать по
10
20
40
сообщений
Не могу вызвать из временного хранилища, ошибка «Файл не обнаружен»
Автор maxxi, 26 сен 2022, 14:41
0 Пользователей и 1 гость просматривают эту тему.
Есть xml-файл На сервере.(«E:\project\contr.xml»)
Из клиента запускаю регламентное задание:
Процедура ЗаписьДанныхНаСервере() Экспорт
ЧтениеXML=Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(""E:\project\contr.xml"");
Результат = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
Для каждого Элемент Из Результат.ЭлементСправочника Цикл
Если ТипЗнч(Элемент.Наименование) <> Тип("Строка") Тогда
Продолжить
КонецЕсли;
НайденнаяКарта = Справочники.ДисконтКарты.НайтиПоРеквизиту("Наменование", Число(Элемент.Наименование));
//ЧтениеXML.ЗначениеАтрибута("УНП");
//Справочники.Контрагенты.НайтиПоРеквизиту("Наименование", Число(ЧтениеXML.Наименование));
Если НайденнаяКарта <> Неопределено Тогда
Продолжить;
КонецЕсли;
НоваяКарта = Справочники.ДисконтКарты.СоздатьЭлемент();
НоваяКарта.Наименование = Элемент.Наименование;
НоваяКарта.Имя = Элемент.Имя;
НоваяКарта.Фамилия = Элемент.Фамилия;
НоваяКарта.ФИО = Элемент.ФИО;
НоваяКарта.ПроцентКарта = Элемент.ПроцентКарта;
НоваяКарта.СрокДействия = Элемент.СрокДействия;
НоваяКарта.ДатаРегистрация = Элемент.ДатаРегистрация;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Адрес = Элемент.Адрес;
НоваяКарта.ДатаРождения = Элемент.ДатаРождения;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Телефон = Элемент.Телефон;
НоваяКарта.Записать();
Выдает ошибку:
{ОбщийМодуль.ОбщийМодуль1.Модуль(3)}: Ошибка при вызове конструктора (ДвоичныеДанные)
по причине:
по причине:
Файл не обнаружен 'E:\project\contr.xml'
Затем помести файлы в Временное Хранилище по коду:
Процедура ЗаписьДанныхНаСервере() Экспорт
ДанныеФайла= Новый ДвоичныеДанные("E:\project\contr.xml");
АдресДанных=ПоместитьВоВременноеХранилище(ДанныеФайла);
Данные=ПолучитьИзВременногоХранилища(АдресДанных);
ПутьКФайлуНаСервере=ПолучитьИмяВременногоФайла("xml");
Данные.Записать(ПутьКФайлуНаСервере);
ЧтениеXML=Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ПутьКФайлуНаСервере);
Результат = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
Для каждого Элемент Из Результат.ЭлементСправочника Цикл
Если ТипЗнч(Элемент.Наименование) <> Тип("Строка") Тогда
Продолжить
КонецЕсли;
НайденнаяКарта = Справочники.ДисконтКарты.НайтиПоРеквизиту("Наменование", Число(Элемент.Наименование));
//ЧтениеXML.ЗначениеАтрибута("УНП");
//Справочники.Контрагенты.НайтиПоРеквизиту("Наименование", Число(ЧтениеXML.Наименование));
Если НайденнаяКарта <> Неопределено Тогда
Продолжить;
КонецЕсли;
НоваяКарта = Справочники.ДисконтКарты.СоздатьЭлемент();
НоваяКарта.Наименование = Элемент.Наименование;
НоваяКарта.Имя = Элемент.Имя;
НоваяКарта.Фамилия = Элемент.Фамилия;
НоваяКарта.ФИО = Элемент.ФИО;
НоваяКарта.ПроцентКарта = Элемент.ПроцентКарта;
НоваяКарта.СрокДействия = Элемент.СрокДействия;
НоваяКарта.ДатаРегистрация = Элемент.ДатаРегистрация;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Адрес = Элемент.Адрес;
НоваяКарта.ДатаРождения = Элемент.ДатаРождения;
НоваяКарта.Активный = Элемент.Активный;
НоваяКарта.Телефон = Элемент.Телефон;
НоваяКарта.Записать();
КонецЦикла;
КонецПроцедуры
Все равно Выдает ошибку:
{ОбщийМодуль.ОбщийМодуль1.Модуль(3)}: Ошибка при вызове конструктора (ДвоичныеДанные)
по причине:
по причине:
Файл не обнаружен 'E:\project\contr.xml'
Подскажите пожалуйста, где допускаю ошибку.
Спасибо всем.
maxxi, может это, надо так, с такими кавычками
ЧтениеXML.ОткрытьФайл("E:\project\contr.xml");
- 1 пользователь сказал спасибо!
если помогло нажмите: Спасибо!
antoneus, Файловая система, а это серверная.
LexaK, это при копировании так получилось))
maxxi, еще раз, точнее проверьте имя файла! загружаете Дисконтные карты,
и файл называется contr.xml — очень похоже на Контрагентов!
- 1 пользователь сказал спасибо!
если помогло нажмите: Спасибо!
Вообще, временное хранилище нужно, чтобы запулить данные с клиента на сервер, например. А то я не улавливаю логики: создаем двоичные данные из файла на сервере, кладем их в хранилище, тут же вытаскиваем, тут же на сервере их сохраняем во временный файл и открываем чтением xml. Ну странно как-то.
- 1 пользователь сказал спасибо!
antoneus, Это я только тестировала, потому что где то прочитала, что если передаем на сервер тогда только через временное хранилище.
Удивительно, если вызвать через кнопку, все работает отлично, без всяких хранилищ.
ручном режиме, без проблем находить эту папку и загружает.
прописала, путь такого вида:
\\server\project\contr.xml
Пока все норм.
Дорабатывал обработку загрузки прихода из Excel. Обработка изначально была не моя, все хорошо работало, но внезапно клиент в облаке переехал с файловой базы на SQL, потому что файловая тормозила.
И тут 1С начала писать, что файл не обнаружен. Оказывается, код загрузки из Excel был написан только под толстого клиента. Пришлось дорабатывать стандартным образом:
//На клиенте
ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);//На сервере
ПолноеИмяФайла = ПолучитьИмяВременногоФайла(«XLS»);
ДД.Записать(ПолноеИмяФайла);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст);
Доработал и забыл. Как вдруг новая напасть — попросили доработать обработку, начинаю ее отлаживать, а она не считывает данные из XLSX файла.
Причем выдает ошибку доступа к временному файлу:
Я попробовал записывать во временный каталог, но это не принесло результата:
ТекКаталог = ПолучитьИмяВременногоФайла();
СоздатьКаталог(ТекКаталог);
ПолноеИмяФайла = ТекКаталог + «\» + Новый УникальныйИдентификатор() + ТипФайла; //ПолучитьИмяВременногоФайла(«XLS»);ДД.Записать(ПолноеИмяФайла);Ф = Новый Файл(ПолноеИмяФайла);
Сообщить(ПолноеИмяФайла + » Существует: » + Ф.Существует());ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст); //, ТипФайлаТабличногоДокумента.ODS);
Причем 1С писала, что файл существует:
Тогда почему же она не может его считать? Задачу нужно было решить срочно, причем прикладную логику я уже сделал, а споткнулся на мелочи. Я уже было хотел перейти на локальный компьютер для разработки (тем более что на сервере из соображений быстродействия отключена отладка). Но тут мне пришла мысль впервые попробовать использовать не временные файлы, а потоки:
ПотокДанных = Новый ПотокВПамяти();
ЗаписьДД = Новый ЗаписьДанных(ПотокДанных);
ЗаписьДД.Записать(ДД);
ЗаписьДД.Закрыть();
ПотокДанных.Перейти(0, ПозицияВПотоке.Начало);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПотокДанных, СпособЧтенияЗначенийТабличногоДокумента.Текст, ТипФайлаТабличногоДокумента.ODS);
ПотокДанных.Закрыть();
Увы, при этом выдавалась все та же ошибка доступа. Кроме того, в документации я посмотрел, что из памяти можно считывать не все форматы, а только MXL и ODS. Бред, конечно, но такова 1С.
И тут до меня дошло попробовать поменять расширение на XLSX:
//на клиенте
ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);
Ф = Новый Файл(ПолноеИмяФайла);
ТипФайла = Ф.Расширение);//на сервере
ТекКаталог = ПолучитьИмяВременногоФайла();
СоздатьКаталог(ТекКаталог);
ПолноеИмяФайла = ТекКаталог + «\» + Новый УникальныйИдентификатор() + ТипФайла;
ДД.Записать(ПолноеИмяФайла);ДД = Новый ДвоичныеДанные(ПолноеИмяФайла);
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПолноеИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Текст);
И всё заработало. У 1С, как обычно, беда с диагностикой ошибок. Она пишет совсем не ту ошибку, которая вызывает проблему. Доступ к файлу есть, просто формат файла 1С определяет по расширению, а не содержимому файла.
Время факт: 0,5 час. На поиски решения проблемы.
Файл не обнаружен ‘C:\Users\User1\AppData\Local\Temp\v8_52E1_12.tmp\CommonCommand.ирВставитьСсылку.xml’
{ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(28281)}: ЧтениеXML.ОткрытьФайл(ИмяФайла, ПараметрыЧтения);
{ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(28722)}: ДокументДОМ = ирОбщий.ПрочитатьФайлВДокументDOMЛкс(ИмяФайла);
{ИнструментыРазработчикаTormozit ОбщаяФорма.ирАдаптацияРасширения.Форма(82)}: Если ирОбщий.АдаптироватьРасширениеЛкс(ИмяПользователя, ПарольПользователя) Тогда
{ИнструментыРазработчикаTormozit Обработка.ирПлатформа.Форма.ОПодсистеме.Форма(287)}: ОткрытьФормуМодально(«ОбщаяФорма.ирАдаптацияРасширения»);
по причине:
Файл не обнаружен ‘C:\Users\User1\AppData\Local\Temp\v8_52E1_12.tmp\CommonCommand.ирВставитьСсылку.xml’
Не понятно что чистить. Пробовал удалять и устанавливать «с нуля» ИР, пробовал чистить Temp в AppData — не помогает
Платформа: 8.3.17.1549
Режим БД: клиент-серверный
Конфигурация. Название: Бухгалтерия предприятия, редакция 3.0 (3.0.83.37)
Конфигурация. Основной режим запуска: Управляемое приложение
Конфигурация. Вариант встроенного языка: Русский
Конфигурация. Режим совместимости: Версия8_3_14
Конфигурация. Версия БСП: 3.1.2.512
Инструменты разработчика. Версия: Расширение 5.60e
Инструменты разработчика. Инструмент: Прочее
Инструменты разработчика. Объекты на сервере: Да
Расширения. EF_00_00321545 ()
Расширения. EF_00_00321334 ()
Расширения. EF_00_00312093_2 ()
Расширения. EF_00_00326724 ()
Расширения. EF_00_00326711 ()
Расширения. EF_00_00326142 ()
Расширения. EF_00_00317335 ()
Расширения. EF_00_00327370 ()
Расширения. EF_40000226 ()
Расширения. EF_00_00328443_6 ()
Расширения. EF_00_00329191 ()
Расширения. EF_00_00329612 ()
Расширения. EF_40027558_6 ()
Расширения. EF_30174508_4 ()
Расширения. EF_10226267_3 ()
Расширения. EF_00_00331575 ()
Расширения. EF_30174534 ()
Расширения. EF_00_00324483 ()
Расширения. лл_ДопФункции ()
Расширения. avm_НастройкаПрав ()
Расширения. ИнструментыРазработчикаTormozit (5.63e)
Клиент. ОС: Windows x86 Microsoft Windows 10 version 10.0 (Build 19041)
Клиент. Приложение: Управляемое приложение 32б
Клиент. От имени администратора Windows: Нет
Клиент. Текущий язык системы: ru_RU
Сервер. ОС: Windows x86 Microsoft Windows 7 version 6.1 Service Pack 1 (Build 7601)
Сервер. Отладка: нет