1с ошибка формата потока при запуске конфигуратора sql

Содержание:

1.       Ошибка формата потока при запуске базы

2.       Ошибка формата потока при обновлении

3.       При внесении изменений в закрытую базу данных

Оповещение 1С об ошибке формата потока данных

Рис. 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, тут же возникает предложение поставить программу и базу на техническую поддержку, мы, конечно же, соглашаемся с этим. Затем появляется окно сравнения/объединения, и если мы сейчас нажмем на кнопку «Выполнить», то уничтожим все доработки в нашей базе – обязательно убираем галочку «Сохранять настройки автоматически», нам нужно только поставить базу на техническую поддержку.


Мы почти закончили. Осталось только разобраться, что это за странный значок появился:

Оповещение о снятой с поддержи базе 1С

Рис. 3 Оповещение о снятой с поддержи базе 1С

Для того чтобы этот значок поменять на привычный «желтый кубик», вызываем команду «Настройка поддержки» и меняем статус со «Снят с поддержки» на «Редактируется». Также не забываем нажать галку «Установить для подчиненных объектов» и, опять-таки, нажимаем на кнопку «Обновить конфигурацию базы данных».

Вот и все! В итоге мы получили то же самое, что у нас и было изначально только мы заменили конфигурацию поставщика 1С с битой версии на нормальную. И уже в ней попробовать выполнить обновление. И на это раз всё должно получиться!

Специалист компании «Кодерлайн»

Никита Брежницкий

Описание ошибки:
Ошибка возникла в процессе динамического обновления конфиуграции клиент-серверной базы, работающей на MS SQL 2008. Релиз платформы 1С: Предприятие 8.3.9.2033

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

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

1С 8 ошибка формата потока клиент сервер на всех компьютерах

При попытке запустить базу в режиме «1С: Предприятие» система позволяля выполнить авторизацию пользователя, но затем все-равно возникала ошибка.

1С 8 ошибка формата потока на всех рабочих местах SQL серверная база

Оставалось понятным одно, что изменения все-таки не сохранились.

ошибка формата потока в базе 1С 8 клиент-серверный вариант MS SQL

ошибка формата потока при запуске 1С 8 везде после обновления в клиент-серверной базе

Т.к. свою работу в момент возникновения ошибки и проблемы вел удаленно на сервере, то подумал, что ошибка возникла только у меня. И, первым делом, попробовал избавиться от нее стандартным действием, которое в последнее время часто помогает (на фоне все более частого возникновения различных «глюков» в работе 1С 8 с базами) — удаление/добавление базы из списка баз, чтобы удалить локальный кэш базы (временные файлы, связанные с базой). Но это не помогло. Уже после этого узнал, что проблема запуска 1С на всех рабочих местах. А это значит, что проблема базы, а не какого-то локального кэша.

В попытке решить проблему были предприняты следующие действия, описание которых в большинстве своем можно встретить на просторах интернета:

— Очистка логово базы на MS SQL

— Установка более новой версии плафтормы 1С: Предприятие.

— Попытка запуска базы с командной /RollbackCfg

В итоге помогла рекомендация в некотором роде крайней меры, т.к. перед выполнением рекомендуется сделать копию базы, а у меня сделать копию уже было не с чего — работоспособность базы была под вопросом. Более раняя копия датировалась прошлой ночью (события развернулись под конец дня).

Помогла рекомендация для SQL-ной базы — удалить все записи в таблице configsave (delete from configsave).

Как это сделать?
Выполняем запрос: delete from [ИмяНашейБазы].[dbo].[ConfigSave]
См скрин:

ошибка формата потока в 1С 8 sql-ной базе

После этого база стала доступна. Естественно не сохраненные дорабокти конфигурации не сохранились, но это уже было не важно, т.к. работа все базы была восстановлена. И на фоне такой нештатной ситуации, ставящей под вопрос как целостность базы так и ее работу вообще, повторное восстановление несохраненного кода и доработок конфиуграции казалось «лекгим наказанием».

Если данная приведенная информация не помогла устранить «Ошибку формата потока», то предлагается воспользоваться общей инструкцией по устранению данной ошибки: «Ошибка формата потока» в 1С: Предприятие 8. Общее руководство по устранению.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

11-12-2017

Журавлев А.С.
(Сайт www.azhur-c.ru)

Практически любой пользователь 1С предприятия сталкивался с ошибкой следующего вида:

