Что значит ошибка в 1с ошибка формата потока
Как исправить ошибку формата потока в 1С
Каждый, кто работает с 1С:Предприятие в любой конфигурации хотя бы раз видел перед глазами окно с ошибкой «Ошибка формата потока».
Данное окно входит в ТОП-3 самых распространенных ошибок 1С:Предприятие. Оно неприятно из-за своей не информативности. Непонятно: где, в чем ошибка? Естественной реакцией будет нажатие кнопки «Перезапустить», но с высокой вероятностью можно утверждать, что перезапуск проблему не устранит, и пользователь снова увидит данное окно.
В этой статье будут объяснены причины возникновения, разновидности и способы устранения «Ошибки формата потока» 1С.
Почему 1С 8 пишет «Ошибки формата потока»?
Программа 1С:Предприятие создана таким образом, что в процессе работы постоянно стремится оптимизировать скорость выполнения операций. С этой целью на компьютере пользователя создается «кэш», в котором хранится часто используемая информация, например: расположение и формы окон, служебные данные пользователя, настройки отборов, шрифтов и т.д. Кэширование позволяет сократить количество обращений к серверу и, тем самым, повысить скорость работы 1С:Предприятие.
Но что произойдет, если файл “кэша” будет записан с ошибкой/ошибками, в результате неправильного завершения сеанса работы, либо скачка напряжения, либо сбоя сети (для клиент-серверного варианта работы 1С)? При следующей попытке обращения к “кэшу” 1С не сможет прочитать файл и появится окно “Ошибка формата потока”. “Битый кэш” является самой частой причиной возникновения этой ошибки.
Кроме некорректно записанного кэша могут быть также некорректно записаны документы (или справочники, или любой другой объект) в информационную базу и это тоже может стать причиной возникновения рассматриваемой в данной статье ошибки.
Виды ошибки формата потока
Условно ошибку формата потока 1С можно поделить на 2 вида:
В зависимости от вида ошибки можно выбрать наиболее подходящий вариант ее устранения. Но можно использовать и все способы по очереди, пока один из них не сработает. Способы не нанесут вреда вашей базе 1С 8. Впрочем, если действовать как настоящий профессионал — стоит сначала сделать бэкап, а уже потом бороться с “Ошибкой формата потока”.
Как устранить “Ошибку формата потока”?
Рассмотрим ТОП способов решения :
1. Почистить кэш 1С
Данный способ подробно был рассмотрен в нашей статье “Как очистить Кэш в 1С”. Вкратце напомним. Для удаления файлов кэша вручную необходимо найти папки, где кэш хранится. Для операционных систем Win7 и выше временные файлы хранятся по адресу C:\Users\Username\AppData\Roaming\1C и C:\Users\Username\AppData\Local\1C в папках, начинающихся с «1cv8». В Windows XP, в папке пользователя по адресу Local Settings\Application Data\1C\. Если папка AppData не видна — настройте видимость скрытых папок. Ниже на рисунке показано, как выглядят файлы кэша – папки с длинными непонятными именами (в нашем случае файл всего один). Для очистки кэша нужно удалить эти папки.
Важно! Удалять папки можно только тогда, когда завершены процессы работы с 1С:Предприятие.
2. Запустить тестирование и исправление 1С
В режиме конфигуратора нужно кликнуть по пункту меню “Администрирование” и затем “Тестирование и исправление”.
Должны быть отмечены первые два пункта “реиндексация таблиц информационной базы” и “проверка логической целостности информационной базы”. Нажмите кнопку “Выполнить”. Система сама проверит базу, найдет ошибки, исправит их и предоставим вам отчет о проделанной работе. При необходимости отметьте также третий пункт “проверка ссылочной целостности информационной базы”.
3. Запуск«chdbfl.exe»
Если нет возможности зайти в конфигуратор, тогда запустите программу «chdbfl.exe», которая находится: «C:\Program Files (x86)\1cv8\8.3……\bin». Выберите файл Базы Данных, отметьте галочкой “Исправлять обнаруженные ошибки” и нажмите кнопку “Выполнить”. Дальше система все сделает за вас. Система сама проверит базу, найдет ошибки и исправит их. Во время работы программы «chdbfl.exe» не должно быть активных сеансов работы с 1С.
В режиме конфигуратора выберите пункт меню “Администрирование” и кликните “Выгрузить информационную базу”. После этого выберите место куда хотите сохранить файл базы (.dt), задайте файлу имя и нажмите “Сохранить”.
После этого создайте новую пустую базу у себя на компьютере (либо на сервере). Зайдите в конфигуратор новой базы, нажмите “Администрирование”, затем “Загрузить информационную базу”. Выберите подготовленный ранее файл и нажмите “Открыть”.
5. Выгрузить и загрузить данные XML.
6.Обновление 1С
Причиной рассматриваемой ошибки может стать наличие активных сеансов пользователей, работающих в разных версиях платформы 1С. Например, в базе есть активный сеанс пользователя с платформой 1С 8.3.5…., а пытается подключиться другой, с версией 8.3.4…. Если на компьютере установлены несколько версий — убедитесь, что в окне редактирования информационной базы выбрана нужная вам “правильная” версия.
7. Другие способы
В 99% случаев вышеописанные способы борьбы с “Ошибкой формата потока” эффективно сделают свою работу и ошибка “уйдет”. В оставшемся 1% придется применять более сложную диагностику, иногда выходящую за рамки 1С, например: почистить временные файлы компьютера, а не только кэш 1С; проверить жесткий диск на битые сектора при помощи утилиты “chkdsk.exe”; проверить компьютер антивирусом. Можно даже попробовать запустить базу 1С на другом компьютере и таким образом локализовать проблему, убедившись, что ошибка кроется именно в информационной базе, а не в железе и не в Операционной Системе.
Данная статья создана в помощь столкнувшимся с ошибкой 1С “Ошибка формата потока”, здесь были рассмотрены и объяснены причины ее появления, её условные виды и способы устранения. Ошибка выглядит страшно и непонятно из-за своей неопределенности, но, как видим, устранить данную ошибку по силам каждому.
Исправление ошибки формата потока в 1С 8.3
Такая проблема, как Ошибка формата потока, в 1С 8.3 встречается достаточно часто. Рассмотрим, как исправить данную ошибку.
Что же такое ошибка формата потока в 1с 8.3?
Такое происходит в следующих ситуациях:
Исправление
Если это не помогло — есть более изощренные способы решения данной проблемы. Например, с помощью HEX-редактора. Если Вам необходима квалифицированная помощь программистов 1С, обратитесь к нам! Подробности на странице услуги 1С программиста.
Смотрите наше видео про исправление ошибок файловой базы данных 1С:
И видео от Ильи Леонтьева про эту ошибку при обновлении конфигурации:
Получите понятные самоучители по 1С бесплатно:
Другие статьи по 1С:
Если вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
Ошибка формата потока 1С — методика исправления
Ошибка формата потока 1С Предприятие — одна из самых распространенных ошибок, возникающих при работе с 1С программами. Из публикации вы узнаете, как исправляется ошибка формата потока 1С Предприятие 8.3 без обращения к администраторам или партнерам 1С, проверенными на практике способами.
Работаешь в программе 1С, все замечательно, а тут неизвестно из-за чего появилась небольшая форма с уведомлением «Ошибка формата потока» и с вариантами «Завершить работу» в программе или «Перезапустить» программу. Перезапуск, естественно, ни к чему не приводит, ошибка появляется снова…
Я описал ваш случай? Не огорчайтесь! Вы не первый пользователь 1С у кого эта ошибка появилась, и, уверен, что не последний. За время работы с 1С программами выработался алгоритм исправления этой ошибки, которым я хочу поделиться в этой публикации. Поэтому, читайте и исправляйте эту 1С «занозу»! Итак…
…из публикации вы узнаете:
Ошибка формата потока 1С Предприятие 8.3 — одна из самых распространенных в работе 1С:Предприятие и при этом одна из самых не информативных. Вылетает окошко с сообщением об ошибке и никакой дополнительной информации, что и где сломалось и как починить. Поэтому, исправление ошибки формата потока 1С начнем с вычисления причин появления этой ошибки, что бы лучше знать «врага» в лицо.
Почему возникает ошибка формата потока 1С Предприятие 8.3
Что бы выяснить причины появления ошибки формата потока 1С 8.3 необходимо рассмотреть область данных 1С платформы. Тут хотелось бы отметить, что платформа 1С во время работы использует:
Причем, платформа 1С Предприятие использует указанные ресурсы постоянно.
А теперь представьте, что произошел скачек электричества, поэтому часть сетевого пакета исказилась и была записана в некорректной форме или отключили электричество и данные, которые писались в кеш 1С записались частично, что в этом случае произойдет?
Правильно! При попытке прочитать эти данные и их обработать, 1С не сможет их «прожевать» и выплюнет с «ошибкой формата потока». Вот такой «верблюд» получился и у вас. Давайте рассмотрим, что можно с этим сделать.
Первым делом необходимо сделать копию информационной базы 1С на случай порчи рабочей базы при её исправлении.
Эффективный способ исправить ошибку формата потока 1С Предприятие 8.3 для файловых баз данных 1С
Путь до каталога базы данных 1С Предприятие 8.3 вы можете посмотреть при запуске программы — он будет расположен внизу окна запуска 1С Предприятие 8.3.
По поводу удаленных файлов не переживайте — это все служебные файлы, которые будут созданы заново в правильном формате при следующем запуске 1С Предприятие 8.3.
Ошибка формата потока 1С 8.3 не исчезла? Плохо! Читаем дальше.
Стандартные шаги по исправлению ошибки формата потока 1С Предприятие 8.3
Если указанные выше рекомендации не помогли в исправлении ошибки формата потока 1С или если у вас клиент-серверная база данных 1С, то следующими шагами исправления будут стандартные операции, возникающие при любых ошибках:
На эти темы были написаны подробные публикации, поэтому тут мне добавить нечего. Читайте статьи и делайте всё в точности по написанному.
Если после проделанных с базой манипуляций «ошибка формата потока» все равно появляется, в этом случае пробуйте ещё один проверенный способ:
На этом шаге исправить ошибку формата потока 1С Предприятие 8.3 получается в 94% случаев. Но что делать есть не спало.
Нестандартные способы исправить ошибку формата потока 1С Предприятие 8.3
До этого были проделаны все стандартные операции по исправлению данной ошибки, и если до этого момента ошибка не устранена, значит придется заняться «творчеством». Ещё этот процесс называют «танцами с бубнами» или «шаманством»… Поэтому, если до этого вы не «танцевали», то ошибка формата потока 1С Предприятие 8.3 может вам составить отличную пару. Итак, продолжим:
Ещё пара способов исправить ошибку формата потока 1С Предприятие 8.3
Есть ещё пара способов с хакерским подходом:
Описанные в публикации способы исправления ошибки формата потока были проверены на практике — работают!
Надеюсь, что ничего не забыл. Если вдруг всплывет в памяти что-то ещё, то обязательно дополню публикацию.
Всем читателям отличного настроения! Пусть ошибка формата потока вас обходит стороной. 😉
Если вам что-то не понятно в вопросе как исправляется ошибка формата потока 1С:Предприятие 8.3, то вы можете задать вопрос в комментариях к статье или на форуме сайта.
Что бы не потерять статью в просторах интернета — сохраните её к себе в социальные сети или в закладки.
Как исправить ошибку формата потока в 1С
Пользователи 1С предприятия иногда могут столкнуться с ошибкой формата потока. Вот так она выглядит:
Такое уведомление пугает пользователей, ведь непонятно, где конкретно произошла ошибка. В этой ситуации пользователи первым делом нажимают на кнопку «Перезапустить», но это не помогает. Перезапуск компьютера также не дает результата. Для исправления ошибки понадобится выполнить более сложные действия.
Рассмотрим подробно как исправить ошибку формата потока в 1С, но для выполнения этих действий понадобятся определенные знания.
Если вы не уверены в собственных силах, обратитесь за помощью к специалистам 1С.
Перечень причин появления ошибки формата потока
Товароучетная программа 1С:Предприятие регулярно оптимизирует свои действия, при этом на компьютерах пользователя создаются кэш-папки, которые содержат следующую информацию:
Работа программы ускоряется за счет обращения программы в кэшу, так как сокращается число обращений к серверу. При некорректном завершении работы, обновлении конфигурации, перебоях с напряжением и зависании программы файлы кэш могут быть некорректно записаны или повреждены.
Если в момент сбоя программа обращалась к файлам кэша (для чтения или записи), существует большая вероятность, что они будут повреждены. И уже при следующем запуске отразится ошибка, представленная на изображении выше.
Причиной сбоя также может стать некорректная запись данных в программе, включая справочники, документы, регистры.
Основные типы ошибок
Их можно разделить на три категории:
Ошибка формата потока после появления платформы 8.3 встречается не так часто. Существует вероятность, что разработчик исправил ошибку.
Способ устранения зависит от типа ошибки. Но можно использовать и все методы по порядку, вред базе таким образом нанести невозможно, не потребуется и доработка конфигурации. Но, как и перед выполнением любых действий, необходимо сделать архивную копию базы.
Методы устранения ошибки
Для очистки кэша товароучетной программы 1С необходимо вручную удалить файлы из папок на компьютере. Сделать это можно после установления их месторасположения. В системах Win 7 и выше они могут находиться:
В Win XP файлы размещены в папке локального пользователя Local Settings\Application Data\1C\. AppData – скрытая папка, для поиска необходимо настроить видимость скрытых папок и ввести ее вручную в адресной строке обозревателя. На скриншоте, представленном ниже, показано, как выглядят эти папки. Их количество может составлять несколько десятков, это зависит от информационных баз, созданных на компьютере. Все эти папки следует удалить.
Программа создает новую папку с кэшем для каждой новой базы данных. После удаления базы данных автоматическое удаление папки не предусмотрено. Учтите, что при удалении папок не должны быть запущены активные сеансы с базами данных.
Также можно воспользоваться скриптом ClearCache. Для запуска утилиты «Тестирование и исправление в конфигураторе» необходимо перейти в конфигуратор и в «Администрировании» задать соответствующий пункт.
На этом этапе появится предупреждение о необходимости сохранения конфигурации.
Нужно выбрать «Продолжить». И в следующем окне выставить настройки, отображенные на скриншоте.
База недоступна для любых действий на этапе проверки. Для медленных компьютеров можно задать в нижней части окна время, через которое тестирование приостановится. Результаты проверки отразятся в окне служебных сообщений.
Если ошибка возникает непосредственно при запуске базы данных, и зайти в конфигуратор нет возможности, пользователь может воспользоваться утилитой chdbfl.exe. Найти ее можно в папке с установленной платформой 1С. Адрес ее расположения представлен на рисунке ниже.
Утилита запускается от имени администратора. Появится окно, в котором следует указать путь к файлу базы данных 1cv8.1CD, установить галочку напротив «Исправлять выявленные ошибки», и в завершении кликнуть на «Выполнить». Все обнаруженные ошибки будут исправлены программой автоматически, о чем будет уведомлено пользователя.
Программа может не выявить ошибки в процессе проверки. На практике бывают ситуации, когда ошибки диагностируются только при второй или третьей проверке подряд. Поэтому стоит запустить не менее трех проверок.
Пользователь также может столкнуться с ситуацией, когда после всех попыток ошибки не были найдены, но и во время работы программы больше не возникали. Это может объясняться тем, что часть ошибок была обнаружена и исправлена в разновидности фонового режима без выдачи соответствующего уведомления. Поэтому даже если после нескольких проверок ошибки не были найдены, необходимо запустить и проверить базу 1С. Возможно, проблемы были исправлены.
Выгрузка/загрузка базы через конфигуратор предполагает создание архивной копии в режиме конфигуратора и ее последующую загрузку в пустую базу. Для этого в разделе «Администрирование» в конфигураторе следует выбрать «Выгрузить информационную базу». После чего указывается место создания архивной копии.
По завершении выгрузки, следует создать новую базу (без конфигурации) и загрузить туда полученный файл.
Так как при создании новой базы данных для нее создаются новые файлы, по сути, это также можно считать чисткой кэша.
При повреждении конфигурации и в случае, если ее восстановление невозможно, может использоваться перенос данных в новую конфигурации (чистую). Но новичкам этот способ устранения ошибки путем выгрузки – загрузки данных через xml не подходит. Так как это может привести к частичной потере данных.
Этот способ обработки похож на предыдущий вариант действий. Его отличие заключается в том, что копировать всю базу нет необходимости, выгружаются только данные из нее. Но последующая загрузка также осуществляется в новую пустую базу.
Выполнить действие можно с помощью стандартной обработки, размещенной на диске ИТС «ВыгрузкаЗагрузкаДанныхXML». Для запуска необходимо открыть «Главное меню», затем выбрать «Файл» и нажать на «Открыть». После этого указывается путь к обработке.
Стандартно эта обработка используется для переноса сведений из одной базы в другую, но может помочь и в этой ситуации. Необходимо отметить галочками все типы данных и затем нажать на «Выгрузить данные».
По аналогичной схеме выполняется загрузка данных из сформированного файла xml.
Существует также вероятность появления ошибки по причине наличия активных сеансов работы с базой данных на разных компьютерах под разными платформами. Сейчас это не очень актуально, так как в версиях, начиная с 8.3.5 такие сеансы блокируются. Но все же если на одном рабочем месте база данных запущена с платформы 8.3.10, а на другом эта же база под другой платформой, появится ошибка, как на изображении ниже.
В этом случае база не запустится, пользователь получит уведомление с указанием причины.
Решить проблему можно также с помощью обновления релиза конфигурации. В этом есть смысл в том случае, если ошибка кроется в базе или у пользователя не последний релиз. Вероятность того, что этот способ поможет, низкая, но и он также может использоваться.
Если с помощью всех перечисленных методов устранить ошибку не удалось, стоит попробовать проверку жесткого диска на битые сектора (утилита chkdsk.exe), очистить временные файлы компьютера, проверить компьютер антивирусом, а также посмотреть настройки фаервола и антивируса. Базу данных можно запустить и на другом компьютере, чтобы убедиться таким образом, что проблема связана с самой базой, а не операционной системой.
Самостоятельное исправление ошибок в 1С может навредить системе! Не рискуйте своими данными, обратитесь к специалистам 1С!
Ошибка формата потока. Решение с описанием проблемы
Специально написал методику устранения ошибки в виде программы. Думаю, так проще читать самую суть, не отвлекаясь на лирику и переживания.
В полемику о целесообразности написания сей статьи на данном ресурсе вступать не желаю. Много различной информации по данной теме, посчитал необходимостью для сообщества консолидировать свои наработки в данной теме и преподнести её наиболее читабельно.
Если есть вопросы, то в личку пожалуйста. По возможности отвечу.
Искренне не желаю встречаться Вам с ситуацией, когда данная статья придет на выручку.
Специальные предложения
Для последних версий:
Если СУБД = «MS SQL» Тогда
// Необходимо развернуть ближайший бэкап базы на том же сервере что и поврежденная.
// Со времени публикации статьи поля таблицы могут измениться, поэтому посмотрите состав полей и скорректируйте скрипт
// Если перевести на русский язык: Скрипт удаляет сбойную таблицу config поврежденной базы и затем создает копию таблицы
// из рабочей базы в поврежденной.
GO
DROP TABLE [ПОВРЕЖДЕННАЯ_БАЗА].[dbo].[config]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [ПОВРЕЖДЕННАЯ_БАЗА].[dbo].[config](
[FileName] [nvarchar](128) NOT NULL,
[Creation] [datetime] NOT NULL,
[Modified] [datetime] NOT NULL,
[Attributes] [smallint] NOT NULL,
[DataSize] [int] NOT NULL,
[BinaryData] [image] NOT NULL,
[PartNo] [int] NOT NULL,
PRIMARY KEY CLUSTERED
(
[FileName] ASC,
[PartNo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
INSERT INTO [ПОВРЕЖДЕННАЯ_БАЗА].[dbo].[config]
SELECT * FROM [БЭКАПНАЯ_БАЗА].[dbo].[config]
GO
Столкнулся тут хитрой ситуацией.
Грубо говоря: начали утром обновлять с добавлением метаданных, вроде обновили, но вылетели в ошибку. ок развернули ночной бакап, сделали по изложенному методу выше.. вроде работает. Но неспокойной душе (душа была выявлена, расскаялась, но была приговорена к 3х недельному эцику с гвоздями ) приспичило динамический обновиться. и все приплыли.
Как итог выяснилось что в базе поля от первого обновления остались, таблица добавилась, но в структуре метаданных о них информации нет. ПолучитьСтруктуруХраненияБазыДанных возвращает наличие таблиц и полей, но с пустыми описаниями.
Сравнил что же у нас добавилось
лучше проверить в обе стороны, ну или делать через джойн двух таблиц
Определили какая таблица добавилась и какие поля. Проверили что они пустые.
Удалили эти объекты
Далее на всякий случай почистил серверный кэш данной базы (не знаю играло роль или нет но факт есть факт)
И затем описанным в статье способом подменил не только таблицу config, но и таблицы Files и Params. В остальных служебных таблицах разницы в содержимом не было.
После этого конфигурация начала сохраняться. Для проверки были добавлены и удалены тестовые реквизиты и тестовый регистр сведений.