Меню

Ошибка при вызове метода контекста прочитать формат файла не поддерживается

Ошибка чтения ТабДок.Прочитать()

Я
   МимохожийОднако

09.11.20 — 14:03

При открытии файла XLS через ТабДок.Прочитать()

Ошибка при выполнении файловой операции . Формат файла не поддерживается.

Если исходный файл открыть в Excel  и сохранить, ошибки нет.

Мне надо читать его программно. Кто-нибудь решал эту проблемку?

   RomanYS

1 — 09.11.20 — 14:05

(0) попробуй переименовать в *.xlsx, экселю пофигу а 1С такую ошибку выдает если формат не соответствует расширению

   alkorolev

2 — 09.11.20 — 14:18

(0) сколько листов в файле? примечания есть?

   МимохожийОднако

3 — 09.11.20 — 14:20

(2) Лист один. Примечаний нет

(1) Расширение *.xls .  В свойствах тип файла Лист Microsoft Excel 97–2003 (.xls)

   RomanYS

4 — 09.11.20 — 14:24

(3) у xls и xlsx внутренняя структура. Если файл с новым форматом сохранить с расширением xls, то эксель его откроет, а не 1С нет. Просто попробуй, нет — будешь искать варианты дальше

   ДенисЧ

5 — 09.11.20 — 14:31

Откуда файл взялся? С интернета каким-нибудь пых-скриптом создан?

Такое в таких случаях бывает, это же опенсорц, там делают на ХХП…

   yzimin

6 — 09.11.20 — 14:34

В 8.3.17.1549 пофиксили

   МимохожийОднако

7 — 09.11.20 — 14:42

(5) Файл прислан по почте. Создается регламентом у контрагентов. Как-не знаю. Скорее всего ХХП

(6) 1С:Предприятие 8.3 (8.3.18.1128)

(4) Попробую.

   vicof

8 — 09.11.20 — 14:45

(0) Через ком-объект прочитай.

   МимохожийОднако

9 — 09.11.20 — 14:52

(8) Этот вариант я оттягиваю до последнего )

   МимохожийОднако

10 — 09.11.20 — 15:04

(4) Переименование с другим расширением даёт тот же результат:»Формат не поддерживается»

   mszsuz

11 — 09.11.20 — 15:06

Это формат Excel 95, неподдерживается.

   RomanYS

12 — 09.11.20 — 15:06

(10) А файл то открывал, может там вообще csv внутри

   RomanYS

13 — 09.11.20 — 15:07

(10) выложи файл, если не секретный

   МимохожийОднако

14 — 09.11.20 — 15:11

(12) Экселем файл открывается без проблем. Сохраняю его без каких либо изменений. После этого он открывается из 1С без ошибок.

   RomanYS

15 — 09.11.20 — 15:12

(14) открой блокнотом

   МимохожийОднако

16 — 09.11.20 — 15:15

   МимохожийОднако

17 — 09.11.20 — 15:16

(15) В блокноте с кракозябрами

   УдавВПопугаях

18 — 09.11.20 — 15:16

была недавно эта проблема, файл формировали какой то приблудой, в свойствах файла должно быть название, какой то там xl

   МимохожийОднако

19 — 09.11.20 — 15:16

(18) Как решили эту проблему?

   УдавВПопугаях

20 — 09.11.20 — 15:18

тему поднимал «малоопытный» человек, наверно никак, но было ясно, что при формировании получаем файл не совсем той структуры, которая получается из самого экселя, типа как какого то оглавления не хватает или еще чего то подобного

   УдавВПопугаях

21 — 09.11.20 — 15:22

   УдавВПопугаях

22 — 09.11.20 — 15:23

проблема не совсем такая, но причина может быть аналогичная. Excelize во.

   RomanYS

23 — 09.11.20 — 15:26

(16) Да, внутри похож на xls… похоже без экселя 1С его не съест.

(21) С таким тоже сталкивался, победить не смог.

   УдавВПопугаях

24 — 09.11.20 — 15:28

(23) велосипед наверно только, как xml может или еще что

ну факт в том, что штатный механизм в таком случае не работает

   УдавВПопугаях

25 — 09.11.20 — 15:34

эмммм… звиняйте за «малоопытного»)

ras27

   RomanYS