Рис.1 Ошибка
Рис.1 Ошибка

Эта ошибка является одной из самых распространенных и очень пугает пользователей своей неинформативностью: не понятно, что случилось и где конкретно произошла ошибка. Первым решением в такой ситуации зачастую становится нажатие кнопки «Перезапустить». Это не помогает, как не помогает и следующий шаг большинства пользователей – перезагрузка компьютера. Как можно исправить данную ошибку, мы расскажем в этой статье, но сразу хотелось бы уточнить, что описанные ниже действия требуют определенных знаний, поэтому, если вы не уверены в своих силах, обращайтесь за помощью по 1С к профессионалам.

Причины появления ошибки формата потока

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

А если кэш-файлы будут повреждены или некорректно записаны?

Это может произойти при «зависании» программы, некорректном завершении работы, перебоях напряжения или обновлении конфигурации. Если в момент сбоя программа обращалась к файлам кэша для записи или чтения, то они, скорее всего, будут повреждены, и при следующем запуске пользователь увидит окно ошибки, которое мы видели выше.

Ошибка может возникать также из-за некорректно записанных данных в самой программе (документы, справочники, регистры и т.д.).

Виды ошибки

  • Ошибка, возникающая при запуске программы. Как правило, возникает при некорректном завершении работы и других причинах, описанных выше. В этом случае искать ошибку следует в кэше.
  • Ошибка возникает при работе в программе (запуск программы проходит без проблем), при обращении к определенным метаданным или при совершении определенных операций. В данном случае ошибку будем искать в самой программе.
  • В пользовательском режиме программа работает совершенно нормально, ошибок нет. Но при входе в конфигуратор или, реже, при совершении определенных действий, возникает ошибка формата потока*. В случае такой ошибки опять же ищем причину в кэше.

*Такая ошибка была характерна для времени появления платформы 8.3, а в последнее время она почти не встречается, так что есть вероятность, что разработчик ошибку исправил.

В зависимости от вида ошибки мы можем подобрать вариант «лечения», хотя можно просто использовать все способы по порядку. Вреда базе ни один из этих способов не нанесет и доработки конфигурации 1С не потребует, но всегда, перед любыми действиями, для базы необходимо сделать архивную копию.

Способы устранения ошибки

Очистка кэша 1С. Подробно этот способ рассмотрен в отдельной статье на нашем сайте. Но если сказать вкратце, самым надежным способом является удаление файлов кэша вручную из папок на компьютере. Для этого нужно установить их месторасположение. В системах, начиная с Win 7 и выше, папки кэша находятся здесь:


  • C:UsersUsernameAppDataRoaming1C1cv8

  • C:UsersUsernameAppDataLocal1C1cv8

В Win XP они расположены в папке локального пользователя по адресу:


  • Local SettingsApplication Data1C

Папка AppData является скрытой, так что если не можете ее найти, нужно настроить видимость скрытых папок или вручную ввести ее в адресной строке обозревателя. На скриншоте показано, как выглядят нужные нам папки. Количество папок может варьироваться от одной до нескольких десятков, в зависимости количества информационных баз, созданных на данном компьютере. Эти папки необходимо удалить.

Для каждой новой базы данных программа создает новую папку с кэшем. При удалении базы данных папка автоматически не удаляется. При удалении папок не должно быть активных сеансов с базами данных.

Рис.2 Нужные нам папки
Рис.2 Нужные нам папки
Рис.3 Утилита ClearCache
Рис.3 Утилита ClearCache

Либо воспользуйтесь данным скриптом

Запуск утилиты «Тестирование и исправление в конфигураторе». Для тестирования и исправления ошибок нам нужно зайти в конфигуратор и «Администрировании» выбрать соответствующий пункт.

Рис.4 Тестирование и исправление в конфигураторе
Рис.4 Тестирование и исправление в конфигураторе

Появится предупреждение, что конфигурацию необходимо перед этим сохранить. Жмем продолжить. В следующем окне выставляем настройки, как показано на скриншоте.

Рис.5 Настройки
Рис.5 Настройки

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

Запуск утилиты «chdbfl.exe». Когда зайти в конфигуратор не представляется возможным (ошибка появляется сразу при запуске базы данных), стоит воспользоваться утилитой chdbfl.exe. Она расположена в папке с установленной платформой 1С. Путь следующий:

Рис.6 Запуск утилиты «chdbfl.exe»
Рис.6 Запуск утилиты «chdbfl.exe»

