Ошибка формата потока при сравнении объединении

"Ошибка формата потока" при сравнении/объединении - как найти причину?

«Ошибка формата потока» при сравнении/объединении — как найти причину?

Я
   ugroblin

15.08.14 — 13:22

В базу можно зайти и режиме предприятия и конфигуратора. Рекомендации из http://www.gilev.ru/stream/ выполнил:

1. отключил на сервере ipv6

2. почистил кэш

3. configsave пустая

4. «Если ошибка возникает в процессе попытки сравнения/обновления базы — удалите объект, на котором происходит сбой» — не могу, т.к. конфигуратор в какой-то момент «задумывается» и перестает обновлять строку статуса.

В техножурнале информации тоже мало:

05:04.7600-22138920,PROC,0,process=1CV8

05:04.7601-0,EXCP,0,process=1CV8,Usr=Администратор,Exception=Exception,Descr=Ошибка формата потока

Рабочая база на MS SQL, разработка ведется в файловой базе подключенной к хранилищу. В файловых базах проблем с загрузкой, сравнением/объединением нет.

   Юпитер

1 — 15.08.14 — 13:25

кэш почистил?

   shuhard

2 — 15.08.14 — 13:29

(1) +1

и руки вымыть

   ugroblin

3 — 15.08.14 — 13:50

(1) (2) см. пункт 2.

кроме этого заходил с другого компьютера — та же ошибка.

выгрузил в dt, загрузил в другую SQL базу — та же ошибка.

Как выявить на каком объекте метаданных происходит сбой?

Содержимое logcfg.xml на клиенте:

<?xml version=»1.0″ encoding=»UTF-8″?>

<config xmlns=»http://v8.1c.ru/v8/tech-log»>;

<dump create=»true» location=»D:1C_TechDumps» prntscrn=»false» type=»2″/>

<log history=»96″ location=»D:1C_TechLogs»>

<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>

   Apokalipsec

4 — 15.08.14 — 14:00

добавь какой-нибудь реквизит в свой справочник или док, сохрани и обнови конфу, сравни — объедини.

   ИС-2

5 — 15.08.14 — 14:04

ТиИ, (перед этим бэкап). Тупо накатить cf (сравнение выполянть в другой базе

   MaxS

6 — 15.08.14 — 14:06

Если базу можно сделать файловой, то попробовать сделать всё платформой 8.3.5.

Недавно у меня на 8.2 вылетало при сравнении, на 8.3.5 прошло нормально.

   Крошка Ру

7 — 15.08.14 — 14:10

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

Мне помогал такой вариант:

Конфигурация — Выгрузить файлы конфигурации.

Раз за разом пробуешь выгружать, постепенно убирая галки. Натыкаешься на проблемный объект(который не давал выгрузить). Удаляешь его из конфы и добавляешь из бекапной конфой(через объединение), сохраняешь.

   ugroblin

8 — 15.08.14 — 14:38

(4) не помогло

(5) забыл написать — бэкап и ТиИ было сделано первым шагом. (6) Не вариант, тут везде 8.2. Других граблей не хочу получить.

(7) Ушел пробовать.

   steptostep

9 — 15.08.14 — 14:49

(8) Как вариант почти аналогичный (7), но побыстрей, в конфигураторе в режиме глобального поиска ищем, например ; Когда конфигуратор вылетает в окне результатов поиска видим какой был последний нормальный объект — в следующем за ним проблемный элемент

   ugroblin

10 — 15.08.14 — 15:30

(7) Нашел, спасибо. Теперь другая проблема — не лечится.

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

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

   steptostep

11 — 15.08.14 — 16:18

(10) А из «сегодняшней» конфигурации создать пустую SQL и проверить что с ней всё в порядке?

   Крошка Ру

12 — 15.08.14 — 16:48

(10) Т.е ты удалил косячный объект из конфы, сохранил, а потом при сравнении с другой конфой(галочку надо оставить только у объекта, который удалил) он вылетает?

   Крошка Ру

13 — 15.08.14 — 16:49

Да, кстати, делать это надо на пустой базе в SQL — варианте

   ugroblin

14 — 18.08.14 — 16:33

Текущая ситуация.

Полностью снял с поддержки. Теперь конфигурацию можно загрузить, но при сравнении/объединении также вылетает до формирования списка различий. В чистую SQL базу загрузил пятничную версию конфигурации, пытаюсь объединить с сегодняшней — ошибка формата потока.

   Maniac

15 — 18.08.14 — 16:35

Нужно просто обновить платформу.

   Maniac

16 — 18.08.14 — 16:36

У тебя релиз кривой.

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

   mehfk

17 — 18.08.14 — 16:55

Чем вводить топикстартера в заблуждение иди лучше никому не нужгые поделки продавай.

   Леха Дум

18 — 18.08.14 — 17:23

(17) в (16) вполне себе реальный случай — сам столкнулся

   mehfk

19 — 18.08.14 — 17:26

(18) Угу. Прежде чем строить такие предположения надо неплохо бы узнать версии, используемые для разработки и для «рабочей» базы.

   Леха Дум

20 — 18.08.14 — 17:28

(19) осталось ТС дождаться, телепатов нет :)

   Maniac