26 — 09.11.20 — 15:40

(24) Так старый формат (xls) вроде не xml внутри и закрыт. И парсить xml это та ещё задача, ТС как раз ищет лёгких путей))). Здравой выглядит идея пересохранять файл экселем или сервисом каким, а потом читать штатно табличным документом

   УдавВПопугаях

27 — 09.11.20 — 15:45

(26) кстати о сервисах) можно дать сервис поставщику файла и пусть льет напрямую

  

МимохожийОднако

28 — 13.11.20 — 07:56

Повторное сохранение файла через открытие файла в Excel позволяет привести его формат к виду, который читается из 1С.

Может быть, подскажете командную строку или набор команд, который делает это без участия пользователя?

Тогда можно будет запустить обработку, которая читает файл с некорректным для 1С форматом и сохраняет обратно в хранилище.

У меня эти файлы лежат до времени в хранилище значений в регистре сведений.

Ошибка при вызове метода контекста (Прочитать)

Ошибка при выполнении файловой операции при чтении xls файла методом прочитать объекта ТабличныйДокумент. 

Скрин сообщения

oshibka-pri-vypolnenii-fajlovoj-operatsii

Данный объект 1C умеет не только записывать в Excel, но возможна и обратная операция с ограничениями, свойственными табличному документу.

В чем плюсы такой методики чтения

  • Всё производится встроенными средствами;
  • достаточно быстро;
  • код в 2 строки
  • данные не требуется преобразовывать, обычно всё считывается достаточно корректно, их можно проверить средствами 1С.
  • возможно считывать значения ячеек как текст (без авто-преобразования),
  • доступно на сервере, где excel вообще нельзя установить (linux, OSx).

Причина ошибки

Отличительной особенностью, вызывающей данную ошибку, является то, что 1С нужен монопольный доступ на время считывания.

Если же документ открыт, то выходит ошибка при выполнении файловой операции чтения.

COM-Объекта Excel.Application в данном ситуации просто открывает еще один экземпляр, а также  в нём можно скрыть отображение сообшения о режиме «чтения».

Другой причиной может быть: отсутствие прав на чтение этого файла

Решение:

Закрыть открытую в Excel (или другой программе) книгу, проверить права на файл (возможность открытия в его в Excel, косвенный признак его наличия)

Реклама — средство заставить людей нуждаться в том, о чем они раньше не слыхали.

Сvотри что бы тег не содержал запрещенных символов (не должен начинаться с цифры и т.д.)

Установившаяся Практика Именования

Делайте имена описательными. Имена с символом подчеркивания выглядят аккуратно: <first_name>, <last_name>.

Имена должны быть короткими и простыми, например: <book_title> а не: <the_title_of_the_book>.

Избегайте символов «-«. Если вы называете xml-элемент, используя дефис («first-name,») некоторые компьютерные программы могут решить, что вы хотите вычесть значение name из значения first.

Избегайте символов «.». Если вы называете что-нибудь например так: «first.name,» некоторые программы могут решить, что «name» является свойством объекта «first.»

Старайтесь не использовать символы «:». Двоеточие зарезервировано для использования в так называемых пространствах имен (подробнее о них будет рассказано позже).

XML документы часто имеют соответствующую базу данных. Обычно используют правила именования этой базы данных для элементов XML документов.

Не английские буквы, такие как ���, вполне допустимы в XML, но следите за тем, чтобы не было проблем совместимости, если ваш производитель программного обеспечения не поддерживает их.

Добавлено через 1 минуту
Правила Именования в XML
Элементы XML должны следовать следующим правилам именования:

Имена могут состоять из букв, чисел, и других символов
Имена не могут начинаться с числа или знака препинания
Имена не могут начинаться с букв xml (или XML, или Xml, и т.п.)
Имена не могут содержать пробелы
Любое имя может использоваться, зарезервированных слов нет.

Добрый день, не могу понять, в чем ошибка: файл перенесен на диск д, существует, 1с под администратором запущена, вход тоже с админ. правами. ошибка: Ошибка при вызове метода контекста (Прочитать)         ТабДок.Прочитать(«D:чектекст1.txt»); по причине: Ошибка при выполнении файловой операции

ТабличныйДокумент, txt…ни на что не наталкивает?

