Bad adaptive filter value 1с ошибка

Обновлено: 07.07.2024

Развивая тему конспектов по магистерской специальности "Communication and Signal Processing" (TU Ilmenau), продолжить хотелось бы одной из основных тем курса "Adaptive and Array Signal Processing". А именно основами адаптивной фильтрации.

Для кого в первую очередь была написана эта статья:

1) для студенческой братии родной специальности;
2) для преподавателей, которые готовят практические семинары, но ещё не определились с инструментарием — ниже будут примеры на python и Matlab/Octave;
3) для всех, кто интересуется темой фильтрации.

Что можно найти под катом:

1) сведения из теории, которые я постарался оформить максимально сжато, но, как мне кажется, информативно;
2) примеры применения фильтров: в частности, в рамках эквалайзера для антенной решетки;
3) ссылки на базисную литературу и открытые библиотеки (на python), которые могут быть полезны для исследований.

В общем, добро пожаловать и давайте разбирать всё по пунктам.


Задумчивый человек на фото — знакомый многим, я думаю, Норберт Винер. Фильтр его имени мы, по большей части, и будем изучать. Однако, нельзя не упомянуть и о нашем соотечественнике — Андрее Николаевиче Колмогорове, чья статья 1941 года также внесла значительный вклад в развитие теории оптимальной фильтрации, которая даже в англоязычных источниках так и называется Kolmogorov-Wiener filtering theory.

Что рассматриваем?

Сегодня мы рассматриваем классический фильтр с конечной импульсной характеристикой (КИХ, FIR — finite impulse response), описать который можно следующей простой схемой (рис. 1).


Рис.1. Схема КИХ-фильтра для изучения фильтра Винера.[1. c.117]

Запишем в матричном виде, что именно будет на выходе данного стенда:

  • — это разница (ошибка) между заданным и полученным сигналами
  • — это некоторый предварительно заданный сигнал (desired signal)
  • — это вектор отсчетов или, иными словами, сигнал на входе фильтра
  • — это сигнал на выходе фильтра
  • — это эрмитово сопряжение вектора коэффициентов фильтра — именно в их оптимальном подборе и кроется адаптивность фильтра

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

Что будем оптимизировать?

Оптимизировать, а точнее минимизировать мы будем не просто ошибку, среднюю квадратичную ошибку (MSE — Mean Sqared Error):

где обозначает функцию издержек (cost function) от вектора коэффициентов фильтра, а обозначает мат. ожидание.

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


У нашей функции ошибки есть каноническая форма [1, c.121]:

где — это дисперсия ожидаемого сигнала, — это вектор кросс-корреляции между входным вектором и ожидаемым сигналом, а — это матрица автокорреляции входного сигнала.

Вывод данной формулы здесь (старался понагляднее).


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

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

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

Как будем решать?

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

Аналитическое решение

Решать эту задачу можно, так сказать, в лоб — с помощью обратных матриц:

Такое выражение называется уравнением Винера-Хопфа (Wiener–Hopf equation) — оно нам ещё пригодится в качестве некого эталона.

Конечно, если быть совсем дотошным, то, наверное, правильнее было бы записать это дело в общем виде, т.е. не с , а с (псевдо-инвертирование):


Однако, автокорреляционная матрица не может быть не-квадратной или сингулярной, поэтому вполне справедливо считаем, что никакого противоречия нет.

Из данного уравнения аналитически можно вывести, чему будет равняться минимальное значение функции издержек (т.е. в нашем случае MMSE — minimum mean square error):


Хорошо, одно решение есть.

Решение итеративным методом

Однако, да, решать систему линейных уравнений можно и без инвертирования автокорреляционной матрицы — итеративно (to save computations). Для этой цели рассмотрим родной и понятный метод градиентного спуска (method of steepest/gradient descent).

Суть алгоритма можно свести к следующему:

  1. Выставляем искомую переменную в какое-то значение по умолчанию (например, )
  2. Выбираем некоторый шаг (как именно выбираем, мы поговорим ниже).
  3. И далее, как бы, спускаемся вниз по нашей исходной поверхности (в нашем случае, это поверхность MSE) с заданным шагом и определенной скоростью, определяемой величиной градиента.

Отсюда и название: gradient — градиентный или steepest — пошаговый descent — спуск.

Градиент в нашем случае уже известен: по сути, мы нашли его, когда дифференцировали функцию издержек (поверхность же вогнутая, сравните с [1, с. 220]). Запишем как будет выглядеть формула для итеративного обновления искомой переменной (коэффициентов фильтра) [1, с. 220]:

где — это номер итерации.

Теперь давайте поговорим о выборе величины шага.

Перечислим очевидные предпосылки:

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

Относительно фильтра Винера ограничения, конечно, уже были давно найдены [1, с.222-226]:

где — это наибольшее собственное число автокорреляционной матрицы .

