1с обработатьтексты ошибка файл не обнаружен

1с 8.3 при чтении файла пишет: Файл не обнаружен ‘C:\ВО_200114.txt’ ☑ 0

evorle145

30.01.14

16:12

Пытаюсь на 8.3 в управляемых формах на клиенте прочитать файл:

ВыбФайл = «C:\ВО_200114.txt»;

Текст=Новый ТекстовыйДокумент();

    Текст.Прочитать(ВыбФайл);

Выдает ошибку:

{ВнешняяОбработка.Загрузка_приходных_накладных_в_1С_8_2.МодульОбъекта(214)}: Ошибка при вызове метода контекста (Прочитать)

    Текст.Прочитать(ВыбФайл);

по причине:

Файл не обнаружен ‘C:\ВО_200114.txt’

Но файл там 100% есть! Помогите

1

fmrlex

30.01.14

16:14

с корня убери

2

Wobland

30.01.14

16:14

откуда вычислил 100%?

3

Wobland

30.01.14

16:14

(1) на сервер

4

fmrlex

30.01.14

16:16

(3) А ну да, скорее всего.

5

evorle145

30.01.14

16:16

(2) , взял отладчик, и в том месте где идет Прочитать(ВыбФайл), скопировал значение ВыбФайл  в буфер обмена, потом вставил в командную строку и нажал энтер => файл открылся.

6

Wobland

30.01.14

16:17

(5) не гарантирует наличия файла там, где его ищут, а не там, где ты его положил

7

Mafoni

30.01.14

16:18

процедура сия у тя случаем не на сервере ли выполняется ?

8

evorle145

30.01.14

16:19

(3), реально! положил сюда  \\nbnb\хлам\ВО_200114.txt => прочитал. А почему с моего диска С не хочет читать?

9

fmrlex

30.01.14

16:20

(8) Корень защищен

10

Wobland

30.01.14

16:20

(8) потому что на сервере нет твоего диска

11

Mafoni

30.01.14

16:21

(10) диск С скорее всего есть а вот файла скорее всего нет

12

fmrlex

30.01.14

16:22

(8) Пробуй C:\1\ВО_200114.txt

13

evorle145

30.01.14

16:23

(12) , тоже пишет что не найден…

(8),(10), так получается он ищет диск С не моего компьютера, а на сервере, где база sql крутится? хотя я запускаю 1с через толстого клиента со своего компа..

14

sikuda

30.01.14

16:24

«C:\\ВО_200114.txt». Да с безопасностью такого решения все плохо.

15

Mafoni

30.01.14

16:24

Пришли весь код функции которая у тя читает файл

16

Fish

30.01.14

16:27

(13) Если команда выполняется на сервере, то вполне логично, что и файл ищется на сервере. И скорее не на сервере SQL, а на сервере 1С.

17

Господин ПЖ

30.01.14

16:29

уже давно в корень дисков класть ничего нельзя…

18

fmrlex

30.01.14

16:29

(13) Ну все понятно. Серверная процедура.

19

evorle145

30.01.14

16:29

(15) , вы реально здесь телепаты…

обработка получения имени пути у меня на клиенте выполняется, а вот прочитать я его пытаюсь из модуля обработки, код которого выполняется на сервере…

Спасибо большое, никак не привыкну к управляемым формам….

20

Mafoni

30.01.14

16:31

(19) удачи

21

13_Mult

30.01.14

16:31

Чаще, синтакс — помошника читать надо ))

22

Wobland

30.01.14

16:31

(19) >МодульОбъекта(214)

это непропиваемый опыт и внимательность, а не телепатизм ;)

23

fmrlex

30.01.14

16:33

(22) От блин, а я не заметил ))

24

Новиков

30.01.14

16:33

(19) твоим следующим вопросом, по-идее, должно быть такое — почему со своего компьютера файл читается, а с компьютера Афанасия Мухтаровича — нет. Я подожду :)