21 — 18.08.14 — 19:42

(17) Если ты неуч, лучше просто молчи.

Я эту ошибку уже 50 раз переварил.

   Maniac

22 — 18.08.14 — 19:42

И на всех случаях — просто оказывалась старая платформа.

   ugroblin

23 — 18.08.14 — 23:06

Используем хранилище. Лично я использую тот же релиз 8.2, который стоит на рабочем сервере. Насколько я знаю есть и те, кто с 8.3 к хранилищу подключаются.

   ugroblin

24 — 18.08.14 — 23:09

(16) Если дело в этом, то придется обновить сервер, у всех пользователей обновить платформу. Без этого никак?

   Maniac

25 — 18.08.14 — 23:10

(24) Никак.

Я точно знаю что в недавнем релизе в списке официальных ошибок было именно такое исправление.

   Euguln

26 — 18.08.14 — 23:17

Я делал так:

1. запускаем сравнение/объединение.

2. В строке состояния выводятся обрабатываемые объекты.

3. Замечаем, на каком объекте вываливается, можно примерно, они обрабатываются по порядку.

4. Пытаемся открывать формы и макеты объектов в основной конфе и в файле.

   mehfk

27 — 19.08.14 — 05:42

(21) Ты прямо биореактор, по 50 раз перевариваешь. Или ты плохой сварщик?

   mehfk

28 — 19.08.14 — 05:50

Еще раз для сващиков-логановодов повторяю: не зная версий делать такие предположения глупо.

   Maniac

29 — 19.08.14 — 08:09

(27) мозг ойди себе вправь чтобы воспринимать нормадьно информацию, а то видимо у тебя все через нижнее место входит, а выходит сверху.

  

mehfk

30 — 19.08.14 — 09:35

Свои советы можешь применять к себе. Только сварщик-логановод может наступить на одни и те же грабли 50 раз и гордиться этим.

Борьба с сообщением «Ошибка формата потока» в 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/

Здравствуйте. Ошибка происходит, когда я нажимаю «Выполнить» в окне сравнения и объединения конфигураций. Сначала я не могла обновить конфигурацию на просто обновление (серверная база была). Потом на полный релиз. Потом сделала файловую копию — то же самое. Тогда я пошла от обратного, создала пустую типовую конфигурацию и попыталась обновить ее на основную конфигурацию (добавить нужные реквизиты хотя бы) — результат тот же. Попыталась обновить пустую конфигурацию на конфигурации базы данных — то же. И платформу тоже обновили, на всякий случай. Сама база работает в пользовательском режиме нормально. А вот с обновлением постоянно какие-то засады. В прошлый раз нечто подобное было, помогло через снятие с поддержки в файловом варианте и обратно загрузка на сервер в новую созданную базу. В этот раз я даже не знаю, что еще попробовать. Все остальные конфигурации — серверные и файловые — работают нормально.

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

Почти типовая БП КОРП 3.0.49.21. Обновить пытаюсь — да на любой более поздний релиз. Ни последовательно, ни на полный релиз она не обновляется. Сейчас вот с 3.0.51.22 развлекаюсь. Платформа была 8.3.8, теперь 8.3.10.2466, но картина та же.

