Ошибка при записи конфигурационного файла 1с

вторник, 20 сентября 2016 г.

1С 8.х: Ошибка при записи конфигурационного файла

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

Решение: Здесь и здесь.
«В папке C:\Users\Имя пользователя\AppData\Roaming\1C\1CEStart вместо файла
1CEStart.cfg находилась папка с таким же именем.»
Удаляем эту папку и платформа сможет создать файл конфигурации без проблем.

Ошибка записи конфигурационного файла 1С 8.2-8.3

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

На заметку: если Вас мучают такого рода проблемы и не хотите заморачиваться — искать файлы, что-то модифицировать в операционной системе, смело пишите профессионалам – Smart1C.ru. Мы поможем решить проблемы и настроить учетную систему 1С под класс решаемых задач.

Итак, примеры из жизни:

  1. Запускаю 1С, хочу добавить новую базу, но не прописаны пути к шаблонам баз, в окне выбора конфигурации жму «настройка», прописываю каталоги шаблонов конфигураций и обновлений, жму «ОК», выводится сообщение: «Ошибка при записи конфигурационного файла». Как это исправить?Ошибка записи конфигурационного файла
  2. Захожу в окно изменения настроек 1С, хочу убрать галочку – «Устанавливать автоматически новую версию». Галочку убираю, нажимаю «Ок», выводится сообщение: «Ошибка при записи конфигурационного файла».каталоги шаблонов конфигураций 1С
  3. Хочу прописать списки общих информационных баз, но программа не дает сохранить изменения, на экране появляется сообщение — «Ошибка при записи конфигурационного файла».
  4. Необходимо чтобы программа показывала последние выбранные базы сверху жирным шрифтом. Настройки не сохраняются.

Кстати, если Вы интересуетесь темой выбора виртуального выделенного сервера, то советую обратиться в компанию RackStore. На серверах включена возможность использовать собственное ПО, т.е. 1С: Предприятие 8 можно использовать и на виртуальном сервере.

Решение проблем с сохранением настроек 1С 8.2-8.3

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

  1. Открываем путь в профиле пользователя C:\Users\Администратор\AppData\Roaming\1C\1CEStart и смотрим.папка 1CEStart.cfg
  2. Как правило, там уже есть папка 1CEStart.cfg и она пустая, удаляем эту папкупустая папка 1CEStart.cfg
  3. Далее открываем файл запуска 1С8, заходим во вкладку «Настройка» и пробуем прописать папку каталога шаблоновпапка каталога шаблонов 1c8
  4. Все отлично, задача решена! Наши действия теперь сохраняются.

На этом лайфхак по устранению ошибки записи конфигурационного файла завершен.

Содержание:

1.       Причины ошибки Превышен размер внутреннего файла

2.       Анализ и возможные варианты решения ошибки Превышен размер внутреннего файла

3.       Проверка настроек подсистем

4.       Способы анализа размеров таблиц базы данных

5.       Варианты решения ошибки Превышен размер внутреннего файла

Ошибка СУБД «Превышен максимально допустимый размер внутреннего файла 1Cv8.1CD» характерная для файловых баз данных 1С, имеющих относительно большой объем данных. В этой статье будут рассмотрены возможные причины возникновения ошибки Превышен размер внутреннего файла в 1С,способы и инструменты для ее исправления.  

1.     Причины ошибки Превышен размер внутреннего файла

Появление ошибки Превышен допустимый размер внутреннего файла возможно как в пользовательском режиме работы (рис. 1), в момент записи данных в базу, так и при попытке загрузить архив базы из dt-файла(рис.2). В обоих случаях в тексте ошибки фигурирует файл 1Cv8.1CD, но причина ошибки не в размере самого файла, а в размерах составляющих его структуру внутренних файлов.

Рис.1. Ошибка в пользовательском режиме работы

Рис.2. Ошибка при загрузке базы из dt-файла

Как Вы можете видеть на выше представленных скринах, размеры файла 1Cv8.1CD в момент возникновения ошибки Превышен максимальный размер внутреннего файла существенно разнятся, т.е. определенного лимита на его объем нет. Этим так же можно объяснить возможность работы баз, размер файла которых может значительно превышать 10 Гбайт. Ограничения есть на размер внутренних файлов1Cv8.1CD. Ознакомится с ними можно в приведенной ниже выдержке из приложения «Особенности работы с различными СУБД» к документации1С:Предприятие. Руководство разработчика.

