Ошибка формата потока данных, частный случай

11.07.20

Задачи пользователя - Корректировка данных

Вариант решения ошибки формата потока данных при попытке открытия конфигурации в конфигураторе.

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

Действия по шагам:

  1. Очищаем кеш конфигурации на клиенте. Это заставит конфигуратор получить данные из базы;
  2. Запускаем SQL Server Profiler в котором настраиваем сбор всех запросов отправляемых базе, соответственно с фильтром по нужной базе;
  3. Запускаем сбор данных профайлером и открываем конфигурацию;
  4. Как только получаем ошибку профайлер останавливаем;
  5. Самый последний запрос будет к битым данным. Выглядеть он должен примерно так:
    exec sp_executesql N'SELECT Creation,Modified,Attributes,DataSize,BinaryData FROM Config WHERE FileName = @P1 ORDER BY PartNo',N'@P1 nvarchar(128)',N'9ca28693-c6ea-42fd-8902-84d9b5abd962'

     

  6. Дальше все просто, переносим корректные данные из нормальной базы в битую:
    delete from [Битая].dbo.Config where PartNo = 0 and FileName = N'9ca28693-c6ea-42fd-8902-84d9b5abd962';
    insert into [Битая].dbo.Config 
    SELECT * FROM [Нормальная].dbo.Config WHERE PartNo = 0 and FileName = N'9ca28693-c6ea-42fd-8902-84d9b5abd962'

     

  7. ВАЖНО! Подобного рода манипуляции могут привести к потере некоторых изменений, например можно потерять строки кода, элементы на форме и т.п. в зависимости от того какой объект восстанавливаем;
  8. На этом можно остановиться, но если вы хотите узнать кто этот проблемный объект то нужно получить его данные;
  9. Для получения данных можно воспользоваться запросом: 
    select  *,cast(DECOMPRESS(0x1F8B0800000000000400 + BinaryData)as varchar(max)) as TextD
    from dbo.[Config] where filename like '9ca28693-c6ea-42fd-8902-84d9b5abd962' +'%'

     

  10. То, что нас интересует, находится в поле TextD:
     
     Результат распаковки

     п»ї{1,  {0,  {13,  {2,  {1,0,9ca28693-c6ea-42fd-8902-84d9b5abd962},"ФормаДокумента",  {1,"ru","Форма документа"},"",0,1,32e087ab-1491-49b6-aba7-43571b41ac2b,3,00000000-0000-0000-0000-000000000000},0,0,  {2,  {"#",1708fdaa-cbce-4289-b373-07a5a74bee91,1},  {"#",1708fdaa-cbce-4289-b373-07a5a74bee91,2}  }  }  },0}

     

  11. Теперь нам надо привести это в читабельный вид, это можно сделать любым онлайн декодером кодировок, например Декодер. В итоге получим:
     
     Читабельный текст

     A533; {1, A533;{0, A533;{13, A533;{2, A533;{1,0,9ca28693-c6ea-42fd-8902-84d9b5abd962},"ФормаДокумента", A533;{1,"ru","Форма документа"},"",0,1,32e087ab-1491-49b6-aba7-43571b41ac2b,3,00000000-0000-0000-0000-000000000000},0,0, A533;{2, A533;{"#",1708fdaa-cbce-4289-b373-07a5a74bee91,1}, A533;{"#",1708fdaa-cbce-4289-b373-07a5a74bee91,2} A533;} A533;} A533;},0}

     

  12. Становится понятно, что это форма какого-то документа.
  13. Запрос из пункта 9ть вернул нам две строки: 9ca28693-c6ea-42fd-8902-84d9b5abd962 и 9ca28693-c6ea-42fd-8902-84d9b5abd962.0. 
  14. 9ca28693-c6ea-42fd-8902-84d9b5abd962.0 - это сама форма. Чтобы получить ее код проделываем операции 10 и 11. В результате получим исходный код формы по которому можно найти эту форму в конфигураторе и убедиться, что с ней все в порядке, либо привести ее к надлежащему состоянию.

Надеюсь, эта краткая памятка поможет вам сэкономить время на решение этой ошибки.

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

См. также

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    33587    109    152    

74

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

28800 руб.

06.10.2023    4334    36    18    

45

Корректировка данных Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

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

3600 руб.

10.02.2017    111160    667    174    

706