Да. Только как это может повлиять, если на пустую типовую конфигурацию моя не ложится? Та же ошибка в тот же момент. Данных нет вообще.

Там есть такая кнопка проверить конфиуграцию. Выдает ошибки ?

технологический журнал включи, возможно там что-то увидишь

совсем недавно столкнулись с проблемой примерно такой же непонятной: из конфы не формировалась конфигурация поставки. ни при каких копированиях, проверках и всем прочем стандартном. помогло следующее: пустую конфу сравнить/объединить с проблемной цф-кой. на предложение загрузить — отказаться. и выполнить объединение. тогда стала нормально работать. а вот после этого попробуй загрузи ее в базу с данными и тогда пробуй обновлять. и, да — не помогала даже выгрузка конфы в файлы и потом загрузка в новую.

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

Тэги: 1С 8

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

Содержание:

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С с битой версии на нормальную. И уже в ней попробовать выполнить обновление. И на это раз всё должно получиться!

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

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

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

1с ошибка формата потока

Данное окно входит в ТОП-3 самых распространенных ошибок 1С:Предприятие. Оно неприятно из-за своей не информативности. Непонятно: где, в чем ошибка? Естественной реакцией будет нажатие кнопки «Перезапустить», но с высокой вероятностью можно утверждать, что перезапуск проблему не устранит, и пользователь снова увидит данное окно.

В этой статье будут объяснены причины возникновения, разновидности и способы устранения «Ошибки формата потока» 1С.

Почему 1С 8 пишет «Ошибки формата потока»?

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

Но что произойдет, если файл “кэша” будет записан с ошибкой/ошибками, в результате неправильного завершения сеанса работы, либо скачка напряжения, либо сбоя сети (для клиент-серверного варианта работы 1С)? При следующей попытке обращения к “кэшу” 1С не сможет прочитать файл и появится окно “Ошибка формата потока”. “Битый кэш” является самой частой причиной возникновения этой ошибки.

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

Виды ошибки формата потока

Условно ошибку формата потока 1С можно поделить на 2 вида:

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

В зависимости от вида ошибки можно выбрать наиболее подходящий вариант ее устранения. Но можно использовать и все способы по очереди, пока один из них не сработает. Способы не нанесут вреда вашей базе 1С 8. Впрочем, если действовать как настоящий профессионал — стоит сначала сделать бэкап, а уже потом бороться с “Ошибкой формата потока”.

Как устранить “Ошибку формата потока”?

Рассмотрим ТОП способов решения :

1. Почистить кэш 1С

Данный способ подробно был рассмотрен в нашей статье “Как очистить Кэш в 1С”. Вкратце напомним. Для удаления файлов кэша вручную необходимо найти папки, где кэш хранится. Для операционных систем Win7 и выше временные файлы хранятся по адресу C:UsersUsernameAppDataRoaming1C и C:UsersUsernameAppDataLocal1C в папках, начинающихся с «1cv8». В Windows XP, в папке пользователя по адресу Local SettingsApplication Data1C. Если папка AppData не видна — настройте видимость скрытых папок. Ниже на рисунке показано, как выглядят файлы кэша – папки с длинными непонятными именами (в нашем случае файл всего один). Для очистки кэша нужно удалить эти папки.

Важно! Удалять папки можно только тогда, когда завершены процессы работы с 1С:Предприятие.

очистить ошибку формата потока обновлением кэш

2. Запустить тестирование и исправление 1С

В режиме конфигуратора нужно кликнуть по пункту меню “Администрирование” и затем “Тестирование и исправление”.

конфигуратор ошибка формата потока

Должны быть отмечены первые два пункта “реиндексация таблиц информационной базы” и “проверка логической целостности информационной базы”. Нажмите кнопку “Выполнить”. Система сама проверит базу, найдет ошибки, исправит их и предоставим вам отчет о проделанной работе. При необходимости отметьте также третий пункт “проверка ссылочной целостности информационной базы”.

ошибка загрузки информационной базы ошибка формата потока

3. Запуск«chdbfl.exe»