Структура файловой баз данных

Для понимания структуры файловой базы данных важно знать, что файл базы данных 1Cv8.1CD состоит из множества внутренних файлов. Каждой таблице базы данных соответствует максимум четыре внутренних файла.

Размер каждого из внутренних файлов ограничен:

● для формата версии 8.2.14 ‑ 4 Гигабайта.

● для формата версии 8.3.8 с размером страницы 4 096 байт ‑ 4 Гигабайта.

● для формата версии 8.3.8 с размером страницы 8 192, 16 384, 32 768 и 65 536 байт ‑ 6 Гбайт.  

2.     Анализ и возможные варианты решения ошибки Превышен размер внутреннего файла

Утилита CNVDBFL.EXE 

Начиная с версии 8.3.9в новых информационных базах по умолчанию установлен реализованный в версии 8.3.8 оптимизированный формат файловой СУБД. Проверить какая версия формата используется в вашей базе, можно с помощью утилиты командной строки CNVDBFL.EXE, которая включается в комплект поставки технологической платформы «1С:Предприятие» начиная с версии 8.3.8 и расположена в каталоге «bin» установленной версии(например C:ProgramFiles1cv88.3.18.1334bin).

Рис. 3 Получить информацию о файле 1Cv8.1CD

Выполните команду: C:< путь установки 1С:Предприятие>CNVDBFL.EXE-i<путь к 1CV8.1CD>

Утилита выведет информацию о версии формата файла и размере страницы. Если версия формата ниже8.3.8 или размер страницы равен 4096 байта, то самое простое временное решение, позволяющее быстро восстановить работоспособность, увеличив ограничение на размер внутренних файлов с 4 Гбайт до 6Гбайт – выгрузить информационную базу в dt-файлдля последующей его загрузки в созданную в новой папке информационную базу, либо конвертация в формат 8.3.8 со страницей по умолчанию:

cnvdbfl -c -f 8.3.8 <путь к 1CV8.1CD>

ВНИМАНИЕ! Перед выполнением любых операций с информационной базой сделайте резервную копию.  

3.     Проверка настроек подсистем

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

Настройки подсистемы Работа с файлами

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

Рис.4 Настройки работы с файлами

Настройки хранения истории изменений

Проведите аудит настроек подсистемы хранения истории изменений. Особое внимание следует уделить часто изменяемым объектам с бессрочным хранением версии, т.к. каждая версия – это новая отдельная запись, занимающая место в специальной таблице базы дынных. И точно не стоит включать «на всякий случай» бессрочное сохранение версий, создаваемых при записи, для всех объектов.

    


Рис.5 Настройки хранения истории изменений

Удаление помеченных объектов

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

Рис.6 Настройка расписания удаления помеченных объектов  

4.     Способы анализа размеров таблиц базы данных

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

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

Загрузка dt-файла в клиент-серверную базу данных

Разберем на примере файловой СУБДMSSQL.

В SQL ServerManagementStudio выберем в обозревателе объектов исследуемую базу и сформируем стандартный отчет «Использование дисковой памяти таблицами». Включив сортировку по убыванию значения в колонке «Данные», мы увидим самые большие таблицы. В моем случае явный лидер -«dbo._InfoRg10162»

 

Рис. 7 Анализ размера таблиц базы данныхвSQLServerManagementStudio

Далее нам потребуется определить какие данных хранятся в этой таблице. В этом нам поможет метод глобального контекста ПолучитьСтруктуруХраненияБазыДанных(). Вызвать данный метод можно установив точку остановки в любой процедуре, выполняемой в контексте сервера, например в процедуре ПриСозданииНаСервере формы внешней обработки. Указав в табло выражение ПолучитьСтруктуруХраненияБазыДанных(), мы получим таблицу значений с описаниями структуры таблиц, индексов и полей базы данных. Посмотреть ее можно нажав «F2»,либо выполнив команду контекстного меню «Показать значения в отдельном окне». В открывшемся окне выполняем поиск значения «InfoRg10162» в колонке ИмяТаблицыХранения и определяем по колонкам ИмяТаблицы или Метаданные имя, соответствующее объекту метаданных конфигурации — «РегистрСведений.ДвоичныеДанныеФайлов»