Запускаем утилиту от имени администратора. В появившемся окне указываем путь к файлу базы данных 1cv8.1CD, ставим галочку «Исправлять выявленные ошибки», затем – «Выполнить». В процессе проверки программа автоматом исправит все найденные ошибки и выдаст информацию о них.

Иногда в процессе проверки программа не находит ошибок. На практике бывают случаи, когда ошибки находятся при второй или даже третьей проверке подряд. Поэтому стоит делать не менее трех проверок.

Но это не все! Бывает, что с 3-х попыток ошибки не были найдены, но после проверки, во время работы программы, не появились. Возможно, что часть ошибок была найдена и исправлена в разновидности фонового режима, без выдачи сообщений об этом. Поэтому, даже если после нескольких проверок ошибки не были найдены, все равно стоит запустить и проверить базу 1С. Возможно, они все-таки были исправлены.

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

В конфигураторе, в разделе «Администрирование» выберем «Выгрузить информационную базу». После этого укажем, где мы хотим создать архивную копию.

Рис.7 Выгрузить информационную базу
Рис.7 Выгрузить информационную базу

Когда выгрузка будет закончена, создадим новую пустую базу без конфигурации и загрузим туда полученный файл.

Рис.8 Создадим новую пустую базу без конфигурации и загрузим туда полученный файл
Рис.8 Создадим новую пустую базу без конфигурации и загрузим туда полученный файл

По сути, это является своего рода чисткой кэша, так как при создании новой базы данных файлы для нее также создаются новые.

Выгрузка – загрузка данных через xml. Когда повреждена сама конфигурация и нет возможности ее восстановить, поможет перенос ваших данных в новую чистую конфигурацию. Очень важно понимать, что этим методом не стоит пользоваться новичкам, так как он может привести к частичной потере данных. Данный вариант следует реализовывать силами программистов 1С.

Использование обработки похоже на предыдущий вариант действий, а отличает его то, что мы не делаем копию всей базы, а выгружаем только данные из нее, но загружаем их так же в новую пустую базу. Все это делается с помощью стандартной обработки «ВыгрузкаЗагрузкаДанныхXML», которую можно найти на диске ИТС. Запускается она просто: Главное меню – Файл – Открыть. Далее указываем, где лежит обработка.

Рис.9 Указываем путь к обработке
Рис.9 Указываем путь к обработке

Эта обработка используется для переноса определенных данных из одной базы в другую, но в нашей ситуации вполне может помочь. Отмечаем галочками все типы данных и жмем «Выгрузить данные».

Рис.10 Выгрузить данные
Рис.10 Выгрузить данные

Точно так же происходит загрузка данных из сформированного файла xml.

Этим методом не стоит пользоваться новичкам, так как он может привести к частичной потере данных.

Обновление базы данных и платформы. Существует возможность появления рассматриваемой нами ошибки, связанная с наличием активных сеансов работы с базой данных под разными платформами на разных компьютерах. В принципе, это не очень актуально, так как в версиях платформы, начиная с 8.3.5, существует блокировка таких сеансов. То есть, если на одном рабочем месте база данных запущена с платформы версии 8.3.10, на другом при запуске той же базы под другой платформой отобразится ошибка следующего вида:

Рис.11 Обновление базы данных и платформы
Рис.11 Обновление базы данных и платформы

База просто не запустится, и в этом случае прямо укажет почему.

Отметим, что также может помочь обновление релиза конфигурации, если ошибка кроется в самой базе или если у вас не последний релиз. Вероятность действенности этого метода довольно низкая, но не нулевая, так что способ имеет право на существование.

В большинстве случаев один из вышеперечисленных способов помогает устранить ошибку формата потока. Если ни один из них не помог, стоит прибегнуть к более сложной диагностике – проверке жесткого диска на битые сектора с помощью утилиты chkdsk.exe, очистке временных файлов компьютера, а не только кэша 1С, проверке компьютера антивирусом и проверке настроек антивируса и фаервола. Также стоит запустить базу данных на другом компьютере, чтобы убедиться, что проблема в самой базе, а не в железе или операционной системе.

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

Борьба с сообщением «Ошибка формата потока» в 1С:Предприятие 8

шаман 1с

Шаманы IT — кто они?

За что мне нравиться 1С:Предприятие 8.1 — с ним не соскучишься. Итак, сегодня мы будем учиться пляскам с бубном. Есть мнение, что бубны сисадминов в этом случаи не годятся. Это не правда, тоже подойдут.