Если нет возможности зайти в конфигуратор, тогда запустите программу «chdbfl.exe», которая находится: «C:Program Files (x86)1cv88.3……bin». Выберите файл Базы Данных, отметьте галочкой “Исправлять обнаруженные ошибки” и нажмите кнопку “Выполнить”. Дальше система все сделает за вас. Система сама проверит базу, найдет ошибки и исправит их. Во время работы программы «chdbfl.exe» не должно быть активных сеансов работы с 1С.

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

4. Выгрузить и загрузить информационную базу в .dt

В режиме конфигуратора выберите пункт меню “Администрирование” и кликните “Выгрузить информационную базу”. После этого выберите место куда хотите сохранить файл базы (.dt), задайте файлу имя и нажмите “Сохранить”.

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

После этого создайте новую пустую базу у себя на компьютере (либо на сервере). Зайдите в конфигуратор новой базы, нажмите “Администрирование”, затем “Загрузить информационную базу”. Выберите подготовленный ранее файл и нажмите “Открыть”.

отчет ошибка формата потока5. Выгрузить и загрузить данные XML.

Данный способ может повлечь потерю данных, поэтому его рекомендуется использовать только опытным пользователям. Способ схож с предыдущим и заключается в том, что сначала база выгружается, (только не в .dt, как в предыдущем способе, а в специальный формат .XML). Затем база загружается обратно. Делается это с помощью встроенной обработки “Выгрузка и загрузка данных XML”.

платформа 1с предприятие 8.3 ошибка формата потока6.Обновление 1С

Причиной рассматриваемой ошибки может стать наличие активных сеансов пользователей, работающих в разных версиях платформы 1С. Например, в базе есть активный сеанс пользователя с платформой 1С 8.3.5…., а пытается подключиться другой, с версией 8.3.4…. Если на компьютере установлены несколько версий — убедитесь, что в окне редактирования информационной базы выбрана нужная вам “правильная” версия.

ошибка формата потока при обновлении7. Другие способы

В 99% случаев вышеописанные способы борьбы с “Ошибкой формата потока” эффективно сделают свою работу и ошибка “уйдет”. В оставшемся 1% придется применять более сложную диагностику, иногда выходящую за рамки 1С, например: почистить временные файлы компьютера, а не только кэш 1С; проверить жесткий диск на битые сектора при помощи утилиты “chkdsk.exe”; проверить компьютер антивирусом. Можно даже попробовать запустить базу 1С на другом компьютере и таким образом локализовать проблему, убедившись, что ошибка кроется именно в информационной базе, а не в железе и не в Операционной Системе.

Данная статья создана в помощь столкнувшимся с ошибкой 1С “Ошибка формата потока”, здесь были рассмотрены и объяснены причины ее появления, её условные виды и способы устранения. Ошибка выглядит страшно и непонятно из-за своей неопределенности, но, как видим, устранить данную ошибку по силам каждому. Заключив соглашение о техническом обслуживании 1С, работы по устранению сбоев устраняются в кратчайший срок специалистами ГК «Интегрус».

1cv82-stream-format-error-000.jpg

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

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

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

1cv82-stream-format-error-001.jpg

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

1cv82-stream-format-error-002.jpg

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

1cv82-stream-format-error-003.jpg

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

1cv82-stream-format-error-004.jpg

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

В нашем случае оказалось совершенно несложно заметить, что последним проверяемым объектом оказался РегламентированныйОтчетНДПИ, а так как деятельность предприятия никак не связана с добычей полезных ископаемых, то неудивительно, что в повседневной работе данная ошибка никак себя не проявляла.

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

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

Для осуществления задуманного нам понадобится файл конфигурации того же самого релиза либо более старшего, сразу выполнив обновление. Перед тем, как удалить поврежденный объект, его надо снять с поддержки.

1cv82-stream-format-error-005.jpg

После чего можно приступать к сравнению и объединению конфигурации или обновлению, проконтролировав замену поврежденного объекта исправным из конфигурации поставщика.

1cv82-stream-format-error-006.jpg

Важно! Обновление следует производить только используя файл полной конфигурации — cf, а не обновления — cfu, так как последний может не содержать необходимого объекта.

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

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

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

Практически любой пользователь 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с что это
  • Ошибка формата потока 1с упп
  • Ошибка формата передачи фн атол 3439
  • Ошибка формата передачи фн атол 30ф
  • Ошибка формата ответного сообщения

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

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