Рис. 8 Просмотр структуры хранения базы данных

Стоит отметить, что данный метод требует серверной лицензии 1С.

На момент написания статьи действует акция: антикризисные льготные поставки «1С:Предприятия 8» для разработчиков.

В качестве СУБД для разработки и тестирования удобно использовать следующие версии:

SQL Server 2019 Express является бесплатным выпуском SQL Server, который идеально подходит для разработки приложений для использования на настольных компьютерах, веб-серверах и других небольших серверах.

SQL Server 2019 Developer — это бесплатный выпуск с полным набором функций, лицензируемый для использования в качестве базы данных для разработки и тестирования и не предназначенный для применения в рабочей среде.

Использование сторонних программ для анализа файла базы

Для определения размеров таблиц базы данных, можно воспользоваться программой для просмотра файлов базы 1Сv8.1CD. Tool_1CD позволяет увидеть структуру БД 1С и узнать размер внутренних таблиц. Tool_1CDверсии 0.3.0, поддерживает работу только с базами в формате не выше 8.2.14.

 

Рис. 9 Tool_1CDверсии 0.3.0

Для анализа базы в формате 8.3.8.0 потребуется конвертация копии базы с помощью утилиты cnvdbfl в версию, совместимую с 8.2 (cnvdbfl -c -f -8.2.14 «путь к базе»)

Tool_1CD версии 0.4.0поддерживает работу с базами версии формата 8.3.8.0 и не требует дополнительных операций с базой.

Рис. 10 Tool_1CDверсии 0.4.0

Определив имя «проблемной» таблицы, далее поступаем аналогично первомупримеру(Рис. 8).Выполняем поиск значения «InfoRg10162″в колонке ИмяТаблицыХранениятаблицы, полученной методом ПолучитьСтруктуруХраненияБазыДанных()и определяем по колонкам ИмяТаблицы или Метаданные имя соответствующее объекту метаданных конфигурации.

Подсистема «Инструменты разработчика» 1С 8

На практике меня часто выручает подсистема «Инструменты разработчика» 1С 8

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

В рамках рассматриваемой в статье ошибки, нам будет интересна обработка «Структура хранения БД», в которой есть опция получения размеров таблиц и индексов для файловой СУБД.

Рис. 11 Запуск обработки Структура хранения БД в толстом клиенте

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

Рис. 12 Выбор варианта запуска подсистемы

Рис. 13 Запуск обработки Структура хранения БД в обычном приложении

По умолчанию опция «Показывать размеры» выключена. Включим этот флаг и выполним сортировку по убыванию в колонке «Размер общий»

Рис. 14 Анализ данных в обработке Структура хранения БД

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

Обратите внимание, опция «Показывать размеры» работает только в 32-битныхприложениях

Рис. 15 Настройка разрядности клиента  

5.     Варианты решения ошибки Превышен размер внутреннего файла

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

·         Уменьшение размера базы данных;

·         Переход на клиент-серверный вариант работы;

Если анализ выявил таблицы, занимающие «львиную долю» от общего размера внутреннего файла 1Cv8.1CD, то в первую очередь надо разобраться с ними. Как правило это объекты конфигурации, имеющие реквизиты с типом значения Хранилище Значения, в которых хранятся связанные файлы, версии объектов, вложения писем и т.д.

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

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

Взаимодействие между клиентским приложением и файловой СУБД осуществляет кластер серверов «1С:Предприятия 8».

Так же клиент-серверный вариант работы будет решением проблемы при загрузке архива базы из dt-файла

Рис. 16 Загрузка из dt-файла заведомо большой ИБ

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

Александр Бачурин

Ошибка записи конфигурационного файла 1С 8.2-8.3

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

На заметку: если Вас мучают такого рода проблемы и не хотите заморачиваться — искать файлы, что-то модифицировать в операционной системе, смело пишите профессионалам – Smart1C.ru. Мы поможем решить проблемы и настроить учетную систему 1С под класс решаемых задач.