суровые челябинские девушки…

меня тоже смутил сначала, переделано было в mxl, но в сп написано, что и txt  тоже может. с mxl тоже самое

может быть не TXT а CSV по стандарту с разделителями?

нет, не csv, обычный текстовый файл нужно распечатать.

тогда причем тут ТабличныйДокумент?

а у него какой метод печати?

я думал первоначальная проблема в методе: Прочитать. Я жеж и не подозревал, что вам потом печатать нужно. А вообще СП украли чтоль?

наверное, это: Показать (Show) Синтаксис: Показать(<Заголовок>, <ИмяФайла>) Параметры: Тип: Строка. Заголовок окна редактирования. Тип: Строка. Имя файла, в котором будет предлагаться сохранение текста при закрытии окна текстового редактора. Если файла с указанным именем не существует, то будет создан новый файл с таким именем для сохранения текста. Если параметр не указан, то при закрытии окна, не будет предложено сохранить данные в файл. Если параметр не указан, но в окне редактирования после выполнения метода Показать были произведены изменения (интерактивно или средствами встроенного языка), то при его закрытии на экран выводится стандартный вопрос о сохранении документа. Описание: Открывает окно с текстом для просмотра и редактирования. Если текстовый документ является реквизитом управляемой формы, то вызов метода Показать приводит к возникновению исключения. Доступность: Тонкий клиент, веб-клиент, толстый клиент. Пример: ТекстДок.Показать(«Редактирование прайс-листа», «catalog.txt»);

а вообще бы типа скрин хоть посмотреть что в D:чектекст1.txt просто расширение txt подразумевает голый текст потому и было предложено и замечено в смотрим, думаем. что жеж всё-таки в файле-то ?

может вам и не нужно ничего из внешнего читать, а поместить в макет обработки или что у вас там

+ формат файла какой? что там имел ввиду в каком виде?

скажите на форум то за помощью пришли или где? почему все клещами надо вытаскивать выложите уже этот файл txt этого нефискального чека ЗЫ Если нужно текстовый файл вывести на печать то читаем его по строкам, выводим строки в макет (для ровности особенно таблиц моноширинный шрифт) в табдок и на печать

Чек № 44 от 27 июня 2016 г.                                ИП ***                          ИНН: ***             ================================================ Bond Red МРЦ 75(шт)                   Кассир:                                         ________________________________________________                    (подпись)

если честно, мне нужно вывести на термопринтер, который определяется, как обычный, чек. В УТ 10.3 чек формируется как текстовый документ, вот его и надо вывести на печать.

текст я и так могу прочитать, можно и не читать. как напечатать-то его автоматически??

тогда как текстовыйДокумент у него есть свойства вывод на печать

вот я не могу найти их!! уже пробую все перевести в табдок. в сп-то нет про печать текстового документа

подскажите, как отправить на принтер печататься ТекстовыйДокумент?

Например можно перевести его в табличный документ и напечатать оттуда ТекстДок = Новый ТекстовыйДокумент; ТекстДок.Прочитать(«D:чектекст1.txt»);

можно было Макет = ПолучитьМакет(ТвойТекстовыйФайл)

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

Ошибка при чтении файла из эксель в табличный документ?

Я пытаюсь файл эксель прочитать в табличный документ. Файл с форматом «xlsx» читается без проблем, а файл формата «xls» выдает ошибку. В чём ошибка?5f900d0e5763a276099014.png


  • Вопрос задан

    более двух лет назад

  • 963 просмотра

1. подробнее какой код…
2. Описание:
Считывает табличный документ из файла.
Позволяет считывать табличный документ из файла табличного документа Microsoft Excel 97 — 2010 ( *.xls и *.xlsx) или электронной таблицы OpenOffice Calc ( *.ods).

Пригласить эксперта

Иногда под расширением .xls на самом деле файл записан в .xlsx


  • Показать ещё
    Загружается…

30 янв. 2023, в 12:59

15000 руб./за проект

30 янв. 2023, в 12:56

50000 руб./за проект

30 янв. 2023, в 12:52

5000 руб./за проект

Минуточку внимания

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка при вызове метода контекста найтипоуникальномуидентификатору
  • Ошибка при вызове метода контекста прочитать файл не обнаружен файл