Кстати говоря, собственные числа и вектора — это отдельная интересная тема в контексте линейной фильтрации. Под это дело есть даже целый Eigen filter (см. Приложение 1).

Но и это, к счастью, не все. Есть и оптимальное, адаптивное решение:

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

Вывод формулы здесь (много математики - смотреть только таким же отъявленным ботанам, как я).


Окей, под второе решение мы тоже подготовили почву.

А нельзя ли на примерах?

Наглядности ради проведем небольшое моделирование. Использовать будем Python 3.6.4.

Скажу сразу, данные примеры — это часть одного из домашних заданий, каждое из которых предлагается студентам для решения в течении двух недель. Часть я переписал под python (в целях популяризации языка среди радиоинженеров). Возможно, вы встретите в Сети ещё какие-то варианты от других бывших студентов.

Наш линейный фильтр мы применим для задачи выравнивания канала (channel equalization), основной целью которого является нивелировать различные воздействия этого самого канала на полезный сигнал.

Модель системы

Допустим, есть антенная решетка (её мы уже рассматривали в статье про MUSIC).


Рис. 3. Ненаправленная линейная антенная решетка (ULAA — uniform linear antenna array) [2, с. 32].

Определим исходные параметры решетки:

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


Рис. 4. Модель широкополосного канала при n фиксированных задержках.[3, c. 29]. Как вы понимаете, конкретные обозначения роли не играют — далее мы будем использовать немного другие.

Модель принимаемого сигнала для одного сенсора выразим следующим образом:

В данном случае обозначает номер отсчета, — это отклик канала по l-ому лучу, L — количество регистров задержки, s — передаваемый (полезный) сигнал, — аддитивный шум.

Для нескольких сенсоров формула примет вид:

где и — имеют размерность , размерность равна , а размерность равняется .

Предположим, что каждый сенсор принимает сигнал тоже с какой-то задержкой, в силу падения волны под каким-то углом. Матрица в нашем случае будет сверточной матрицей для вектора откликов по каждому лучу. Думаю, в коде будет более понятно:

Далее зададим исходные данные для полезного сигнала и шума:

Теперь переходим к корреляциям.

Вывод формул здесь (тоже простыня для самых отчаянных).


Найдем решение по Винеру:

Теперь перейдем к методу градиентного спуска.

Найдем наибольшее собственное число, чтобы из неё потом вывести верхнюю границу шага (см. формулу (9)):

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

Определим максимальное количество итераций:

Теперь сделаем то же самое, но уже для адаптивного шага (формула (10)):

Получить должны нечто такое:


Рис. 5. Кривые обучения (learning curves) для шагов разных размеров.

Закрепления ради проговорим основные моменты по градиентному спуску:

  • как и ожидалось, оптимальный шаг дает самую быструю сходимость;
  • больше не значит лучше: превысив верхнюю границу мы вообще не достигли сходимости.

Вот мы и нашли оптимальный вектор коэффициентов фильтра, который будет наилучшим образом нивелировать влияния канала — обучили эквалайзер.

А есть что-то более близкое к реальности?

Конечно! Мы уже несколько раз проговорили, что сбор статистики (т.е. вычисление корреляционных матриц и векторов) в real-time системах — это далеко не всегда доступная роскошь. Однако, человечество приспособилось и к этим сложностям: вместо подхода детерминированного на практике используются подходы адаптивные. Разделить их можно на две большие группы [1, c. 246]:

  • вероятностные (stochastic) (например, SG — Stochastic Gradient)
  • и на основе метода наименьших квадратов (например, LMS — Least Mean Squares или RLS — Recursive Least Squares)

Тема адаптивных фильтров неплохо представлена в рамках open-source сообщества (примеры для python):

Во втором примере мне особенно нравится документация. Однако, будьте внимательны! Когда я тестировал пакет padasip, я столкнулся со сложностями в обработке комплексных чисел (по дефолту там подразумеваются float64). Возможно, такие же проблемы могут возникнуть и при работе с какими-то другими реализациями.

Алгоритмы, конечно же, имеют свои достоинства и недостатки, сумма которых и определяет область применения алгоритма.

Коротко взглянем на примеры: рассматривать будем три уже упомянутых нами алгоритма SG, LMS и RLS (моделировать будем на языке MATLAB — каюсь, заготовки уже были, а переписывать всё на питон единообразия ради… ну. ).

Описание алгоритмов LMS и RLS можно подсмотреть, например, в доке по padasip.

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

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

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

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

Второй способ — это удаление всех сопутствующих файлов в папке с базой. Проще это сделать переносом самого файла, в котором хранится наша база. Он имеет расширение 1cd и называется 1.8. Как правило, этот файл по размеру превышает остальные. Его-то и выделяем, после чего переносим в новую созданную папку.

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

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

Так как при выгрузке dt файла происходит сжатие таблиц информационной базы, этот способ также может помочь устранить ошибку. Если конфигуратор не запускается или после тестирования ошибка возникает вновь, то необходимо проверить на наличие ошибок сам файл информационной базы. Проверяется он стандартной утилитой ChekdbfL, которая идёт в комплекте вместе с установленной платформой 1С:Предприятие. Расположена это утилита в папке «Program files → bin».

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

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