Итак, примеры из жизни:

  1. Запускаю 1С, хочу добавить новую базу, но не прописаны пути к шаблонам баз, в окне выбора конфигурации жму «настройка», прописываю каталоги шаблонов конфигураций и обновлений, жму «ОК», выводится сообщение: «Ошибка при записи конфигурационного файла». Как это исправить?Ошибка записи конфигурационного файла
  2. Захожу в окно изменения настроек 1С, хочу убрать галочку – «Устанавливать автоматически новую версию». Галочку убираю, нажимаю «Ок», выводится сообщение: «Ошибка при записи конфигурационного файла».каталоги шаблонов конфигураций 1С
  3. Хочу прописать списки общих информационных баз, но программа не дает сохранить изменения, на экране появляется сообщение — «Ошибка при записи конфигурационного файла».
  4. Необходимо чтобы программа показывала последние выбранные базы сверху жирным шрифтом. Настройки не сохраняются.

Кстати, если Вы интересуетесь темой выбора виртуального выделенного сервера, то советую обратиться в компанию RackStore. На серверах включена возможность использовать собственное ПО, т.е. 1С: Предприятие 8 можно использовать и на виртуальном сервере.

Решение проблем с сохранением настроек 1С 8.2-8.3

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

  1. Открываем путь в профиле пользователя C:UsersАдминистраторAppDataRoaming1C1CEStart и смотрим.папка 1CEStart.cfg
  2. Как правило, там уже есть папка 1CEStart.cfg и она пустая, удаляем эту папкупустая папка 1CEStart.cfg
  3. Далее открываем файл запуска 1С8, заходим во вкладку «Настройка» и пробуем прописать папку каталога шаблоновпапка каталога шаблонов 1c8
  4. Все отлично, задача решена! Наши действия теперь сохраняются.

На этом лайфхак по устранению ошибки записи конфигурационного файла завершен.

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

НовоеВремя = Формат(ТекущаяДата(), "ДФ='ЧЧммсс'");
Файл = Новый ЗаписьТекста("D:" + НовоеВремя + ".txt");
Файл.ЗаписатьСтроку(НовоеВремя);
Файл.Закрыть();

Но почему-то при записи вылетает ошибка

Ошибка доступа к файлу 'D:194111.txt'
{Справочник.Пользователи.Форма.ФормаЭлемента.Форма(1889)}:  Записать(ПараметрыЗаписи);
{mngcore/MessageBox.clf(4)}:    Close(-100);

по причине:
Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
Ошибка доступа к файлу 'D:194111.txt'
по причине:
Ошибка доступа к файлу 'D:194111.txt'

С чем это может быть связано и как ее можно исправить?

задан 23 ноя 2022 в 16:53

shitslark's user avatar

2

Вероятно проблема связана с правами пользователя; Запустите 1С от имени администратора и попробуйте Запись в файл.

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

ответ дан 23 ноя 2022 в 23:07

santavital's user avatar

santavitalsantavital

1,6337 серебряных знаков14 бронзовых знаков

А если так:

НовоеВремя = Формат(ТекущаяДата(), "ДФ='ЧЧммсс'");

Текст = Новый ТекстовыйДокумент;
Текст.ДобавитьСтроку(НовоеВремя);

ИмяФайла = СтрШаблон("D:%1.txt", НовоеВремя);

Текст.Записать(ИмяФайла);

ответ дан 24 ноя 2022 в 5:57

Sagittarius's user avatar

SagittariusSagittarius

5633 серебряных знака8 бронзовых знаков

Ошибка при записи конфигурационного файла

Ответить

1 сообщение
• Страница 1 из 1

admin

Аватар пользователя
Администратор

Сообщений: 166
Зарегистрирован: 27 фев 2011, 17:40
Откуда: откуда и все :)

СообщениеДобавлено: 02 май 2012, 17:25

Проблема, это задача в решении которой никто не заинтересован.
СВС

Вернуться наверх

Цитата

1 сообщение
• Страница 1 из 1

Вернуться в Для администратора

Перейти:

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Яндекс.Метрика

Список форумов

© Создатель темы Christian Bullock

Наша команда Удалить cookies форума• Часовой пояс: UTC + 3 часа [ Летнее время ]

Powered by phpBB© 2000, 2002, 2005, 2007 phpBB Group

Сборка создана CMSart Studio
Русская поддержка phpBB

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

Типовая конфигурация

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

Ошибка при записи профиля. Такой профиль уже существует

Сообщение об ошибке говорит само за себя – и подсказывает решение проблемы. Зайдите в справочник пользователей программы и проанализируйте его – вероятно, в там уже зарегистрировано несколько одинаковых администраторов или бухгалтеров. Удалите дубли учетных записей, и ошибка 1С базы исчезнет.

Имя предопределенного элемента не уникально

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

Если у вас есть резервная копия БД, вам потребуется:

  • Зайти в режим конфигуратора;
  • Перейти в меню «Администрирование – Загрузить информационную базу»;
  • Далее найдите файл, в котором ранее была сохранена резервная копия в формате .dt;
  • Система предупредит вас о том, что несохраненная ранее информация будет потеряна – согласитесь с этим и дождитесь загрузки ИД;
  • После успешной выгрузки перезапустите конфигуратор.

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

  • Перейти в режим конфигуратора;
  • Включить режим администрирования БД и выбрать пункты «Администрирование – Выгрузить информационную базу»;
  • Выберите путь, в который программа сохранит БД, и ее название.

Лучше всего сохранять БД на внешний носитель – например, на жесткий диск или флэш-карту.

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

Файл не содержит доступных обновлений

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

Можно ли ускорить обновление? Для этого потребуется актуальный релиз файла конфигурации 1Cv8.cf. Последовательность действий следующая:

  • Активируйте режим «Конфигуратор»;
  • Далее перейдите в меню «Конфигурация – Поддержка – Настройка поддержки – Включить возможность изменения конфигурации»;
  • Появится предупреждение о невозможности выполнять обновление автоматически полностью – нажмите кнопку «Да»;
  • В окне настройки правил поддержки включите дважды выберите «Объект поставщика редактируется с сохранением поддержки». На изменение режима уйдет несколько минут;
  • Закрыв последнее окно, перейдите в меню «Конфигурация – Загрузить конфигурацию из файла»;
  • Найдите на компьютере файл 1Cv8.cf с актуальным релизом и откройте его;
  • Появится предупреждение о замене текущей версии на загружаемую, нажмите «Да». Загрузка может занять несколько минут, после чего вам потребуется обновить конфигурацию БД;
  • В зависимости от объема вашей базы данных обновление может занять до нескольких часов. В процессе загрузки вы увидите окно «Реорганизация информации», в котором нужно нажать кнопку «Принять»;
  • Далее нажмите кнопку F5 на клавиатуре или же найдите опцию «Начать отладку» и подтвердите легальность обновления.

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

Ошибка формата потока

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

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

  • Завершите все процессы в программе и закройте ее;
  • Вручную найдите папки с кэшем – как правило, они располагаются в директориях C:/Users/Username/AppData/Roaming/1C в папках, название которых начинается с 1Cv8. Если найти эти папки не получается, настройте видимость скрытых файлов и папок в настройках компьютера;
  • В этой директории могут находиться другие папки с очень длинными именами из букв и цифр – их и нужно удалить.

Также очистить кэш можно автоматически: перейдя в режим конфигуратора и в меню «Администрирование – Тестирование и обновление» отметьте пункты «Реиндексация таблиц информационной базы» и «Проверка логистической целостности ИБ». Нажмите «Выполнить», и программа сама проверит базу, найдет ошибки, исправит их – и предоставит вам отчет.

Если эти способы не помогли, обратитесь к своему программисту или специалистам компании «Авиант».

Предопределенный элемент отсутствует в данных

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

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

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

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

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

Нужна консультация по возможностям и функционалу программы
«1C Розница 8»?

Специалисты 1С ответят на любые вопросы
и помогут выбрать программу абсолютно бесплатно!

Заказать бесплатную консультацию

Ошибки при обновлении нетиповой конфигурации

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

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

Как в 1С изменить ставку НДС

Обновлено: 21.09.2023

Перехват исключений в коде

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

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

3. Частные случаи некорректного использования и перехвата исключений.

Область применения (уточнение): управляемое приложение, обычное приложение.

3.1. Если имеется некоторая серверная бизнес-логика, которая вызывается с клиента при интерактивной работе пользователя:

&НаСервере
Процедура ВыполнитьОперацию()
// код, приводящий к вызову исключения
.
КонецПроцедуры

то неправильно маскировать от пользователя и администратора исходную проблему:

// на клиенте
Попытка
ВыполнитьОперацию();
Исключение
ПоказатьПредупреждение(,НСтр(«ru = ‘Операция не может быть выполнена.'»));
КонецПопытки;

&НаСервере
Процедура ВыполнитьОперацию()
Попытка
// код, приводящий к вызову исключения
.
Исключение
// Запись события в журнал регистрации для системного администратора.
ЗаписьЖурналаРегистрации(НСтр(«ru = ‘Выполнение операции'»),
УровеньЖурналаРегистрации.Ошибка.
ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры

и тогда на клиенте:

Не следует использовать функцию ОписаниеОшибки , т.к. она неинформативна для разработчика, потому что не возвращает стек в тексте ошибки.

3.2. Не следует анализировать текст исключений с целью интерпретации причины ошибки. Текст исключения может меняться в зависимости от локализации. В условиях отсутствия штатных средств (например, типизированных исключений), следует выдавать пользователю тексты исключений «как есть». Для понятности, его можно дополнить пояснением возможных причин.
Например:

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

КодОшибки = ЗагрузитьФайлИзИнтернета(. );
Если КодОшибки = 12345 Тогда
.
ИначеЕсли .

правильно применять строковые литералы (например, «Успешно», «НетМестаНаДиске», «Отменено» и т.п.):

РезультатЗагрузки = ЗагрузитьФайлИзИнтернета(. );
Если РезультатЗагрузки = «Успешно» Тогда
.
ИначеЕсли .

Строковые литералы кодов ошибок не локализуются.

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

3.3. Если имеется некоторая клиентская бизнес-логика (код выполняется полностью на клиенте):

&НаКлиенте
Процедура СоздатьФайлНаДиске()
// код, приводящий к вызову исключения
.
КонецПроцедуры

то рекомендуется делать дополнительный серверный вызов для протоколирования неудачного результата операции в журнал регистрации:

&НаСервереБезКонтекста
Процедура ЗаписатьОшибкуРаботыСФайлами(. )
ЗаписьЖурналаРегистрации(НСтр(«ru = ‘Выполнение операции'»),
УровеньЖурналаРегистрации.Ошибка.
ПодробноеПредставлениеОшибки);
КонецПроцедуры

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

Попытка
// код, приводящий к вызову исключения
.
Исключение // перехват любых исключений
КонецПопытки;

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

Попытка
// код, приводящий к вызову исключения
.
Исключение
// Пояснение причин перехвата всех исключений «незаметно» от пользователя.
// .
// И запись события в журнал регистрации для системного администратора.
ЗаписьЖурналаРегистрации(НСтр(«ru = ‘Выполнение операции'»),
УровеньЖурналаРегистрации.Ошибка.
ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецПопытки;

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

Процедура ПередЗаписью(Отказ)
Если Не ЗарегистрироватьИзмененияНаУзлахПлановОбмена() Тогда
ВызватьИсключение НСтр(«ru = ‘Не удалось зарегистрировать изменения на узлах планов обмена. Обратитесь к администратору.'»);
КонецЕсли;
.
КонецПроцедуры

Подробнее см. пп. 1.1 и 1.3 стандарта Информирование пользователя.

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

  • использовать механизмы работы с метаданными, чтобы явным образом проверять наличие или отсутствие реквизита (макета и т.п.);
  • если различия связаны с особенностями встраивания библиотек – описывать особенности явным образом в переопределяемых модулях (см. Переопределяемые и поставляемые объекты);
  • пересмотреть логику работы методов, использующих перехват исключений. Например, можно предусмотреть параметры, которые определяются в вызывающем коде и указывают нужно или нет обращаться к какому-либо методу или свойству объекта.

Попытка
КонтекстЭДОСервер.ПолучитьМакет(«КомпонентаОбмена»);
ПутьВК = КонтекстЭДОСервер.ПутьКОбъекту + «.Макет.КомпонентаОбмена»;
Исключение
КонецПопытки;

МакетКомпонентыОбмена = КонтекстЭДОСервер.Метаданные().Макеты.Найти(«КомпонентаОбмена»);
Если МакетКомпонентыОбмена <> Неопределено Тогда
ПутьКМакету = КомпонентаОбмена.ПолноеИмя()
КонецЕсли;

3.7. Порядок обработки исключений при использовании транзакций описан в стандарте Транзакции: правила использования.

3.8. Неправильно использовать исключения для приведения значения к типу. Для таких операций необходимо использовать возможности объекта ОписаниеТипов .

Попытка
КоличествоДнейРазрешения = Число(Значение);
Исключение
КоличествоДнейРазрешения = 0; // значение по умолчанию
КонецПопытки;

ОписаниеТипа = Новый ОписаниеТипов(«Число»);
КоличествоДнейРазрешения = ОписаниеТипа.ПривестиЗначение(Значение);

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

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

Чтобы научиться быстро исправлять ошибки в 1С необходимо изначально их проанализировать. Часто во всплывающем окне написана суть некорректного поведения, что помогает решить проблему.

Причины появления ошибки в 1С

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

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

Часто возникающие ошибки 1С

Все имеющиеся сбои выводят на экран разные уведомления. Одинакового текста не бывает. Чтобы проще ориентироваться, разделим существующие ошибки 1С на следующие пункты:

  1. Недостаточно памяти.
  2. Ошибка доступа.
  3. Ошибка формата потока.
  4. Ошибка СУБД: Файл базы данных поврежден.
  5. Неправильное отображение блоков формы.
  6. Внутренняя ошибка компоненты dbeng.
  7. Dump при запуске.
  8. Неверный формат хранилища.
  9. Ничего не работает.

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

Недостаточно памяти

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

Пользователь может самостоятельно решить проблему с памятью. По умолчанию операционная система выделят фиксированное значение гигабайт на обслуживание приложения: 32 bit ОС – 2 Гб, 64 bit – 4 Гб.

Увеличить размер выделенной памяти можно вручную. Для этого запускается адресная строка (Пуск – Выполнить, вводиться фраза cmd). После нажатия «Ентер» достаточно ввести фразу bcdedit /set increaseuserva 4096 и подтвердить действие (клавиша «Enter»). Цифра 4096 – новый выделяемый объем «оперативки». Выполняется перезагрузка системы. Проблема должна быть устранена.

Ошибка доступа

Она возникает, если учетная запись не имеет достаточно прав. Проявляется при выполнении определенного действия, которое доступно только ограниченному кругу пользователей. Для исправления ситуации достаточно изменить роль выбранного профиля в конфигураторе (вкладка «Администрирование – Пользователи»). В некоторых случаях это увеличивает безопасность базы данных, если необходимо защитить файлы от изменения сторонними людьми.

Ошибка формата потока

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

Устранение подобной ошибки 1С выполняется простой чисткой кэша. Для этого необходимо перейти в папку, где хранятся временные файлы. В Windows 7 и выше она находится по адресу C:\Users\Username\AppData\Local\1C или C:\Users\Username\AppData\Roaming\1C. Для Windows ХР другой путь – Local Settings\Application Data\1C\. Все файлы, начинающиеся на 1cv8, кроме «1Cv8.1CD» полностью удаляются.

Если «Ошибка формата потока» возникает в процессе работы, то нужно провести тестирование (Администрирование – Тестирование и исправление), выбрать первые 2 галочки и запустить процесс.

Ошибка СУБД: Файл базы данных поврежден

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

  • Запуск утилиты chdbfl.exe. Эта программа предназначена для того, чтобы проверять целостность базы данных при совместном ее использовании с информационной базой. Данный метод хорош тем, что дает возможность решать сбои даже в тех ситуациях, когда конфигуратор запустить невозможно. Сначала выполняется резервное копирование информации. В папке, где установлен 1С (директория bin) находится файл chdbfl.exe. Он запускается, в окне прописывает путь к файлу базы данных и ставится галочка, чтобы провести исправление ошибок. Нажимается кнопка «Выполнить». После завершения процесса все должно заработать. Если нет – используется конфигуратор.
  • Через конфигуратор. Нужное окно вызывается после нажатия «Администрирование – Тестирование и исправление». На экране появляется форма, где выставляются галочки на следующе строчки: «Реиндексация таблиц…», «Проверка логической целостности…», «Проверка ссылочной…», «Реструктуризация таблиц…», «Тестирование и исправление» и 2 раза «Создать объекты». Нажимается кнопка «Выполнить». После завершения процедуры сбой устраняется.

Неправильное отображение блоков формы

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

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

Внутренняя ошибка компоненты dbeng

Dump при запуске

Возвращение 1С в рабочее состояние проводится простым обновлением MS Visual Studio (Visual C++) и дополнительными манипуляциями. Чтобы отследить конкретный файл, в котором возникает ошибка, открывается «Просмотр событий». Для этого пользователь переходит в «Панель управления – Система и безопасность – Администрирование». С левой стороны раскрывается «Журнал Windows – Приложение».

На экране появляется список ошибок и точное расположение поврежденного файла. После установки новой версии MS Visual Studio (Visual C++) с папки System32 копируется одноименный файл dll и вставляется в папку платформы 1С. Проблема решилась.

Неверный формат хранилища

Ничего не работает

Если программа перестала нормально работать без видимых причин, значит пользователю придется самостоятельно искать неисправность. Для восстановления работоспособности базы данных проводятся следующие мероприятия:

  • чистится кэш;
  • открывается файл chdbfl.exe из папки установки приложения и выполняется исправление;
  • выполняется запуск «Конфигуратора» для тестирования и исправления сбоев;
  • обновление «1С».

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

В статье описаны возможные ошибки, возникающие при обмене данными между программами 1С, а также варианты решения этих ошибок.

Общие ошибки, возникающие в 1С при работе с XML

Не установлен MS XML Core Services 4.0

На компьютере не установлен Microsoft XML Core Services 4.0, используемый «1С:Предприятием 8» для работы с XML.

Попробуйте установить Microsoft XML Core Services 4.0. При установке «1С:Предприятия 8» Microsoft XML Core Services 4.0 устанавливается автоматически.

Ошибка разбора XML

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

Проверьте правильность оформления и синтаксис данных XML.

Ошибочный порядок записи XML

Методы записи содержимого документа XML вызываются в неправильном порядке. Например, запись атрибута вызывается после записи текста элемента.

Текст XML содержит недопустимые символы

Записываемый текст XML содержит недопустимые символы.

Текст XML должен соответствовать требованиям к XML.

Недопустимое имя XML

Записываемое имя XML содержит недопустимые символы.

Имя XML должно соответствовать требованиям к XML.

Пустое значение URI допустимо только для пространства имен по умолчанию

Производится попытка записать соответствие пространства имен, в котором URI пространства имен, представленному пустой строкой, соответствует непустой префикс.

Значение URI пространства имен должно соответствовать рекомендации Namespaces in XML.

Переопределение пространства имен по умолчанию для текущего элемента XML недопустимо

Текущий записываемый элемент не относится ни к какому пространству имен. Поэтому для него недопустимо определение непустого пространства имен по умолчанию.

Переопределение пространства имен по умолчанию для элемента, не относящегося ни к какому пространству имен – запрещено.

Ошибка преобразования данных XML

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

Значения данного типа не могут быть представлены в XML

Производится попытка записи в XML значения, для типа которого не определена процедура записи в XML. Или производится попытка чтения из XML значения неизвестного типа или типа, для которого не определена процедура чтения из XML.

Ошибка данных XML

Ошибка возникает при получении некорректных данных из источника XML или же в случаях неудачного считывания из базы данных содержимого объекта, данные которого должны быть прочитаны из источника XML: блокировка объекта или же отсутствие прав на чтение данного объекта.

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

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

Ситуации, возникающие при обмене данными в рамках распределенной информационной базы в 1С

Узел не является узлом распределенной ИБ

При вызове одного из методов встроенного языка, относящегося к распределенной ИБ, значение переданного параметра — узла плана обмена — не принадлежит плану обмена с установленным признаком «Распределенная информационная база».

Необходимо убедиться в правильности передаваемого в метод параметра.

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

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

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

Ошибка формата представления изменений

Попытка приема изменений от неизвестной конфигурации

Искажены изменения конфигурации!

Конфигурация узла распределенной ИБ не соответствует ожидаемой!

Изменения конфигурации не могут быть получены из подчиненного узла распределенной ИБ

Из главного узла распределенной ИБ получены изменения конфигурации

Из главного узла получены изменения конфигурации.

Данные не входят в состав плана обмена

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

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

      

  • Как найти сумму первых n чисел арифметической прогрессии в excel
  •   

  • Программа осциллограф для андроид
  •   

  • Ворд не видно разметки страницы
  •   

  • Digicap dav как прошить с компьютера
  •   

  • Как нарисовать горы в фотошопе

Понравилась статья? Поделить с друзьями:
  • Ошибка при загрузке форм соно
  • Ошибка при загрузке лаунчера код 37 вайм ворлд
  • Ошибка при записи загрузчика arduino pro mini
  • Ошибка при записи файла coreldraw cdt
  • Ошибка при загрузке форза хорайзен 4