Корректировка данных Программист Пользователь Платформа 1С v8.3 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Представьте, что есть система QR - кодирования, которая НЕ ТРЕБУЕТ изменения конфигурации, НЕ ТРЕБУЕТ изменения ни одной печатной формы для добавления QR-кода, включая внешние, НЕ ХРАНИТ данные штрихкодов и их связь, от чего база не "пухнет", ИМЕЕТ возможность закодировать в QR-коде произвольные данные параметров для последующей обработки полученных данных, УМЕЕТ прикреплять сканы, УМЕЕТ обработать считанный QR-код как ВЫ захотите. А также ХРАНИТ историю операций в обход базы для каждого пользователя в отдельности и УМЕЕТ работать с 2D - сканерами. А также автоматически распознавать отсканированные печатные формы (картинки или pdf-файлы) и выполнять заданные произвольные алгоритмы, в том числе прикрепление их к документам! Обновление 3.2 от 09.06.2024!

19200 руб.

26.08.2018    52504    16    61    

55

Взаиморасчеты Корректировка данных Бухгалтер Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Бухгалтерский учет Управленческий учет Платные (руб)

Вы наконец разобрались с закрытием месяцев и пора начать контролировать сроки оплаты поставщикам и задолженности клиентов, но в базе расчеты не идут из-за развернутого сальдо? Не беда, есть решение!

12000 руб.

02.11.2020    7445    6    0    

8

Закрытие периода Корректировка данных Программист Пользователь Платформа 1С v8.3 Система компоновки данных 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 руб.

13.07.2015    51285    174    29    

126

Корректировка данных Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Налоговый учет Налог на прибыль Платные (руб)

Обработка служит для: выравнивания бухгалтерского и налогового учета на определенную дату по выбранным счетам; закрытия остатков по выбранным счетам; обнуления налогового учета (ПР, ВР также будут обнулены)

2880 руб.

05.05.2024    673    10    0    

6

Корректировка данных Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет УСН Платные (руб)

Расширение предназначено для корректировки записей в книге доходов и расходов. Пока только для документов: Поступление на расчетный счет, Списание с расчетного счета, Поступление наличных (в народе ПКО) и Выдача наличных (РКО).

2400 руб.

19.11.2019    18870    35    24    

11
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dvsidelnikov 73 13.07.20 09:17 Сейчас в теме
Увлекательно!

0x1F8B0800000000000400 - это что?
2. 1cNike 209 13.07.20 11:47 Сейчас в теме
(1) Присоединяюсь к вопросу. Откуда взялось это значение?
3. VKislitsin 1021 13.07.20 11:52 Сейчас в теме
(1) Денис, отвечу за автора:
0x1F8B0800000000000400 - это описание GZIP формата (10 байт)
Zhilyakovdr; dvsidelnikov; +2 Ответить
4. VKislitsin 1021 13.07.20 12:09 Сейчас в теме
Немного дополню.
В служебных таблицах ИБ (dbschema, config, configsave, files, params и т.д.) двоичные данные могут быть просто сериализованными (всегда начинаются с 0xEF), или сериализованными и упакованны методом Deflate. Для десериализации можно применить CAST (BinaryData AS XML). Десериализация упакованных - соответственно CAST(DECOMPRESS(0x1F8B0800000000000400 + BinaryData) AS XML)
Функция DECOMPRESS, если я правильно помню, появилась в SQL Server начиная с 2016-й версии.
Unknown31; Zhilyakovdr; dvsidelnikov; +3 Ответить
5. dvsidelnikov 73 13.07.20 16:59 Сейчас в теме
(4) спасибо за дельное дополнение!
6. kosmo0 111 18.07.20 12:59 Сейчас в теме
Вот это да. Для труднорешаемой проблемы написали алгоритм поиска решения. Прежде большинство страдальцев от проблемы плясали с бубном, плясали на бубне, плясали под бубном, плясали в бубне ища способ решения. Респектую.

зы. жаль нужен сервер, так как на файловой базе не применить.
зызы. жаль что это не статья от 1с (вы. пользователи, гребите - авось выгребите)
7. vl-sher1 44 25.07.21 21:44 Сейчас в теме
Серверная БД, EDT 2021.1.5, платформа 8.3.18.1289. "Ошибка формата потока" после очередного обновления конфы при ее запуске из EDT. Расширений нет, меняли объекты конфы. Помогло
truncate table configsave
После этого поднял EDT и все заработало.
8. Zhilyakovdr 147 26.07.21 21:26 Сейчас в теме
(7) Добрый день!
Посмотрите на всякий случай не остались ли артефакты в таблице Config.
В личку кинул небольшой скрипт которым решаю подобные проблемы, там несколько запросов под разные ситуации.
Надеюсь не пригодятся)))
Оставьте свое сообщение