Когда нужен бубен?

При работе с 1С:Предприятие 8.1 по некоторым независящим от нас с Вами причинам вы можете столкнуться с сообщением об ошибке «Ошибка формата потока».
Например это может произойти так: После запуска chdbfl.exe выдал ошибки во внутреннем файле превышена длина кода, потом показал что ошибки исправлены. После этого запустить конфигурацию не удалось, стала выходить ошибка «ошибка формата потока……».

Самый распространенный ответ-рекомендация: Попробовать перенести базу на другой компьютер и там запустить.

Звучит загадочно, не правда ли? :)))

Постарайтесь ответить на вопросы: После выполнения каких действий стала появляться эта ошибка?
Эта ошибка появляется при запуске с любого компьютера или только с одного? Например может быть характерна такая ситуация: у клиента при попытке запуска конфигурации в режиме предприятия в клиент-серверном режиме под некоторыми пользователями приложение падает с сообщением «Ошибка формата потока», под остальными пользователями все работает нормально.

Начните с http://www.gilev.ru/disableipv6/

Частными случаями этой рекомендации можно считать например такие решения:

  • удаление из списка баз и повторное добавление
  • очищение данных из каталога «C:Documents and SettingsпользовательApplication Data1C1Cv81»
  • простое копирование содержимого каталога 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 Files1cv81bindumps» prntscrn=»false» type=»2″/>
<log history=»96″ location=»C:Program Files1cv81binlogs»>
<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/

oshibka-formata-potoka-postgres-000.pngОшибка формата потока — одна из самых неприятных ошибок в работе 1С и вызывает панический ужас у многих администраторов и пользователей данной учетной системы. Ее появление обычно говорит о серьезных повреждениях базы данных и, чаще всего, наиболее верным решением будет восстановить базу из резервной копии. В случаях, когда это нежелательно или невозможно придется заняться восстановлением базы, но большинство инструкций в сети рассматривают данный вопрос только на примере MS SQL Server, а PostgreSQL если и касаются, то очень вскользь. Поэтому в данной статье мы постараемся исправить данный пробел.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Начнем с того, что именно обозначает эта ошибка. Разработчики немногословны, никаких подробностей сообщение об ошибке не содержит:

oshibka-formata-potoka-postgres-001.png

Столь же скупа и информация для технической поддержки:

oshibka-formata-potoka-postgres-002.pngОбычно это вызывает у пользователей и неподготовленных администраторов тихую панику, особенно если под рукой нет актуальной резервной копии. А судорожные попытки восстановления базы, обычно без понимания смысла выполняемых действий приводят как правило к ее полному разрушению.

К возникновению данной ошибки приводит повреждение основной конфигурации информационной базы. Реже — кеша конфигурации информационной базы, в последнем случае устранить ошибку можно путем очистки кеша, для этого можете воспользоваться нашей утилитой 1:Tools (кто хочет поддержать нас — может скачать ее по ссылке с Инфостарта)

1:Tools (Зеркало на Инфостарте)
MD5: 448277422B59EFA426CC51E4F3A52F53

В остальных случаях придется заниматься восстановлением непосредственно базы. В этом месте мы сразу внесем ясность и разделим сущности: информационная база 1С — это хранилище данных на уровне логики 1С:Предприятия которое описывается конфигурацией информационной базы. Т.е. именно здесь содержатся документы, справочники, регистры и т.д. и т.п., а повреждение конфигурации информационной базы делает невозможной работу с ними на этом уровне абстракции. База данных СУБД — это набор таблиц в которых хранятся как данные, так и конфигурация информационной базы 1С.

Повреждение основной конфигурации информационной базы происходит именно на уровне логики 1С:Предприятия, база данных СУБД остается работоспособной и не содержит ошибок с точки зрения СУБД. Если это не так, то мы будем иметь дело с повреждением самой базы данных СУБД, а это уже совсем иная ситуация.

В зависимости от того, какая именно часть конфигурации ИБ оказалась повреждена база может не загружаться в обычном режиме, но загружаться в Конфигуратор, либо вообще не загружаться никак. Если доступен режим конфигуратора, то можно попробовать снять базу с поддержки и загрузить в нее исправную конфигурацию из файла, в некоторых случаях это приведет к успеху, в других может потребоваться сначала выявить и удалить сбойный элемент метаданных.

Все это достаточно сложно и не всегда приносит требуемый результат, поэтому проще и надежнее заменить конфигурацию информационной базы на заведомо исправную используя инструменты СУБД, в нашем случае PostgreSQL. В зависимости от используемой ОС (Windows или Linux) некоторые аспекты работы с PostgreSQL могут отличаться и это будет оговорено отдельно, в остальных случаях указанные команды применяются вне зависимости от платформы.

Перед тем как начинать работу с PostgreSQL в Linuх последовательно повысим свои права для суперпользователя и затем войдем в систему от имени пользователя postgres:

sudo -s
su postgres

Если утилита sudo не установлена (такой вариант может быть в Debian), то:

su -
su postgres

В первом случае вам потребуется ввести пароль от текущей учетной записи, во втором — от учетной записи суперпользователя (root).

Затем обязательно сделаем копию информационной базы средствами СУБД. Получить список баз данных в кластере СУБД можно командой:

psql -l

В Windows вам потребуется ввести пароль пользователя postgres.

oshibka-formata-potoka-postgres-003.pngВыяснив имя необходимой базы данных выгрузим ее дамп командой:

#Linux
pg_dump basename > ~/basename.psql

#Windows
pg_dump basename > D:backupbasename.psql

Где basename — имя нужной базы данных. Обратите внимание, что в Windows мы можем явно задать путь выгрузки дампа, а в Linux выгружаем его в домашнюю директорию пользователя postgres, т.е. /var/lib/postgresql.

Для дальнейших действий нам потребуется развернуть на этом же сервере СУБД еще одну базу с точно такой же конфигурацией информационной базы, это может быть как старый бекап поврежденной базы, так и другая база такой же конфигурации, чистая установка или демо база. Главное, чтобы конфигурация новой базы с точностью до релиза совпадала с конфигурацией поврежденной.

После чего откроем интерактивный терминал PostgreSQL в котором будем производить все последующие действия:

psql

В Windows вы можете получить сообщение:

ПРЕДУПРЕЖДЕНИЕ: Кодовая страница консоли (866) отличается от основной
страницы Windows (1251).
8-битовые (русские) символы могут отображаться некорректно.

В этом случае выполните:

 ! chcp 1251

Теперь подключимся к исправной базе:

с newbasename

где newbasename — имя исправной базы данных. При этом в строке приглашения появится имя подключенной базы.

Из нее мы выгрузим таблицу config в которой находится основная конфигурация информационной базы.

#Linux
COPY config TO '/var/lib/postgresql/config_OK.txt';
#Windows
COPY config TO 'D:/backup/config_OK.txt';

Обратите внимание, при указании пути для операционной системы Windows вы также должны использовать прямой, а не обратный слеш. Также служба СУБД должна иметь права на запись в целевую аудиторию, проще всего это сделать выдав полные разрешения для пользователя Все.

Переподключимся к поврежденной базе:

с basename

На всякий случай, также сохраним содержимое таблицы config:

#Linux
COPY config TO '/var/lib/postgresql/config_ERR.txt';
#Windows
COPY config TO 'D:/backup/config_ERR.txt';

После чего очистим сбойную таблицу:

DELETE FROM config;

И загрузим в нее данные из исправной информационной базы:

#Linux
COPY config FROM '/var/lib/postgresql/config_OK.txt';
#Windows
COPY config FROM 'D:/backup/config_OK.txt';

Для выхода из терминала PostgreSQL введите:

q

Если все сделано правильно, то поврежденная конфигурация информационной базы будет заменена на исправную и ее работоспособность будет восстановлена.

В некоторых случаях оказывается повреждена не основная конфигурация информационной базы, а конфигурация, открытая на редактирование в Конфигураторе. Внешне это проявляется как невозможность загрузить информационную базу в этом режиме. Для исправления этой ошибки достаточно очистить таблицу configsave:

DELETE FROM configsave;

Как видим, устранение ошибки формата потока средствами СУБД PostgreSQL достаточно несложно, однако требует некоторых навыков работы с данной СУБД. Но если вы будете внимательно и вдумчиво следовать нашей инструкции, то проблем у вас возникнуть не должно.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

  • 1с ошибка формата потока при запуске как исправить
  • 1с ошибка формата потока не открывается конфигуратор 1с
  • 1с ошибка формата потока config
  • 1с ошибка фискального аппарата
  • 1с ошибка установки соединения конфигуратор