Также ошибка формата потока данных в 1С может досаждать своим появлением не только при открытии базы, но и при её обновлении.

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

В первую очередь произвести тестирование и исправление базы. Запускаем соответствующую обработку, проставляем все галочки и здесь переключатель обязательно ставим в положение тестирования и исправления. Насчет ссылок – поставить на «Не изменять», нажимаем на кнопку «Выполнить» и довольно долго ждем.

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

Находим его на жёстком диске по пути C:/program files(86)/1cv8, затем переходим в папку bin, где и находится обработка chdbfl.

Для общего сведения chdbfl — это сокращение от Chek database files, так что белиберда вполне логична.

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

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

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


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

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

То есть конфигурационный файл нашей базы на самом деле представляет собой пару конфигурации – типовая конфигурация 1С (на замке), и основная, открытая для доработок.

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

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

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

Далее необходимо обновить конфигурацию базы данных, чтобы получить базу 1С, снятую с поддержки. Но обновить мы её не сможем – придется поставить базу на поддержку. Для этого используем команду «Сравнить/объединить с конфигурацией из файла». Выбираем наш «здоровый» файл конфигурации cf, тут же возникает предложение поставить программу и базу на техническую поддержку, мы, конечно же, соглашаемся с этим. Затем появляется окно сравнения/объединения, и если мы сейчас нажмем на кнопку «Выполнить», то уничтожим все доработки в нашей базе – обязательно убираем галочку «Сохранять настройки автоматически», нам нужно только поставить базу на техническую поддержку.
Мы почти закончили. Осталось только разобраться, что это за странный значок появился:


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

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

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

Такую ошибку показывает 1С и немногословно предлагает « Завершить работу » или « Перезапустить. ». Приятного мало. У клиента ошибка возникла при работе с файловой базой 1С 8.2 в общем доступе (БП 2.0).

С единственным допущением — дальнейшие шаги, в первую очередь, рассматриваем применительно к файловому режиму. Для клиент-серверного доступа — свои особенности.

«Ошибка СУБД: Внутренняя ошибка компоненты dbeng8» при работе в 1С «Ошибка СУБД: Внутренняя ошибка компоненты dbeng8» при работе в 1С

I. Как выглядит ошибка

Причины возникновения

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

Из-за чего? Наиболее вероятная причина — вследствие нарушений структуры БД, ошибки при записи транзакций, сбой хранилища.
Может быть вызвано некорректным закрытием 1С из-за отключения электроэнергии, отказов сетевого оборудования. Менее точно, но возможно «битый» диск, на котором расположена база.

II. Подготовительный этап

Перед выполнением работ:

  • закройте имеющиеся клиентские подключения к информационной базе (по-простому — «выгнать» пользователей, если таковые подключены);
  • обязательно , это очень важно — сделайте резервную копию базы , а лучше две и сохраните в разных местах, любым доступным способом (например, для файловой 1С — копирование всего каталога, основного файла 1Cv8.1CD или выгрузка в dt-файл через Конфигуратор).

III. Возможные действия по исправлению

  1. Проверка с помощью утилиты chdbfl.
  2. Тестирование и исправление (ТиС) в режиме Конфигуратора.
  3. Копирование ИБ в другое расположение.
  4. Выгрузка базы в dt-файл и загрузка в новую базу.
  5. Обновление платформы 1С.

Почему в такой последовательности? Приложение chdbfl проверяет и исправляет нарушения физической целостности, инструментарий «Тестирование и исправление» — внутренние ошибки (ссылочную и логическую целостность). Поэтому в первую очередь chdbfl, а потом ТиИ.

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

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

Первым делом закрываем открытые подключения и делаем резервную копию базы 1С.

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

Виды ошибок:

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

Способы решения:

1. Очистка кэша

2. Тестирование и исправление 1С (в режиме Конфигуратора)

Если нет возможности войти в Конфигуратор — проверьте файл базы с помощью приложения chdbfl.

3. Выгрузка и загрузка базы в формате *.dt (через Конфигуратор)

  • Администрирование – Выгрузить информационную базу…
  • Создать пустую базу
  • Администрирование – Загрузить информационную базу…

4. Выгрузить и загрузить данные XML

Способ рекомендуется только опытным пользователям. Делается с помощью встроенной обработки «Выгрузка и загрузка данных XML».

5. Обновление 1С

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

6. Другие способы

Почистить временные файлы ПК, проверить жёсткий диск на битые сектора, отключить антивирус или выполнить сканирование.

7. Дополнительные варианты для администраторов

  • загрузить файл dt в клиент-серверную БД и очистить файл от всех записей в таблице configsave через консоль;
  • проверить формат потока с помощью утилиты Tool_1CD.

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

⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также: