Содержание:
1. Ошибка формата потока при запуске базы
2. Ошибка формата потока при обновлении
3. При внесении изменений в закрытую базу данных
Рис. 1 Оповещение 1С об ошибке формата потока данных
Приветствую, коллеги! Если Вы читаете это, полагаю, оповещение об ошибке формата потока, представленное ниже, уже должно быть Вам знакомо. В статье я расскажу о том, когда в системе 1С может возникать ошибка формата потока, по каким причинам это происходит и как исправить ошибку. Надеюсь, описанное далее поможет решить Вашу проблему. Цели наши ясны как белый день – далее затягивать вступление нет смысла, а потому перейдем сразу к делу!
1. Ошибка формата потока при загрузке базы
Ошибка формата потока может возникать в двух случаях: при загрузке базы и при ее обновлении. Начнем, пожалуй, с первого – возникновения ошибки при загрузке базы. Обычный перезапуск программы в таких случаях, как правило, не помогает. Чаще всего ошибка формата потока при загрузке базы связана с проблемами в кэше или наличием так называемой битой информацией внутри системы. Обычно это спровоцировано неправильным выключением системы, например, отключением электричества. Также эта ошибка может быть вызвана действием антивируса или возникать при попытке подключиться к одной и той же информационной базе из разных версий платформы 1С:Предприятие.
Для начала необходимо убедиться, что версия платформы 1С:Предприятие на клиентских компьютерах одинакова, а также попробовать добавить программу 1С в исключения вашего антивируса. Если с антивирусом и версиями платформы проблем не обнаружено, тогда можно приступать к действиям по исправлению ошибки формата потока данных.
В первую очередь необходимо сохранить резервную копию базы данных. В случае файловой базы можно просто скопировать папку с базой в другое место (путь к базе данных можно увидеть в окне запуска программы).
Первый способ исправления — это очистка кэша. Для очистки кэша можно выполнить простое действие: удалить базу из списка в окне запуска программы и добавить снова, указав путь к базе данных.
Второй способ — это удаление всех сопутствующих файлов в папке с базой. Проще это сделать переносом самого файла, в котором хранится наша база. Он имеет расширение 1cd и называется 1.8. Как правило, этот файл по размеру превышает остальные. Его-то и выделяем, после чего переносим в новую созданную папку.
В списке баз удаляем старую базу, добавляем новую и указываем новый путь к базе данных. Если эти способы не привели к положительному результату, необходимо выполнить проверку базы на ошибки.
Если есть доступ к конфигуратору, необходимо запустить процедуру тестирования и исправления ошибок информационной базы. Еще раз убеждаемся, что мы сделали резервную копию информационной базы. Также если у нас открывается конфигуратор, можно воспользоваться возможностью выгрузить и загрузить информационную базу через dt file.
Так как при выгрузке dt файла происходит сжатие таблиц информационной базы, этот способ также может помочь устранить ошибку. Если конфигуратор не запускается или после тестирования ошибка возникает вновь, то необходимо проверить на наличие ошибок сам файл информационной базы. Проверяется он стандартной утилитой ChekdbfL, которая идёт в комплекте вместе с установленной платформой 1С:Предприятие. Расположена это утилита в папке «Program files → bin».
Запускаем утилиту и в поле имя файла б. д. выбираем наш файл с базой. Не забываем установить флаг «Исправлять обнаруженные ошибки». По завершению система сообщит нам об обнаруженных и исправленных ошибках, после чего можно снова запускать 1С.
2. Ошибка формата потока при обновлении
Также ошибка формата потока данных в 1С может досаждать своим появлением не только при открытии базы, но и при её обновлении.
Если вылезла ошибка формата потока при обновлении, вам нужно произвести следующие действия.
В первую очередь произвести тестирование и исправление базы. Запускаем соответствующую обработку, проставляем все галочки и здесь переключатель обязательно ставим в положение тестирования и исправления. Насчет ссылок – поставить на «Не изменять», нажимаем на кнопку «Выполнить» и довольно долго ждем.
Как показывает практика, это решение всё равно не является стопроцентным. Однако есть ещё один вариант исправления ошибки формата потока при обновлении: можно попробовать запустить обработку с названием chdbfl, которая находится в каталоге установки 1С.
Находим его на жёстком диске по пути C:/program files(86)/1cv8, затем переходим в папку bin, где и находится обработка chdbfl.
Для общего сведения chdbfl — это сокращение от Chek database files, так что белиберда вполне логична.
Здесь нам нужно выбрать файл с нашей базой данных. Находим каталог с ошибочной базой и выбираем файл с базой данных, после чего обязательно ставим галочку «Исправлять обнаруженные ошибки» и нажимаем на кнопку «Выполнить». В данном случае ошибок не должно быть обнаружено вообще никаких.
3. При внесении изменений в закрытую базу данных
Также хотелось бы рассказать немного ещё об одном варианте исправления ошибки формата потока при загрузке базы. Мы все с вами понимаем, что когда-то нетиповая база была типовой. То есть это была закрытая база данных, которая стояла на замке – ее нельзя было редактировать. В какой-то момент по команде «Включить возможность изменения» этот «замок» с конфигурации был снят.
Рис. 2 Включение возможности редактирования первоначально закрытой базы данных
Обычно 1С не хотят, чтобы пользователи меняли их базу, поэтому замок не снимается в полной мере. Вместо этого база конфигурации поставщика 1С копируется и получается так называемая основная конфигурация, доступная для изменений. Да, эту базу уже можно видоизменять как угодно, однако нужно понимать, что конфигурационный файл увеличился практически в два раза за счет того, что теперь у нас два конфигурационных файла в одном.
То есть конфигурационный файл нашей базы на самом деле представляет собой пару конфигурации – типовая конфигурация 1С (на замке), и основная, открытая для доработок.
Ошибка формата потока данных может быть связана с тем, что зашитая в нашу конфигурацию типовая конфигурация 1С «битая». Ее нужно просто заменить, и тогда мы избавимся от нашей проблемы.
В первую очередь нам понадобится «здоровая» типовая конфигурация 1С. Определяем версию нужного нам релиза базы, и, чтобы получить файл конфигурации cf из нее, выполняем команду: «Конфигурация → сохранить конфигурацию в файл».
Теперь нам нужно битый файл конфигурации заменить на «здоровый». Для этого, во-первых, нужно его полностью уничтожить в нашей базе: «Конфигурация → Поддержка → Настройка поддержки», нажимаем на кнопку «Снять c поддержки», тем самым уничтожая конфигурацию поставщика 1С. В результате у нас осталась только одна база – скопированная и открытая для внесения изменений.
Далее необходимо обновить конфигурацию базы данных, чтобы получить базу 1С, снятую с поддержки. Но обновить мы её не сможем – придется поставить базу на поддержку. Для этого используем команду «Сравнить/объединить с конфигурацией из файла». Выбираем наш «здоровый» файл конфигурации cf, тут же возникает предложение поставить программу и базу на техническую поддержку, мы, конечно же, соглашаемся с этим. Затем появляется окно сравнения/объединения, и если мы сейчас нажмем на кнопку «Выполнить», то уничтожим все доработки в нашей базе – обязательно убираем галочку «Сохранять настройки автоматически», нам нужно только поставить базу на техническую поддержку.
Мы почти закончили. Осталось только разобраться, что это за странный значок появился:
Рис. 3 Оповещение о снятой с поддержи базе 1С
Для того чтобы этот значок поменять на привычный «желтый кубик», вызываем команду «Настройка поддержки» и меняем статус со «Снят с поддержки» на «Редактируется». Также не забываем нажать галку «Установить для подчиненных объектов» и, опять-таки, нажимаем на кнопку «Обновить конфигурацию базы данных».
Вот и все! В итоге мы получили то же самое, что у нас и было изначально только мы заменили конфигурацию поставщика 1С с битой версии на нормальную. И уже в ней попробовать выполнить обновление. И на это раз всё должно получиться!
Специалист компании «Кодерлайн»
Никита Брежницкий
Уделим внимание одному из наиболее часто возникающих багов программы. Ниже будет подробно рассмотрена ошибка формата потока 1С 8: как исправить ее, мы обязательно расскажем, но сначала выясним, почему она вообще появляется и какие ее виды существуют. Постараемся дать максимум подробностей, чтобы вы понимали, что лучше сделать — почистить кэш, запустить тестирование и восстановление, обновить ПО, — что удобнее конкретно в вашем случае.
А в том, что эту проблему придется как-то решать, сомнений нет никаких, ведь она делает нормальную работу в системе невозможной. Потому что при ее возникновении на экране появляется специальное сообщение, которое предлагает два действия на выбор — либо просто закрыть приложение, либо перезапустить его. Сразу скажем, перезагрузка не помогает.
Еще одно неудобство в низкой информативности такого уведомления. Оно не несет никаких объяснений — только 2 кнопки, и нажатие на любую из них, по сути, ничего не дает. Поэтому давайте разбираться.
Что значит в 1С «Ошибка формата потока»
Это баг, связанный с затруднениями чтения кэша при обращении к базе данных (БД). Может проявляться на разных этапах работы (или подготовки к ней), то есть как при запуске программы, так и при открытии или заполнении отчета, проведении какого-нибудь бланка и тому подобное.
Есть сразу несколько причин ее возникновения (рассмотрим их ниже), но она в любом случае свидетельствует о наличии неверных сведений в БД системы, требующих актуализации, исправления, восстановления. Входит в топ-3 проблем по частоте «диагностирования», так что будьте готовы к тому, что вам, скорее всего, тоже придется выбирать подходящее решение.
Описание ошибки информации потока в 1С
Выглядит как всплывающее окно следующего вида:
Максимально лаконично: две кнопки на выбор — и нет конкретики.
Увидев подобное уведомление впервые, неопытный пользователь даже несколько теряется. Понятно почему: в самом сообщении нет подробностей, отсутствует какой-то пояснительный текст, хотя бы краткий. Поэтому человеку в принципе не очень ясно, что делать: он жмет на «Перезапустить», но проблема повторяется. Он перезагружает компьютер — результат тот же. Решение лежит несколько глубже.
Список причин появления ошибки потока данных в 1С 8 3
В процессе своей работы программа делает все для оптимизации скорости проведения операций. Для чего она и создает кэш на ПК, то есть системные папки, в них записывается та информация, которая впоследствии часто используется, а именно:
- пользовательские настройки;
- сведения о регулярно выполняемых действиях;
- размеры размещения функциональных окон.
В результате, когда ПО нужные какие-то данные, оно обращается к cash’у, а не к внешнему серверу, а значит получает ответ быстрее и снижает нагрузку на ОС, что оборачивается увеличением производительности.
Но что будет, если в момент записи в кэш или загрузки из него произойдет какая-то внештатная (с точки зрения системы) ситуация? Например, софт зависнет или ПК выключится из-за скачка напряжения. Тогда файлы, с которыми программа взаимодействовала в тот момент, получат повреждения. И во время следующего запуска ПО вы увидите то самое сообщение, после которого дальнейшая работа перестанет быть возможной.
В 1C ошибка потока также иногда возникает из-за некорректного сохранения справочника, реестра или другого документа, к которому впоследствии будет обращаться система. Это гораздо менее распространенная, но тоже встречающаяся причина, поэтому и ее не стоит сбрасывать со счетов.
Виды
Любой такой баг можно условно отнести к одной из трех категорий:
- Возникает сразу при включении программы — обусловлен неправильным завершением предыдущего сеанса. Необходимо разбираться с кэшем.
- Проявляется по ходу действий, при выполнении какой-либо операции, допустим, при открытии каталога или проведении бланка. В этом случае проблема конкретно в той области, с которой взаимодействовало ПО, повреждена именно она.
- В штатном режиме неполадки отсутствуют, но при входе в «1С: Конфигуратор» ошибка формата потока не заставляет себя ждать (при осуществлении определенной операции). Здесь тоже всему виной cash — вопрос в нем.
От типа бага напрямую зависит и выбор варианта его устранения. Хотя можно поступить по-другому и поочередно пробовать все методы, пока какой-то не принесет результат, благо ни один из них не способен навредить системе или нарушить безопасность ПК. Но это стратегия для тех, у кого много свободного времени. Мы же советуем действовать более рационально: лучше потратить эти «лишние» полчаса на резервное архивирование — для бэкапа, на всякий случай — после чего проанализировать ситуацию, диагностировать проблему и решить ее с первой попытки.
Как устранить в 1С файловую ошибку формата потока
Единой и универсальной инструкции нет, зато есть несколько проверенных способов, полезных в зависимости от контекста. И хорошо, если перед тем, как браться за один из них, вы все-таки сохраните копию БД. После того как правильно продублируете ее на другой носитель (жесткий диск или флешку), предлагаем двигаться от простых и наиболее распространенных вариантов действий к тем, что посложее.
Интересно, что на более свежих версиях, чем 8.3, баг при входе в модули системы встречается уже значительно реже. Очевидно, что разработчик учитывает жалобы клиентов и пытается оградить их от неудобств, даже если они вызваны причинами, не напрямую зависящими от надежности или юзабилити ПО.
Почистить кэш 1С
Первое, логичное и очевидное решение — самостоятельно удалить все те файлы, что хотя бы теоретически могут быть повреждены, и (это важно) отсутствие которых никак не повлияет на работоспособность платформы. Нужно узнать, где же они хранятся, а потому:
Откройте приложение и посмотрите в левый нижний угол — в нем написан путь.
Перейдите по этому адресу в проводнике Windows и вручную уберите из каталога все элементы, кроме одного — папки 1Cv8 (после точки записывается его версия — в примере на скриншоте — 1CD).
Теперь остается снова попробовать запустить программу. Если проблема была в «битых» файлах, сообщения об ошибке не появится. В тех случаях, когда способ не сработал, необходимо попробовать другой.
Очистить cash базы 1С
Важно не путать с предыдущим методом — здесь характер воздействия более точечный. Для устранения ошибки при загрузке данных потока в 1C следует перейти к папкам хранения кэша. В ОС Windows 7 и выше они лежат здесь:
C:\Users\Username\AppData\Roaming\1C
C:\Users\Username\AppData\Local\1C
Внимание, AppData может быть не видна — тогда потребуется настроить отображение скрытых папок; кроме того, по конечному адресу часто находится сразу много каталогов — вам нужны только те, что начинаются с «1Cv8».
Самый радикальный вариант — просто удалить эти элементы целиком, со всеми их вложениями:
Но мы предлагаем потратить чуть больше времени: зайдите еще и в них и уберите только папки с непонятными именами, состоящими из целой вереницы символов:
Так вы обезопасите себя от повреждений реестра, способных вылиться в какие-то другие проблемы.
Если же уведомление продолжает появляться, перейдите к следующему способу.
Запустить режим тестирования и исправления
Если у вас постоянно выскакивает ошибка формата потока данных 1С, Конфигуратор поможет ее устранить. Откройте его, кликните на вкладку «Администрирование» и там, в выпадающем меню нажмите на указанную на скриншоте строчку:
Откроется окно настроек — обязательно поставьте галочки напротив «реиндексация таблиц…» и «проверка логической целостности…», то есть возле двух первых пунктов; третий, касающийся ссылок, опционален — можете отметить и его, — а вот все последующие уже не нужны.
Система просмотрит БД, найдет существующие нарушения, исправит их и выдаст отчет, в котором будет написано, что за проблемы были выявлены и устранены. Способ хорош своей высокой степенью автоматизации — никаких ручных операций, — но он рассчитан на современные машины. Помните, в течение всего периода диагностики никаких других операций в приложении выполнять не получится. Слабым компьютерам потребуется достаточно много времени. Также этот вариант не всегда доступен, а значит, для подстраховки, стоит знать и следующий метод.
Запустить утилиту «chdbfl.exe»
Она становится настоящим спасением, когда вообще не открывается «1С: Предприятие 8», и ошибка формата потока высвечивается сразу при старте работы, не давая даже зайти в Конфигуратор.
Чтобы воспользоваться ей, перейдите по такому адресу в Проводнике Windows:
C:\Program Files (x86)\1Cv8\8.3…\bin
Затем откройте исполнительный файл с расширением *exe от имени Администратора.
Поставьте галочку напротив пункта «Исправлять обнаруженные…» и подтвердите свой выбор, кликнув на «Выполнить».
Остальное сделает система: она проведет проверку, устранит все найденные нарушения, восстановит реестр и тому подобное, а также предоставит отчет с подробностями. Любые активные сеансы пользования программой при этом должны быть закрыты, чтобы не перегружать платформу и не влиять на результаты.
Рекомендуем повторить процедуру еще 2 раза — лучше, если таких прогонов будет в общей сложности 3. Потому что во время первого теста утилита может вообще не обнаружить повреждений и потерь файлов, но зато отыщет их потом, действуя в своеобразном фоновом режиме и не присылая уведомлений. И если вы приступите к работе сразу, то будете думать, что все в порядке, хотя проблема еще найдется, проявит себя в виде назойливого уведомления и не даст завершить важную операцию, например, сохранить заполненную форму.
Выгрузить/загрузить базу в .dt
Если произошла ошибка создания файлового потока, и ни одна из вышеописанных мер не помогает, можно сделать резервную копию БД и перейти на нее. Для этого:
Запустите Конфигуратор, выберите вкладку «Администрирование», а из выпадающего в ней списка — пункт «Выгрузить», как показано на скриншоте:
Укажите место записи (папку на диске), совместимое расширение (.dt) и подтвердите все это кликом на «Сохранить».
Сделайте на сервере или на своем ПК новую базу — естественно, она будет пустой. Поэтому зайдите в ее Конфигуратор, клацните на «Администрирование», а затем на «Загрузить…».
Выберите ранее созданный dt-массив и щелкните на «Открыть».
По сути, это простейшая операция экспорта-импорта, но она удобна сразу двумя вещами. Во-первых, вы автоматически почистите кэш, ведь система начнет использовать новый файл. Во-вторых, те индивидуальные настройки, которые вы ранее вносили под себя (шрифты, шаблоны и так далее) тоже перенесутся, их не придется задавать «с нуля».
Выгрузить/загрузить данные через XML
Если у 1С неверный формат потока, а конфигурация повреждена без возможности восстановления, придется переносить БД в чистую среду. Это наиболее сложный метод, рассчитанный даже не на опытных пользователей, а на специалистов техподдержки, потому браться за его реализацию стоит в самом крайнем случае.
Запустите модуль стандартной обработки — через «Главное меню», «Файл» и «Открыть», как показано на скриншоте, и задайте путь.
Появится форма — в ней поставьте птички напротив каждого типа данных и нажмите на «Выгрузить».
Система создаст XML-массив в указанной вами папке. Дальше останется только перейти в новую пустую БД и там, использовав эту же функцию, выполнить экспорт через вкладку «Загрузка», клик на кнопку со схожим названием и выбор ранее сохраненного файла.
Актуализировать систему
Это нужно делать тогда, когда компьютеры в рамках корпоративной сети используют ПО разных версий. Ошибка источника/приемника потока при обновлении 1С решается сразу же. Хотя сегодня она встречается все реже, потому что с 8.3.5 сеансы «более низких» платформ автоматически блокируются. Но если БД запустят на одной машине с софтом редакции 8.3.10 и на другой, с 8.3.4, то расхождения в процессе работы неизбежны. Правда, это тот момент, который не должен допускать, скорее, системный администратор, чем рядовые бухгалтеры.
Есть и иные способы — они сложнее, радикальнее, требуются реже, предполагают наличие глубоких знаний и подразумевают профессиональную ответственность за принятые решения и внесенные изменения. Потому просто перечислим их, без детального рассмотрения:
- отключение в реестре Windows протокола IPv6;
- переустановка программы с последующей настройкой;
- полный перенос БД на другой компьютер и запуск ее на том ПК;
- использование утилиты Tool_1CD;
- деактивация фаерволла и/или внесение исключений в антивирусную защиту;
- актуализация конфигурации через cf-файл.
И это еще не все из возможных вариантов решения. Если появилась ошибка загрузки документа, имеет смысл проверить жесткий диск ПК на наличие битых кластеров, для чего отлично подойдет утилита chkdsk.exe. Если базовые способы не возымели должного эффекта, ничто не мешает провести более глубокую диагностику и/или почистить кэш не только приложения, но и компьютера в целом.
Запуск БД на другой машине — это тоже своеобразная проверка. Если и там ничего не выйдет, значит, проблема не в операционке, и не в железе, а именно в повреждении каких-то конкретных элементов реестра. Но любое действие должно быть рациональным, и предпринимать его нужно лишь тогда, когда вы четко понимаете, как, что и зачем открываете, экспортируете, импортируете.
Есть сразу 5 проверенных способов устранения проблемы + обновление, его все-таки нужно считать отдельно, ведь это, по сути, обязательная процедура. Они помогут решить вопрос в 99% ситуаций, и надоедливое сообщение больше не будет мешать вашей работе. Оставшийся процент — сложные и нестандартные случаи, над которыми пусть задумываются системные администраторы и специалисты техподдержки разработчика.
Итог
Мы подробно описали распространенный баг, частенько возникающий как в процессе работы, так и при загрузке информационной базы 1С: ошибка формата потока — неприятное явление, но оно устраняется, причем без особого труда, и вы уже узнали, как это сделать. Теперь, когда одной проблемой стало меньше, можно еще эффективнее использовать многочисленные возможности платформы, особенно с теми вспомогательными программными продуктами для ведения учета и торговли, которые представлены в «Клеверенс», — обращайтесь для выгодного заказа полезного ПО.
Количество показов: 22729
Борьба с сообщением «Ошибка формата потока» в 1С:Предприятие 8
шаман 1с
Шаманы IT — кто они?
За что мне нравиться 1С:Предприятие 8.1 — с ним не соскучишься. Итак, сегодня мы будем учиться пляскам с бубном. Есть мнение, что бубны сисадминов в этом случаи не годятся. Это не правда, тоже подойдут.
Когда нужен бубен?
При работе с 1С:Предприятие 8.1 по некоторым независящим от нас с Вами причинам вы можете столкнуться с сообщением об ошибке «Ошибка формата потока».
Например это может произойти так: После запуска chdbfl.exe выдал ошибки во внутреннем файле превышена длина кода, потом показал что ошибки исправлены. После этого запустить конфигурацию не удалось, стала выходить ошибка «ошибка формата потока……».
Самый распространенный ответ-рекомендация: Попробовать перенести базу на другой компьютер и там запустить.
Звучит загадочно, не правда ли? :)))
Постарайтесь ответить на вопросы: После выполнения каких действий стала появляться эта ошибка?
Эта ошибка появляется при запуске с любого компьютера или только с одного? Например может быть характерна такая ситуация: у клиента при попытке запуска конфигурации в режиме предприятия в клиент-серверном режиме под некоторыми пользователями приложение падает с сообщением «Ошибка формата потока», под остальными пользователями все работает нормально.
Начните с http://www.gilev.ru/disableipv6/
Частными случаями этой рекомендации можно считать например такие решения:
- удаление из списка баз и повторное добавление
- очищение данных из каталога «C:\Documents and Settings\пользователь\Application Data\1C\1Cv81»
- простое копирование содержимого каталога bin в новый каталог
Общей причиной возникновения такой ситуации можно считать сбои железа (в одном случае пропала сеть, отключилось электричество), софта и т.д. (и не обязательно 1С).
-
- Отключите файрволы и антивирусы
- Например, известны примеры, когда помогало только УДАЛЕНИЕ Eset Smart Security. Просто отключение его ничего не давало. (Примечание. Коллеги предлагают в настройках снять флаг»Включить фильтрацию содержимого протоколов уровня приложений». Если фильтрация всё же нужна и отключать ее не хочется, здесь же можно указать, чтобы файрвол фильтровал только «Порты HTTP и POP3». )
- Отключите файрволы и антивирусы
- Скопировать базу с исходного источника другой флешкой 🙂
В случаи, если есть возможность зайти в режиме конфигуратора, то также есть смысл проверить целостность данных:
- для файловой версии использовать проверку целостности chdbfl.exe
- тестирование и исправление средствами конфигуратора
- выгрузка/загрузка конфигурации
Для ранних версий платформы были характерны механизмы, не контролирующие некорректное хранение данных, поэтому обратите внимание на такие решения как:
- обновили платформу до последней версии (но не просто обновлением, а удалением старой версии, и затем установкой новой)
- очистка журнала регистрации
- в клиент-серверном варианте сообщение «Ошибка формата потока» может возникнуть у клиента, когда одно из приложений из набора 1С:Предприятия, выполняющихся на сервере, не имеет достаточно дискового пространства в разделе /tmp для размещения временных файлов
- проверить обработкой все метаданным все строковые реквизиты (проверяем наличие и удаляем сивмолы 0x1a & 0xFFFF )
Особенно это характерно для ситуаций: после изменения типа реквизита формы справочника при попытке сохранить конфигурацию после долгого продолжительного молчания не приходя в сознание платформа выдала сообщение «ошибка формата потока».
Или в такой ситуации: Если через COMConnector происходит обращение к клиент-серверной базе данных, то возможной причиной ошибки является передача от клиента (COMConnector-а в клиентском приложении) серверу 1С:Предприятия или наоборот значения типа «Строка», содержащего символы с кодами 0x1F или 0xFFFF. Передача может выполняться как через параметры и результат процедур и функций, исполняемых на сервере, так и в том случае, если такие символы содержатся, например, в строковом значении константы.
Можно также использовать РИБ, если есть возможность создавать планы или они уже есть:
- выгружать данные с помощью XML
Или еще бывает так:
При попытке открыть форму документа «Поступление товаров услуг» происходит ошибка «Ошибка формата потока». Ошибка возникает как в Конфигураторе так и в Предприятии.
Система работает в файловом режиме. Решение может быть таким: Удалить данную проблемную форму и вставить другую (объединением) и назначить ее основной.
В некоторых случаях можно исследовать проблему с помощью технологического журнала:
<?xml version=»1.0″ encoding=»UTF-8″?>
<config xmlns=»http://v8.1c.ru/v8/tech-log«>
<dump create=»true» location=»C:\Program Files\1cv81\bin\dumps» prntscrn=»false» type=»2″/>
<log history=»96″ location=»C:\Program Files\1cv81\bin\logs»>
<event>
<eq property=»name» value=»EXCP»/>
</event>
<event>
<eq property=»name» value=»EXCPCNTX»/>
</event>
<event>
<eq property=»name» value=»PROC»/>
</event>
<property name=»all»/>
</log>
</config>
Примечание. Для 64х-разрядного сервера приложений каталог отличается от размещения клиента 1С. В этом случаи logcfg.xml нужно размещать в обоих подкаталогах /conf, корректирую пути размещения логов.
В этом случаи будут формировать логи для клиента 1С в подкаталоге 1cv8_ХХХХ:
30:02.8131-0,EXCP,1,process=1cv8,Usr=Гилев В.В.,Exception=Exception,Descr=Ошибка формата потока
- удалить все записи с таблице configsave
Если ошибка возникает у всех пользователей сразу, то сделайте резервную копию и почистите таблицу delete from configsave
Помогает для различных субд (и MS SQL Server, и Oracle)
Воспользуйтесь обработкой «ВыгрузкаЗагрузкаДанныхXML», с диска ИТС.
Алгоритм спасения простой: выгрузить данные из сбойной базы в файл, затем создать новую пустую базу и вновь, с помощью обработки, загрузить данные из созданного на первом шаге файла.
Можно также попробовать утилиту Сергея Боровика (http://infostart.ru/public/16741/) и экспортировать конфигурацию (если цель — конфигурация, а не база)…
- Для работы с 1cd файлом
- Для работы с dt файлом
Если проблема при открытии конфигуратора
Интересно что если найти такой объект в дереве конфигурации можно получить ошибку формата потока без вылета 1С. Хотя, если это html, он может открыться, но при сравнении, при отрытии его объектов, 1С все равно вылетит.
Т.е. достаточно последовательным открытием всех объектов БД ч/з конфигуратор можно найти такой объект, снять его с поддержки и удалить. Но, это ж надо так любить 1С, чтоб тупо сидеть и открывать каждый объект, клацая мышкой. Увы, я не так трепетно отношусь к 1С . Я полез в меню конфигуратора и попытался там найти, что-то, что будет открывать объекты, типа как при обновлении или сравнении конфигураций. И нашел!!! Это меню Конфигурация -> Выгрузить файлы конфигурации. Причем там есть форма в которой можно отметить не все а те объекты и разделы, которые тебе надо выгрузить.
Т.о. выгружая конфу получая ошибку и сужая диапазон отмеченного, я нашел эти злосчастные поврежденные объекты и удалил их. После этого все прошло как по маслу. Все сравнивалось и объединялось. Теперь по поводу танцев с бубнами описываемых на форумах. Из этих описаний следует одно: Ошибка формата потока — это когда объект базы (объект, здесь более широкое понятие, чем в 1С) поврежден, по различным причинам. И если 1С в режиме работы или конфигурации пытается его открыть мы получаем эту ошибку. Причем бывает так, что и конфигуратор невозможно открыть (Т.е. не откравается объекты необходимые при запуске).
Тогда и спасает внешний файл для тестирования и исправления БД chdbfl.exe, находящийся в папке bin. Бывают повреждаются файлы настроек пользователя 1С в Doc.endSett. Тогда их просто надо удалить с диска. Если повреждены объекты самой конфы, иногда помогает тестирование и исправление ч/з конфигуратор. Но эти два метода тестирования открывают для тестирования не все объекты БД! Важно об этом помнить. Так, уважаемый файл chdbfl.exe, я так понимаю, в основном, позволяет исправить БД, т.о. чтобы ее затем в первую очередь запустить.
Если ошибка возникает в процессе попытки сравнения/обновления базы — удалите объект, на котором происходит сбой — при объединении с конфой обновления проблемный объект будет заново записан в базу. Ошибка связана с особенностями перехода между платформами, особенно если их релизы выходят довольно часто.
см. также http://infostart.ru/public/162933/
в случае когда стандартные отчеты Бухгалтерии 2.0 8.2 при открытии вызывали сообщение об одной и той же ошибке: «Ошибка формата потока». Решение оказалось простым. Для базовой конфигурации потребуется ПК с платформой ПРОФ.
Решение:
1. Открываем конфигуратор.
2. Находим в дереве конфигурации проблемный отчет и сохраняем его командой «Сохранить как внешнюю обработку, отчет…»
3. Окрываем в конфигураторе сохраненный отчет. Далее — кнопка «Действия» — команда «Открыть модуль объекта».
4. Находим в тексте процетуру «ПрименитьНастройку()», удаляем всё ее содержимое или преобразуем всё содержимое процедуры в комментарий сочетанием клавиш [Ctrl+Num/], сохраняем внешний отчет.
5. Запускаем (переключаемся) базу в режиме «Предприятие», открываем наш внешний отчет. Открылся? Закрываем.
6. Удаляем файл внешнего отчета с диска.
см. также https://infostart.ru/public/976582/
Практически любой пользователь 1С предприятия сталкивался с ошибкой следующего вида:
Эта ошибка является одной из самых распространенных и очень пугает пользователей своей неинформативностью: не понятно, что случилось и где конкретно произошла ошибка. Первым решением в такой ситуации зачастую становится нажатие кнопки «Перезапустить». Это не помогает, как не помогает и следующий шаг большинства пользователей – перезагрузка компьютера. Как можно исправить данную ошибку, мы расскажем в этой статье, но сразу хотелось бы уточнить, что описанные ниже действия требуют определенных знаний, поэтому, если вы не уверены в своих силах, обращайтесь за помощью по 1С к профессионалам.
Причины появления ошибки формата потока
«1С:Предприятие» постоянно пытается оптимизировать свои действия, создавая на пользовательских ПК кэш-папки, в которых отображается часто используемая информация: пользовательские настройки, размер и размещение окон, данные о наиболее часто запускаемых операциях и т.д. Обращение программы к кэшу сокращает число обращений к серверу, ускоряя работу программы.
А если кэш-файлы будут повреждены или некорректно записаны?
Это может произойти при «зависании» программы, некорректном завершении работы, перебоях напряжения или обновлении конфигурации. Если в момент сбоя программа обращалась к файлам кэша для записи или чтения, то они, скорее всего, будут повреждены, и при следующем запуске пользователь увидит окно ошибки, которое мы видели выше.
Ошибка может возникать также из-за некорректно записанных данных в самой программе (документы, справочники, регистры и т.д.).
Виды ошибки
- Ошибка, возникающая при запуске программы. Как правило, возникает при некорректном завершении работы и других причинах, описанных выше. В этом случае искать ошибку следует в кэше.
- Ошибка возникает при работе в программе (запуск программы проходит без проблем), при обращении к определенным метаданным или при совершении определенных операций. В данном случае ошибку будем искать в самой программе.
- В пользовательском режиме программа работает совершенно нормально, ошибок нет. Но при входе в конфигуратор или, реже, при совершении определенных действий, возникает ошибка формата потока*. В случае такой ошибки опять же ищем причину в кэше.
*Такая ошибка была характерна для времени появления платформы 8.3, а в последнее время она почти не встречается, так что есть вероятность, что разработчик ошибку исправил.
В зависимости от вида ошибки мы можем подобрать вариант «лечения», хотя можно просто использовать все способы по порядку. Вреда базе ни один из этих способов не нанесет и доработки конфигурации 1С не потребует, но всегда, перед любыми действиями, для базы необходимо сделать архивную копию.
Способы устранения ошибки
Очистка кэша 1С. Подробно этот способ рассмотрен в отдельной статье на нашем сайте. Но если сказать вкратце, самым надежным способом является удаление файлов кэша вручную из папок на компьютере. Для этого нужно установить их месторасположение. В системах, начиная с Win 7 и выше, папки кэша находятся здесь:
C:\Users\Username\AppData\Roaming\1C\1cv8
C:\Users\Username\AppData\Local\1C\1cv8
В Win XP они расположены в папке локального пользователя по адресу:
Local Settings\Application Data\1C\
Папка AppData является скрытой, так что если не можете ее найти, нужно настроить видимость скрытых папок или вручную ввести ее в адресной строке обозревателя. На скриншоте показано, как выглядят нужные нам папки. Количество папок может варьироваться от одной до нескольких десятков, в зависимости количества информационных баз, созданных на данном компьютере. Эти папки необходимо удалить.
Для каждой новой базы данных программа создает новую папку с кэшем. При удалении базы данных папка автоматически не удаляется. При удалении папок не должно быть активных сеансов с базами данных.
Либо воспользуйтесь данным скриптом
Запуск утилиты «Тестирование и исправление в конфигураторе». Для тестирования и исправления ошибок нам нужно зайти в конфигуратор и «Администрировании» выбрать соответствующий пункт.
Появится предупреждение, что конфигурацию необходимо перед этим сохранить. Жмем продолжить. В следующем окне выставляем настройки, как показано на скриншоте.
Во время проверки база недоступна для любых действий. Для медленных машин внизу стоит установить время, через которое тестирование будет приостановлено. Результаты проверки система покажет в окне служебных сообщений.
Запуск утилиты «chdbfl.exe». Когда зайти в конфигуратор не представляется возможным (ошибка появляется сразу при запуске базы данных), стоит воспользоваться утилитой chdbfl.exe. Она расположена в папке с установленной платформой 1С. Путь следующий:
Запускаем утилиту от имени администратора. В появившемся окне указываем путь к файлу базы данных 1cv8.1CD, ставим галочку «Исправлять выявленные ошибки», затем – «Выполнить». В процессе проверки программа автоматом исправит все найденные ошибки и выдаст информацию о них.
Иногда в процессе проверки программа не находит ошибок. На практике бывают случаи, когда ошибки находятся при второй или даже третьей проверке подряд. Поэтому стоит делать не менее трех проверок.
Но это не все! Бывает, что с 3-х попыток ошибки не были найдены, но после проверки, во время работы программы, не появились. Возможно, что часть ошибок была найдена и исправлена в разновидности фонового режима, без выдачи сообщений об этом. Поэтому, даже если после нескольких проверок ошибки не были найдены, все равно стоит запустить и проверить базу 1С. Возможно, они все-таки были исправлены.
Выгрузка-загрузка базы 1С через конфигуратор. Суть способа заключается в банальном создании архивной копии в режиме конфигуратора и ее загрузке в пустую базу.
В конфигураторе, в разделе «Администрирование» выберем «Выгрузить информационную базу». После этого укажем, где мы хотим создать архивную копию.
Когда выгрузка будет закончена, создадим новую пустую базу без конфигурации и загрузим туда полученный файл.
По сути, это является своего рода чисткой кэша, так как при создании новой базы данных файлы для нее также создаются новые.
Выгрузка – загрузка данных через xml. Когда повреждена сама конфигурация и нет возможности ее восстановить, поможет перенос ваших данных в новую чистую конфигурацию. Очень важно понимать, что этим методом не стоит пользоваться новичкам, так как он может привести к частичной потере данных. Данный вариант следует реализовывать силами программистов 1С.
Использование обработки похоже на предыдущий вариант действий, а отличает его то, что мы не делаем копию всей базы, а выгружаем только данные из нее, но загружаем их так же в новую пустую базу. Все это делается с помощью стандартной обработки «ВыгрузкаЗагрузкаДанныхXML», которую можно найти на диске ИТС. Запускается она просто: Главное меню – Файл – Открыть. Далее указываем, где лежит обработка.
Эта обработка используется для переноса определенных данных из одной базы в другую, но в нашей ситуации вполне может помочь. Отмечаем галочками все типы данных и жмем «Выгрузить данные».
Точно так же происходит загрузка данных из сформированного файла xml.
Этим методом не стоит пользоваться новичкам, так как он может привести к частичной потере данных.
Обновление базы данных и платформы. Существует возможность появления рассматриваемой нами ошибки, связанная с наличием активных сеансов работы с базой данных под разными платформами на разных компьютерах. В принципе, это не очень актуально, так как в версиях платформы, начиная с 8.3.5, существует блокировка таких сеансов. То есть, если на одном рабочем месте база данных запущена с платформы версии 8.3.10, на другом при запуске той же базы под другой платформой отобразится ошибка следующего вида:
База просто не запустится, и в этом случае прямо укажет почему.
Отметим, что также может помочь обновление релиза конфигурации, если ошибка кроется в самой базе или если у вас не последний релиз. Вероятность действенности этого метода довольно низкая, но не нулевая, так что способ имеет право на существование.
В большинстве случаев один из вышеперечисленных способов помогает устранить ошибку формата потока. Если ни один из них не помог, стоит прибегнуть к более сложной диагностике – проверке жесткого диска на битые сектора с помощью утилиты chkdsk.exe, очистке временных файлов компьютера, а не только кэша 1С, проверке компьютера антивирусом и проверке настроек антивируса и фаервола. Также стоит запустить базу данных на другом компьютере, чтобы убедиться, что проблема в самой базе, а не в железе или операционной системе.
Если проблемы с возникновением ошибок не удалось решить, обратитесь к нашим специалистам: мы проконсультируем и подберем для вас оптимальную стоимость сопровождения 1С, исходя из ваших конкретных задач и потребностей.
Ошибка формата потока 1С Предприятие — одна из самых распространенных ошибок, возникающих при работе с 1С программами. Из публикации вы узнаете, как исправляется ошибка формата потока 1С Предприятие 8.3 без обращения к администраторам или партнерам 1С, проверенными на практике способами.
Работаешь в программе 1С, все замечательно, а тут неизвестно из-за чего появилась небольшая форма с уведомлением «Ошибка формата потока» и с вариантами «Завершить работу» в программе или «Перезапустить» программу. Перезапуск, естественно, ни к чему не приводит, ошибка появляется снова…
Я описал ваш случай? Не огорчайтесь! Вы не первый пользователь 1С у кого эта ошибка появилась, и, уверен, что не последний. За время работы с 1С программами выработался алгоритм исправления этой ошибки, которым я хочу поделиться в этой публикации. Поэтому, читайте и исправляйте эту 1С «занозу»! Итак…
…из публикации вы узнаете:
- Почему возникает ошибка формата потока 1С Предприятие 8.3
- Эффективный способ исправить ошибку файловых баз 1С Предприятие 8.3
- Стандартные шаги по исправлению ошибки формата потока 1С Предприятие 8.3
- Нестандартные способы исправить ошибку формата потока 1С Предприятие 8.3
- Ещё пара способов исправить ошибку формата потока 1С Предприятие 8.3
Ошибка формата потока 1С Предприятие 8.3 — одна из самых распространенных в работе 1С:Предприятие и при этом одна из самых не информативных. Вылетает окошко с сообщением об ошибке и никакой дополнительной информации, что и где сломалось и как починить. Поэтому, исправление ошибки формата потока 1С начнем с вычисления причин появления этой ошибки, что бы лучше знать «врага» в лицо.
Почему возникает ошибка формата потока 1С Предприятие 8.3
Что бы выяснить причины появления ошибки формата потока 1С 8.3 необходимо рассмотреть область данных 1С платформы. Тут хотелось бы отметить, что платформа 1С во время работы использует:
- жесткий диск, на который во время работы платформы 1С сохраняются временные файлы настроек, логи, сервисная и пользовательская информация;
- сеть (в случае сетевой работы), по средствам которой происходит обмен пакетами данных с другими компьютерами или серверами сети (в случае клиент-серверного варианта работы 1С Предприятие).
Причем, платформа 1С Предприятие использует указанные ресурсы постоянно.
А теперь представьте, что произошел скачек электричества, поэтому часть сетевого пакета исказилась и была записана в некорректной форме или отключили электричество и данные, которые писались в кеш 1С записались частично, что в этом случае произойдет?
Правильно! При попытке прочитать эти данные и их обработать, 1С не сможет их «прожевать» и выплюнет с «ошибкой формата потока». Вот такой «верблюд» получился и у вас. Давайте рассмотрим, что можно с этим сделать.
Первым делом необходимо сделать копию информационной базы 1С на случай порчи рабочей базы при её исправлении.
Эффективный способ исправить ошибку формата потока 1С Предприятие 8.3 для файловых баз данных 1С
Если вы работая в файловой версии 1С Предприятие, стали жертвой этой напасти, то хочу предложить способ от её избавления, работающий в 78% случаев.
- Для этого необходимо зайти в каталог, где хранится база данных 1С Предприятие 8.3 и удалить все файлы и папки, КРОМЕ ФАЙЛА ДАННЫХ 1Cv8.CD. Операция требует сноровки, поэтому будьте осторожны, не переборщите с удалением! 🙂
Путь до каталога базы данных 1С Предприятие 8.3 вы можете посмотреть при запуске программы — он будет расположен внизу окна запуска 1С Предприятие 8.3.
По поводу удаленных файлов не переживайте — это все служебные файлы, которые будут созданы заново в правильном формате при следующем запуске 1С Предприятие 8.3.
- Если предложенный способ не помог, то для исправления файловых баз в 1С Предприятие 8.3 предусмотрена утилита chdbfl.exe. Проверьте структуру вашей базы, воспользовавшись этой утилитой.
Ошибка формата потока 1С 8.3 не исчезла? Плохо! Читаем дальше.
Стандартные шаги по исправлению ошибки формата потока 1С Предприятие 8.3
Если указанные выше рекомендации не помогли в исправлении ошибки формата потока 1С или если у вас клиент-серверная база данных 1С, то следующими шагами исправления будут стандартные операции, возникающие при любых ошибках:
- Очистка кеша 1С Предприятие 8.3
- Тестирование и исправление информационной базы 1С Предприятие 8.3
На эти темы были написаны подробные публикации, поэтому тут мне добавить нечего. Читайте статьи и делайте всё в точности по написанному.
Если после проделанных с базой манипуляций «ошибка формата потока» все равно появляется, в этом случае пробуйте ещё один проверенный способ:
- выгрузите вашу базу с файл *.dt, создайте пустую базу 1С и загрузите в неё выгруженный до этого файл *.dt. В выполнении этой операции вам поможет статья про резервное копирование базы 1С Предприятие 8.3.
На этом шаге исправить ошибку формата потока 1С Предприятие 8.3 получается в 94% случаев. Но что делать есть не спало???
Нестандартные способы исправить ошибку формата потока 1С Предприятие 8.3
До этого были проделаны все стандартные операции по исправлению данной ошибки, и если до этого момента ошибка не устранена, значит придется заняться «творчеством». Ещё этот процесс называют «танцами с бубнами» или «шаманством»… Поэтому, если до этого вы не «танцевали», то ошибка формата потока 1С Предприятие 8.3 может вам составить отличную пару. Итак, продолжим:
- Пробуйте загрузить файл *.dt в новой базе данных, созданной на другом компьютере. Этим вы исключите вероятность некорректно работающего железа или программ компьютера, где находится база.
- Удалите (именно УДАЛИТЕ через Установку и удаление программ) платформу 1С и установите заново, желательно новейшую версию. Исключаем некорректно работающие исполняемые файлы платформы, которые могли быть подпорчены вирусами или «посыпавшимися» секторами жесткого диска или другими способами.
- Обновите конфигурацию на следующий релиз или загрузите текущую конфигурацию из файла *.cf с полным замещением объектов.
- Отключите брандмауэр и антивирусы. Существует вероятность, что исполняемый файл был замечен в подозрительной активности антивирусом и помещен в карантин или остался под жестким контролем с блокировкой «опасных» действий. В любом случае — исключаем вариант карантина антивирусов.
- Удалите временные файлы на компьютере. Они находятся в нескольких местах:
- В профиле пользователя, для поиска введите %Temp% в адресной строке проводника.
- В папке C:\Windows\Temp
- Иногда на диске C:\Temp
- Ещё один способ был однажды применен, когда ничто не помогало — создали полный начальный образ базы данных и потом отвязали его от РИБ, сделав независимым. Получили ту же базу, пропустив начальную через механизмы РИБ (как через мясорубку 🙂 ) .
Ещё пара способов исправить ошибку формата потока 1С Предприятие 8.3
Есть ещё пара способов с хакерским подходом:
- загрузить файл *.dt в клиент-серверную базу данных (если база с ошибкой формата потока клиент-серверная, то делаем на ней, предварительно сделав копию) и очистить файл от всех записей в таблице «configsave» через программную консоль.
- в утилите Tool_1CD есть проверка формата потока. Скачайте эту утилиту и проверяйте поток.
Описанные в публикации способы исправления ошибки формата потока были проверены на практике — работают!
Надеюсь, что ничего не забыл. Если вдруг всплывет в памяти что-то ещё, то обязательно дополню публикацию.
Всем читателям отличного настроения! Пусть ошибка формата потока вас обходит стороной!!! 😉
Если вам что-то не понятно в вопросе как исправляется ошибка формата потока 1С:Предприятие 8.3, то вы можете задать вопрос в комментариях к статье или на форуме сайта.
Что бы не потерять статью в просторах интернета — сохраните её к себе в социальные сети или в закладки.