25

evorle145

30.01.14

16:34

(22) , блин, так я еще и подсказку оказывается изначально уже дал)))

(24), это тут не причем

26

Новиков

30.01.14

16:36

(25) конечно не причем. Т.к. ты не задал этот вопрос, т.к. у тебя все хорошо и с этой ситуацией ты пока не столкнулся :) Я повторюсь — я подожду :)

27

Mafoni

30.01.14

16:37

(26) взял попкорн уселся поудобней :)

28

evorle145

30.01.14

16:38

(26) , Интригант? о_О

вот, смотрите в (8), там «\\nbnb\хлам\ВО_200114.txt» — это и есть компьютер Григория. И все отлично считалось.

29

EvgeniuXP

30.01.14

16:39

(2) оказалось не 100%, а 0% :)

30

fmrlex

30.01.14

16:40

(28) Ну правильно, сервер свою папку «хлам» видит, пусть даже по сетевому пути.

31

evorle145

30.01.14

16:41

(30) , nbnb — это не сервер.

32

fmrlex

30.01.14

16:43

(31) без разницы, все равно он ее видит.

33

evorle145

30.01.14

16:46

(26), то есть вы хотите сказать, что те папки, которые видны с сервера будут считываться, а те что не видны  — нет. Это я понимаю. Решение вижу только два: открывать им доступ с сервера или выполнять метод Прочитать «&наклиенте».

34

sikuda

30.01.14

16:51

В вэб-клиенте вопрос: Передать файл на сервер \\nbnb\хлам\ВО_200114.txt ?  Ура я нашел модальное окно, в режиме использования модальности — не использовать. 8.3.4.389

35

EvgeniuXP

30.01.14

16:54

(34) откатываемся обратно по окнам? :)

Описание ошибки:
Обнаружена при разработке обработки для изменения содержимого файла формата XML в серверной базе 1С 8 в режиме управляемого приложения. При тестировании на сервере ошибка не возникала. Проявила себя при работе на рабочем месте пользователя.

Найденные решения:

1С 8 ошибка файл не обнаружен при чтении файла

По факту ошибка возникала при выполнении метода «Прочитать()» для объекта «ТекстовыйДокумент». Как было отмечено, при тестировании работы обработки непосредственно на сервере данной ошибки не возникало. Она проявила себя уже при попытке работы на другом рабочем месте. Обработка разрабатывалась для конфигурации 1С: Комплексная автоматизация 8, ред. 2, которая работает в режиме управляемого приложения — это необходимо отметить. Т.к. это проясняет причины возникновения проблемы.

По привычке разместил операции по чтению содержимого текстового файла и извлечению его содержимого на стороне сервера — см. «&НаСервере» перед процедурой «ОбрабткаНаСервере()». Клиент-серверная архитектура платформы 1С: Предприятие 8.3, казалось бы, к этому обязывала. 

1с 8.3 при чтении файла пишет, выводит ошибку: Файл не обнаружен

В итоге получалось, что платформа на клиентском рабочем месте искала файл по указанному пути на сервере, где развернут сервер 1С: Предприятия 8 исходя из директивы «&НаСервере», а не на рабочем компьютере, где была запущена обработка.

Но, как оказалось позже — конструктор «Новый ТекстовыйДокумент», методы «Прочитать()», «ПолучитьТекст()» — все они доступны не только на стороне сервера, но и на стороне тонкого и толстого клиента. Поэтому замена директивы «&НаСервере» на «&НаКлиенте» решила проблему.

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)
Сервер. Отладка: нет

Понравилась статья? Поделить с друзьями:

Интересное по теме:

  • 1с ошибка данных xml нарушение прав доступа
  • 1с ошибка генерации макета
  • 1с 7 проверка конфигурации неисправимая ошибка
  • 1с http запрос ошибка 401
  • 1с ошибка выполнения фонового задания длительные операции

  • Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: