Пересоздание автономной конфигурации 1с что это
Перейти к содержимому

Пересоздание автономной конфигурации 1с что это

  • автор:

Записки IT специалиста

Тестирование и исправление информационной базы — что делает и для чего нужно

  • Автор: Уваров А.С.
  • 22.05.2021

testirovanie-i-ispravlenie-000.pngСуществуют вещи настолько привычные, что кажется все про них знают, но это весьма обманчивое впечатление. Да, о них почти все знают, почти все используют, но мало кто представляет происходящие при этом процессы, скрытые за привычной внешней формой инструмента. При этом те, кто знает не спешат делиться, ведь это «общеизвестно», а те, кто не знает стесняются спросить по той же самой причине. Но мы не будем стесняться, а подробно расскажем о том, что делает каждая опция данного инструмента, заглянув каждый раз немного глубже простого описания.

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

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

testirovanie-i-ispravlenie-001.png

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

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

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

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

Реиндексация таблиц информационной базы

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

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

testirovanie-i-ispravlenie-002.png

Но ведь это чудовищно неэффективно, скажет внимательный читатель и будет прав. Что же делать? К счастью, все уже давно придумано. Хранение данных в СУБД можно сравнить с библиотекой, где таблицы — это залы библиотеки, а страницы — стеллажи. И когда вам нужна какая-то книга библиотекарь ведь не обходит физически все стеллажи, а сразу идет куда надо и приносит вам то, что вы просили. Чтобы быстро искать книги в библиотеках существуют каталоги, где книги перечислены в упорядоченном виде, и каждая карточка содержит сведения о том, где именно хранится тот или иной экземпляр.

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

testirovanie-i-ispravlenie-003.png

По мере работы с программой эффективность индексов снижается, особенно если вы активно удаляли или добавляли данные. Также индексы могут подвергаться фрагментации. Если снова сравнить с библиотекой, то за день работы посетители перепутали несколько ящиков, а работники библиотеки карточки новых книг поставили в конец и забыли убрать отсутствующие. Но все равно поиск по такому каталогу окажется быстрее, чем обход всех стеллажей в зале. А что нужно сделать, чтобы вернуть поиску прежнюю эффективность? Правильно, навести порядок в каталоге. Именно этим и занимается реиндексация, которая заново формирует индексы таблиц базы данных и устраняет их фрагментацию, что важно, если вы используете обычные жесткие диски или недорогие SSD.

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

Проверка логической целостности информационной базы

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

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

Давайте рассмотрим следующую схему, отражающую некоторый набор бизнес-логики. У нас есть два документа: Реализация и Оплата, которые делают движения по некоторым регистрам. Так при реализации мы списываем нужное количество товара со склада и вносим в регистр взаиморасчетов задолженность покупателя. В момент оплаты мы вносим полученную сумму в регистр денежных средств и закрываем задолженность покупателя по отгрузке полностью или частично. Но как мы определим, какую именно задолженность погасил клиент? А для этого мы введем в документе оплата обязательное поле Основание, в котором будем указывать нужную реализацию.

testirovanie-i-ispravlenie-004.png

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

testirovanie-i-ispravlenie-005.png

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

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

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

Проверка ссылочной целостности информационной базы

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

testirovanie-i-ispravlenie-007.png

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

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

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

testirovanie-i-ispravlenie-008.png

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

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

testirovanie-i-ispravlenie-006.png

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

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

Теперь о частичной потере данных объектов. К ним могут относиться элемент подчиненного справочника без владельца или движение без регистратора. Мы можем либо удалить такие объекты, либо создать связанные с ними. Чаще всего такие объекты имеет смысл удалять, особенно если это движения, хотя если это элемент справочника, владелец которого потерян, то в ряде случаев имеет смысл создать владельца.

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

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

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

Пересчет итогов

В составе конфигурации 1С имеются специальные объекты — регистры, которые предназначены для хранения записей в разрезе определенных измерений. Например, регистр сведения Цены хранит сведения о ценах в разрезе измерений Номенклатура и Дата, а регистр накопления Товары хранит сведения об остатках товаров в разрезе Номенклатуры, Вида движения (расход или приход), Количества и Даты.

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

testirovanie-i-ispravlenie-009.png

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

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

testirovanie-i-ispravlenie-010.png

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

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

Сжатие таблиц информационной базы

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

testirovanie-i-ispravlenie-011.png

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

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

Реструктуризация таблиц информационной базы

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

testirovanie-i-ispravlenie-012.png

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

И как раз-таки после реструктуризации будет уместно выполнить сжатие. Так как данные перемещать уже не надо, а пустое пространство уже сосредоточено в одном месте.

Как часто следует запускать? По необходимости, в том случае если вы изменили набор метаданных.

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

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

Проверка логической целостности расширений конфигурации

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

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

Заключение

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

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

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

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

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал

Тестирование и исправление базы 1С 8. Ставим флажки осознанно

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

Содержание

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

  • Расходятся цифры в отчетах на границе периодов – например, на конец января остаток по товару 100 штук, а на 1 февраля – 50 штук. При этом документов в последней секунде января нет. Связано это чаще всего с нарушением таблицы итогов по остаткам.
  • При сортировке данные сортируются криво – например, сортируем документы по дате, а даты идут вперемешку, или сортируем номенклатуру по наименованию, а наименования не по алфавиту. Такая ошибка возникает при повреждении таблиц индексов
  • При попытке открытия, редактирования или проведения система выдает ошибки, которые не связаны с некорректным программным кодом – например, платформа типовая на поддержке, все должно работать, но начинают сыпаться ошибки.
  • Появляются данные с названием начинающемся на “Объект не найден…” – это результат некорректно удаленных документов или поврежденной ссылочной логики
  • При входе под определенным пользователем 1С вылетает, а под другими все ОК.

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

Все болит, ничего не помогает!

Если мы словили ошибку времени выполнения – отладчик в руки и вперед! А что делать, если причина ошибки не локализуется и от нас не зависит? Верно! Воспользоваться средствами диагностики! Вообще, средств диагностики и исправления ошибок, связанных именно с платформой и БД, не так много.

  • Собственно, “Тестирование и исправление” – герой нашей статьи.
  • Утилита для файловых баз – chdbfl.exe
  • Средства СУБД для клиент-серверных баз, если тестирование от 1С не помогает.
  • Очистка кэша – тоже следует использовать как средство исправления ошибок.

Тестирование и исправление ИБ средствами встроенной утилиты

Запускается данная утилита из конфигуратора, через меню Администрирование, в котором следует выбрать пункт “Тестирование и исправление“. Откроется окно утилиты:

Тестирование и исправление информационной базы 1С 8

Какие же флажки следует ставить и для чего?

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

Реиндексация таблиц информационной базы

Данная галочка отвечает за перестроение индексов у таблиц базы данных. Вообще, индексы – это предмет отдельного обсуждения, и здесь я упомяну лишь, что часть индексов создается платформой, а другая часть – нашими умелыми ручками разработчиков 1С. Индексы нужны для ускорения поиска данных и повышения производительности 1С при работе с данными. И вот этот флажок “Реиндексация таблиц” отвечает за то, что утилита заново физически пересчитает все индексы, чтобы они не расходились с индексируемыми исходными таблицами. Также, полное перестроение индексов может привести к значительной оптимизации их работы и ускорению всей системы в целом.
Небольшое дополнение – этот флажок больше подходит для файловых баз, так как для клиент-серверных 1С рекомендует реиндексацию делать средствами самой СУБД (MS SQL Server, PostgreSQL и т.д.) Например, можно почитать тут: https://its.1c.ru/db/metod8dev#content:5837:hdoc:p4

Проверка логической целостности информационной базы

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

Проверка ссылочной целостности информационной базы

Это подпункт проверки логической целостности, и отдельно его указать нельзя – если проставить его, то и предыдущий устанавливается автоматически.
Данный флажок отвечает за проверку и исправление т.н. “битых” ссылок на несуществующие объекты. Чаще всего “битые” ссылки появляются из-за некорректных действий разработчика. Неверно настроенные правила обмена или непосредственное удаление объектов могут приводить к появлению “битых” ссылок.

  • При включении этого флажка становятся доступными три варианта обработки ошибочных ссылок – Создавать объекты – будут создаваться пустые объекты-заглушки, которые затем можно заполнить
  • Очищать ссылки – некорректные ссылки будут просто очищены
  • Не изменять – утилита лишь проинформирует о наличии “битых” ссылок, но сама ничего предпринимать не будет.

Пересчет итогов

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

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

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

Сжатие таблиц информационной базы

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

Реструктуризация таблиц информационной базы

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

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

Этот флажок предназначен для создания автономной конфигурации для мобильного клиента с автономным режимом. Эта возможность появилась в платформе начиная с версии 8.3.16. Если вкратце, часть критичного функционала, который должен быть доступен оффлайн, можно вынести в автономную конфигурацию, которая будет использоваться мобильным клиентом, если основной сервер не доступен. Подробнее можно почитать здесь:
https://wonderland.v8.1c.ru/blog/mobilnyy-klient-s-avtonomnym-rezhimom/

Нюансы

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

На этом статья подходит к концу! Спасибо что дочитали, и удачи!

6 комментариев к “Тестирование и исправление базы 1С 8. Ставим флажки осознанно”

Спасибо, единственная статья где всё понятно и полно описано о модуле тестирования и исправления. А как почистить кэш?

Александр, есть несколько вариантов очистки кэша.
Вот в этой статье я привожу три варианта очистки пользовательского кэша, а также там написано как почистить серверный кэш:
https://1c.alexcode.ru/3-sposoba-ochistit-kesh-v-1s-8/

благодарю за статью!

Я заметил неудобные нюансы в работе тестирования/исправления:
1) если Вы собираетесь проверять ссылочную целостность, то не сможете это сделать без проверки логической целостности, т.к. флажок для проверки ссылочной целостности без установки флажка проверки логической целостности не устанавливается (а почему так сделали совсем не понятно)
2) очень неприятный нюанс при установке флажка “Продолжить прерванное ранее тестирование” – пример моя ситуация:
я установил флажок тестирования логической целостности, флажок прервать выполнение через определенное время и флажок “Продолжить прерванное ранее тестирование”. Несколько раз продолжал, но затем подумал, что после тестирования логической целостности неплохо протестировать и ссылочную целостность. После очередной остановки тестирования я установил дополнительно флажок проверки ссылочной целостности и продолжил тестирование, но… тестирование не продолжилось, а началось с начала тестирование логической целостности! Это был удар ниже пояса. Т.к. тестирование делается последовательно по установленным флажкам (по крайней мере для проверки логики и ссылок), то почему бы не проверять, какой флажок установлен дополнительно – ниже или выше логического тестирования – если ниже, то не начинать с начала, а на самом деле продолжить?
3) абсолютно не ясно (и нигде не описано – я не нашел), при каких условиях продолжается тестирование, именно продолжается, а не начинается с начала – например, если после остановки тестирования, кто-то из пользователей поработает в Предприятии, то после этого продолжится тестирование или начнется с начала? Логично начать с начала, но как будет на самом деле неизвестно, т.к. логика и платформа 1С не всегда дружат.

B еще вопрос по Реструктуризации таблиц для понимания, поможет ли реструктуризация и исправит что-то или нет.
Вы написали: “…утилита для каждой таблицы в СУБД создаст копию с такой же структурой, и переместит данные из старой таблицы в новую”.
Вопрос: “переместит данные” – только скопирует данные или всё же произведет какие-то проверочные корректирующие действия над данными таблиц?
Если только скопирует данные, то какой смысл в этой операции? Абсолютно никакого.
А если произведет какие-то проверочные корректирующие действия над данными таблиц, то что именно делается с данными при реструктуризации. Ответ нужен не для “тупой”, а для осмысленной установки флажков.
Спасибо

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

1с тестирование и исправление информационной базы пересоздание автономной конфигурации

Тестирование и исправление информационной базы 1С 8.3 и 8.2

Закажите бесплатный расчет стоимости вашей задачи по 1С!Перезвоним за 10 минут!

В этой статье мы рассмотрим данную системную утилиту «Тестирование и исправление информационной базы» в 1С 8.3 и особенности её использования.

Перед проведением любых операций необходимо сделать резервную копию базы данных!

Тестирование и исправление информационной базы 1С

Режим тестирования и исправления вызывается в конфигураторе системы 1С 8.3 выбором меню Администрирование — Тестирование и исправление.

Проверки и режимы

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

Получите 267 видеоуроков по 1С бесплатно:

  • Реиндексация таблиц информационной базы — если установлен этот флаг, будет произведена реиндексация таблиц. Реиндексация — полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом. Данная процедура никогда не будет лишней и увеличивает производительность системы.
  • Проверка логической целостности информационной базы — система умеет проверять логическую и структурную целостность базы данных, находить ошибки в организации данных (например, страниц в файле).
  • Проверка ссылочной целостности информационной базы — подпункт логической проверки, проверяет информацию в базе данных на наличие «битых» ссылок. «Битые» ссылки появляются в базе из-за некорректной обработки информации разработчиком, чаще всего при непосредственном удалении данных или неправильно настроенном обмене данных. При нахождении ошибок можно выбрать 3 варианта действий: Создавать объекты — система создает элементы-заглушки, которые можно потом заполнить необходимой информацией, Очищать ссылки — «битые» ссылки будут очищены, Не изменять — система только покажет Вам ошибки.
  • Пересчет итогов — в платформе 1С в регистрах накопления и регистрах бухгалтерии есть понятие итогов. Итоги — таблица подсчитанных результатов, данные из которой получить быстрее, чем анализировать весь регистр сведений. Как правило, пересчет итогов увеличивает производительность системы.

Если по каким-то причинам тестирование и исправление не помогает или у вас нет доступа в конфигуратор, воспользуйтесь утилитой chdbfl.exe.

Другие статьи по 1С:

Бонус! Видеоинструкция по проведению тестирования и исправления БД 1С:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

СПРОСИТЕ в комментариях!

Тестирование и исправление базы 1С 8.3 — какие галочки ставить?

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

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

Рассмотрим этот инструмент и как с ним работать. Особенно подробно разберем какие флаги надо ставить в интерфейсе.

Если у вас нет времени читать, можете просто просмотреть наше видео:

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

Запустим программу в режиме конфигуратор:

Выбираем из меню Администрирование пункт “Тестирование и исправление”:

Какие галочки ставить?

Существуют различные варианты настройки тестирования, рассмотрим эти галки:

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

    В нашем примере проставим все галочки как показано на рисунке и нажимаем “Выполнить”:

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

    После окончания тестирования нажимаем “Закрыть”:

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

    Тестирование и исправление закончено.

    Если конфигуратор не открывается: утилита chdbfl.exe

    Если база повреждена настолько, что вы не можете зайти в конфигуратор, можно воспользоваться утилитой от 1С chdbfl.exe. Утилита устанавливается вместе с платформой 1С и найти ее можно в папке Bin каталога установки:

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

    После того как нажали копировать, нажимаем правой кнопкой на пустом месте окна папки и нажимаем “Вставить”. Копия сделана, запускаем утилиту:

    Появляется главное окно утилиты. Нам нужно указать имя файла базы данных. Нажимаем на три точки. Открывается окно выбора файла БД. Ищем каталог вашей базы и в нем указываем на файл 1Cv8.1CD. Нажимаем “Открыть”.

    Ставим галочку “Исправлять обнаруженные ошибки” и нажимаем “Выполнить”.

    Ждем окончания операции. Она может занять продолжительное время, в зависимости от размера базы.

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

    Как выполнить тестирование и исправление базы 1С?

    Как восстановить базу 1С из резервной копии?

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

    1 шаг. Первое и самое важное, что нужно сделать перед исправлением любой конфигурации, – сделать резервную копию базы 1С. Мы не зря привели 2 способа создания резервной копии базы 1С. Даже если конфигурация перестала запускаться в режиме конфигуратора, вы всегда сможете сделать ее копию, воспользовавшись 1 способом — копированием фала конфигурации.

    2 шаг. Запускаем систему 1с в режиме конфигуратора. В главном меню программы выберите «Администрирование – Тестирование и исправление…».

    Если ваша конфигурация повреждена на столько, что не запускается даже в режиме Конфигуратора, то для ее восстановления можно использовать специальную утилиту chdbfl, которая входит в комплект поставки 1С Предприятие 8.

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

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

    Давайте рассмотрим все режимы проверки и исправления по-порядку:

    Реиндексация таблиц информационной базы

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

    Проверка логической целостности информационной базы

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

    Проверка ссылочной целостности информационной базы

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

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

    Сжатие таблиц информационной базы

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

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

    Реструктуризация таблиц информационной базы

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

    4 шаг. С помощью кнопки «Выполнить» запускаем проверку и ожидаем сообщение о её результатах.

    Тестирование и исправление базы 1С

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

    Установки
    • Реиндексация таблиц информационной базы
    • Проверка логической целостности информационной базы
    • Проверка ссылочной целостности информационной базы
    • Пересчет итогов
    • Сжатие таблиц информационной базы
    • Реструктуризация таблиц информационной базы

    Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться

    Тестирование и исправление 1с

    Иногда в базах 1с случаются неприятности — не запускается 1с отчет который раньше работал, не проводится документ из-за непонятной ошибки, невозможно войти в программу… Одним из главных средств исправления ошибок 1с является тестирование и исправление базы 1с 8.3 с помощью встроенной в платформу утилиты.

    Хочу заметить, что при любой некорректной работе 1С Предприятие 8.3 основными методиками восстановления работоспособности программы являются:

    1. Очистка кеша 1С Предприятие;
    2. Тестирование и исправление базы 1с 8.3.

    Методика удаления кеша 1С подробно изложена в статье Как очистить кеш 1С Предприятие 8.3. Рассмотрим второй сервисный инструмент администрирования платформы 1С.

    Тестирование и исправление базы 1с 8.3 с помощью встроенной утилиты

    Для запуска данной операции не нужно обладать какими-либо специальными знаниями, поэтому с этим справится любой пользователь без обращения к 1с специалистам. Для запуска тестирования и исправления необходимо войти в конфигуратор 1с и выбрать пункт «Администрирование» — «Тестирование и исправление…»

    Конфигуратор - тестирование и исправление базы 1с 8.3

    Описание утилиты «Тестирование и исправление информационной базы 1с»

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

    Реиндексация таблиц информационной базы.

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

    Проверка логической целостности информационной базы

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

    Проверка ссылочной целостности информационной базы

    Вероятно, вам приходилось видеть «битые ссылки» в 1с конфигурациях. Если нет, то вы счастливчик!

    Вид битой ссылка

    Для выявления и исправления этих ошибок выбираем данный пункт меню, при этом ниже активируются варианты обработок таких ошибок (см. рис. выше). Мы можем выбрать, каким образом исправлять ошибки при при наличии ссылок на несуществующие объекты : создавать объекты , очищать ссылки , не изменять ; и при частичной потере данных : создавать объекты , удалять объект , не изменять .

    Пересчет итогов

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

    Сжатие таблиц информационной базы

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

    Реструктуризация таблиц информационной базы

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

    Тестирование и исправление базы 1с 8.3 на практике

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

    Тестирование и исправление базы 1с 8.3 может производиться в двух режимах:

    1. Тестирование. В этом режиме база тестируется и производятся технические исправления незначительных ошибок.
    2. Тестирование и исправление. В этом режиме база 1С тестируется и пытается произвести исправления всех замеченных ошибок (см. рис. выше).

    Результат работы утилиты

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

    Рекомендации по работе с утилитой «Тестирование и исправление информационной базы 1с»:

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

    Если у вас остались вопросы — вы можете задать их в комментариях к статье или на форуме сайта.

    Не потеряйте эту статью — поделитесь в социальных сетях через кнопочки ниже:

    В этой статье мы рассмотрим данную системную утилиту «Тестирование и исправление информационной базы» в 1С 8.3 и особенности её использования.

    Интерфейс утилиты

    Перед проведением любых операций необходимо сделать резервную копию базы данных!

    Режим тестирования и исправления вызывается в конфигураторе системы 1С 8.3 выбором меню Администрирование — Тестирование и исправление.

    Проверки и режимы

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

    • Реиндексация таблиц информационной базы — если установлен этот флаг, будет произведена реиндексация таблиц. Реиндексация — полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом. Данная процедура никогда не будет лишней и увеличивает производительность системы.
    • Проверка логической целостности информационной базы — система умеет проверять логическую и структурную целостность базы данных, находить ошибки в организации данных (например, страниц в файле).
    • Проверка ссылочной целостности информационной базы — подпункт логической проверки, проверяет информацию в базе данных на наличие «битых» ссылок. «Битые» ссылки появляются в базе из-за некорректной обработки информации разработчиком, чаще всего при непосредственном удалении данных или неправильно настроенном обмене данных. При нахождении ошибок можно выбрать 3 варианта действий: Создавать объекты — система создает элементы-заглушки, которые можно потом заполнить необходимой информацией, Очищать ссылки — «битые» ссылки будут очищены, Не изменять — система только покажет Вам ошибки.
    • Пересчет итогов — в платформе 1С в регистрах накопления и регистрах бухгалтерии есть понятие итогов. Итоги — таблица подсчитанных результатов, данные из которой получить быстрее, чем анализировать весь регистр сведений. Как правило, пересчет итогов увеличивает производительность системы.
    • Сжатие таблиц информационной базы — если установлен этот флаг, база данных будет сжата и уменьшится в объеме. Связанно это с тем, что при удалении данных из базы данных, 1С не удаляет физически эти объекты, а лишь «помечает» их на удаление. Т.е. пользователь не видит их, а они есть :). Вот именно сжатие базы данных и удаляет такие записи окончательно. Также такого эффекта можно достичь выгрузкой и загрузкой файла базы данных (*.dt).
    • Реструктуризация таблиц информационной базы — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны.

    Если по каким-то причинам тестирование и исправление не помогает или у вас нет доступа в конфигуратор, воспользуйтесь утилитой chdbfl.exe.

    Другие статьи по 1С:

    • Администрирование (обновление 1С, резервные копии и т.д);
    • Программирование 1С
    • Обучение 1С

    Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
    Попробуйте бесплатно по ссылке >>

    Получите понятные самоучители по 1С бесплатно:

    • Самоучитель по 1С Бухгалтерии 8.3;
    • Самоучитель по 1С ЗУП 8.3.

    Бонус! Видеоинструкция по проведению тестирования и исправления БД 1С:

    Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

    К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

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

    Тестируем через конфигуратор

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

    2. Теперь, когда резервная копия сделана, запустите базу в режиме конфигуратора:

    3. Выберите пункт ‘Администрирование’-‘Тестирование и исправление…’ :

    01

    4. Перед нами много вариантов проверок и исправлений, которые нужно выбрать и нажать кнопку ‘Выполнить’. В принципе, можно выбрать их все, но наиболее разумным будет выполнять эти проверки и исправления по-порядку и после каждого исправления проверять — не пропали ли ошибки в базе:

    02

    5. Будем тестировать и исправлять сразу (второй вариант):

    10

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

    11

    7. Реиндексация таблиц информационной базы. Что это такое? Для каждой таблицы (например, справочника) в базе строится индекс для ускорения поиска по определенным полям. Так вот, это исправление заново строит все индексы:

    03

    8. Проверка логической целостности информационной базы проверяет и исправляет логические ошибки в структурах таблиц:

    04

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

    05

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

    06

    10. Пересчет итогов. Итоги — грубо говоря, это индексы для регистров, в которых хранится информация, создаваемая документами. Например, наличие итогов по регистру остатков товара позволяет нам быстро получать значение остатков товара на некоторую дату. Эта проверка заново пересчитывает все итоги за все время. Замечу, что обычно это очень долгая по времени проверка.

    07

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

    08

    12. Реструктуризация таблиц информационной базы. Последнее грозное оружие в борьбе с ошибками. Для каждой таблицы — создается новая таблицы с нужной структурой и все данные из старой таблицы переносятся в новую:

    09

    13. Выбрав нужный пункт, запускайте проверку (кнопка ‘Выполнить’):

    12

    14. После всех проверок откроется окно Служебные сообщения с информацией о результатах тестирования:

    13

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

    Тестируем через обновлятор

    Для пользователей моего Обновлятора всё ещё проще.

    Отметьте нужную базу в списке, а затем из пункта «Ещё» выберите пункт «6.06 Тестирование и исправление баз»:

    1с тестирование и исправление информационной базы пересоздание автономной конфигурации

    Откроется окно с опциями полностью совпадающими с опциями конфигуратора:

    1с тестирование и исправление информационной базы пересоздание автономной конфигурации

    Отметьте нужные и нажмите кнопку «ОК».

    При этом обновлятор:

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

    При этом, если вам потребуется восстановить (откатить) базу на созданную резервную копию перед тестированием — отметьте базу галкой, а затем из пункта «Ещё» выберите вариант «6.01 Восстановить файл данных базы из zip, 7z, rar»:

    1с тестирование и исправление информационной базы пересоздание автономной конфигурации

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

    В этой статье мы рассмотрим данную системную утилиту «Тестирование и исправление информационной базы» в 1С 8.3 и особенности её использования.

    Перед проведением любых операций необходимо !

    Тестирование и исправление информационной базы 1С

    Режим тестирования и исправления вызывается в конфигураторе системы 1С 8.3 выбором меню Администрирование — Тестирование и исправление.

    Проверки и режимы

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

    Получите 267 видеоуроков по 1С бесплатно:

    • Реиндексация таблиц информационной базы
      — если установлен этот флаг, будет произведена реиндексация таблиц. Реиндексация — полное перестроение индексов для заданных таблиц. Реиндексация существенно повышает производительность системы в целом. Данная процедура никогда не будет лишней и увеличивает производительность системы.
    • Проверка логической целостности информационной базы
      — система умеет проверять логическую и структурную целостность базы данных, находить ошибки в организации данных (например, страниц в файле).
    • Проверка ссылочной целостности информационной базы
      — подпункт логической проверки, проверяет информацию в базе данных на наличие «битых» ссылок. «Битые» ссылки появляются в базе из-за некорректной обработки информации разработчиком, чаще всего при непосредственном удалении данных или неправильно настроенном обмене данных. При нахождении ошибок можно выбрать 3 варианта действий: Создавать объекты
      — система создает элементы-заглушки, которые можно потом заполнить необходимой информацией, Очищать ссылки
      — «битые» ссылки будут очищены, Не изменять
      — система только покажет Вам ошибки.
    • Пересчет итогов
      — в платформе 1С в и есть понятие итогов. Итоги — таблица подсчитанных результатов, данные из которой получить быстрее, чем анализировать весь регистр сведений. Как правило, пересчет итогов увеличивает производительность системы.
    • Сжатие таблиц информационной базы
      — если установлен этот флаг, будет сжата и уменьшится в объеме. Связанно это с тем, что при удалении данных из базы данных, 1С не удаляет физически эти объекты, а лишь «помечает» их на удаление. Т.е. пользователь не видит их, а они есть:). Вот именно сжатие базы данных и удаляет такие записи окончательно. Также такого эффекта можно достичь выгрузкой и загрузкой файла базы данных (*.dt).
    • Реструктуризация таблиц информационной базы
      — процесс, с помощью которого система осуществляет пересоздание таблиц баз данных, обычно эта процедура вызывается при внесения изменений в структуру метаданных конфигурации. Реструктуризация всей БД — процесс долгий, будьте внимательны.

    Если по каким-то причинам тестирование и исправление не помогает или у вас нет доступа в конфигуратор, воспользуйтесь утилитой .

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

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

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

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

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

    Внимание!

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

    Использование режима «Управление бухгалтерскими итогами»

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

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

    В разделенном режиме может быть выполнен только просмотр текущей установки границы поддерживаемых итогов.

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

    Пересчет итогов может быть выполнен в режиме конфигуратора (Меню Администрирование — Тестирование и исправление).

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

    1. Определить дату первого проведенного документа в информационной базе. Для этого можно воспользоваться «Журналом операций» (раздел Учет, налоги, отчетность). В списке следует снять все отборы. Например, 31.12.2011.
    2. Откроем форму Управление итогами и агрегатами (Раздел Администрирование — панель действий Сервис).

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

    Понравилось? Поделись с друзьями

    Консультации по работе с программой 1С

    Сервис открыт специально для клиентов, работающих с программой 1С разных конфигураций или находящихся на информационно-техническом сопровождении (ИТС). Задайте свой вопрос, и мы с удовольствием на него ответим! Обязательным условием для получения консультации является наличие действующего договора ИТС Проф. Исключением являются Базовые версии ПП 1С (8 версия). Для них наличие договора не обязательно.

    Пересоздание автономной конфигурации 1С

    Недостатком автомной конфигурации являются следующие ограничения:

    • Не может обслуживать несколько информационных баз одновременно;
    • Не способен изменять параметры во время его работы;
    • Не поддерживает информационную базу при использовании толстого клиента;
    • Не работает с информационной базой в режиме Конфигуратора;
    • Не взаимодействует с информационной базой при использовании внешнего соединения;
    • Не может управлять автономно с помощью сервера ras;
    • Не имеет в наличии графических инструментов управления;
    • Не имеет возможности динамично обновлять конфигурации базы данных;
    • Не использует фоновую реструктуризацию;
    • Не может управлять сервером с помощью COM-объекта V83.ComConnector;
    • Не производит отладку по протоколу TCP/IP;
    • Не использует аутентификации операционной системы.

    Автономная конфигурация устанавливается вместе с кластером серверов 1С и имеет такие же системные требования. После установки в каталоге \bin появятся два файла:

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

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

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

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

    Запуск сервера для работы с файловой базой в самом простом случае выглядит так:

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

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

    Промокоды на Займер на скидки

    • ��Сумма: от 2 000 до 30 000 рублей
    • ��Срок: от 7 до 30 дней
    • ��Первый заём для новых клиентов — 0%, повторный — скидка 500 руб

    В последнее время в 1С (платформа 8.3.16) в разделе Тестирование и исправление можно встретить новую функцию “Пересоздание автономной конфигурации”. Конечно, пользователь сразу же задается вопросом: «Что такое пересоздание автономной конфигурации 1С и каково его значение?».

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

    Заметки сисадмина » Как настроить сервер 1С по умолчанию для ПРОФ лицензии после 2019-09-10

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

    Несколько параметров по умолчанию

    Функция может иметь несколько параметров по умолчанию:

    Values: 3 4 5
    Values: 3 4 12
    Values: 3 11 12
    Values: 10 11 12

    Обратите внимание, предоставить аргумент для параметра c , не предоставляя при этом аргументы для параметров a и b — нельзя (перепрыгивать через параметры не разрешается). Это связано с тем, что язык C++ не поддерживает следующий синтаксис вызова функции: printValues(,,5) . Из этого вытекают следующие два правила:

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

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

    Параметры сеанса в 1С 8.3 и 8.2

    Урок №103. Параметры по умолчанию

    На этом уроке мы рассмотрим, что такое параметры по умолчанию в языке С++ и то, как их использовать.

    «AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.

    Параметр по умолчанию (или «необязательный параметр») — это параметр функции, который имеет определенное (по умолчанию) значение. Если пользователь не передает в функцию значение для параметра, то используется значение по умолчанию. Если же пользователь передает значение, то это значение используется вместо значения по умолчанию. Например:

    printValues ( 6 , 7 ) ; // в качестве b будет использоваться значение, предоставляемое пользователем — 7

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

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

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

    Реализация требования

    Пользователи

    Создадим справочник Пользователи с иерархией групп и элементов, длину наименования установим 100. Справочник включим в состав подсистемы Менеджер задач. В синоним стандартного реквизита Наименование установим значение «Полное имя«, в нем будет храниться представление пользователя.

    Добавим реквизит ИмяВхода, тип Строка(50) для отображения логина пользователя.

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

    Текущий пользователь

    Для хранения текущего пользователя сеанса создадим параметр сеанса ТекущийПользователь, как и положено будем его заполнять в событии модуля сеанса УстановкаПараметровСеанса().

    Как видно из кода, я добавил общий модуль УправлениеПользователями, в котором в функции ПолучитьПользователяСистемы() буду производить определение пользователя системы по переданному пользователю ИБ.

    При определении пользователя возможны следующие варианты:

    1. Нет пользователей ИБ, нет пользователей системы. Считаем, что это первый запуск системы, создаем полноправного пользователя Администратор, назначаем его текущим;
    2. Есть пользователь ИБ и пользователь системы, назначаем его текущим;
    3. Есть пользователь ИБ, нет пользователя системы. Запуск после добавления нового пользователя через конфигуратор. Создаем пользователя системы, назначаем его текущим.

    Из изложенного выше описываем код общего модуля УправлениеПользователями.

    Теперь при запуске в параметрах сеанса будет установлен текущий пользователь.

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

    Параметры по умолчанию в C / Ravesli

    Требование

    Разработать конфигурацию «Менеджер задач»:

    […]

    3. Предусмотреть возможность работы нескольких пользователей;

    […]

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

    . О пользователях ИБ можно почитать Синтаксис-помощник в разделе Работа со списком пользователей информационной базы.

    На текущий момент будем реализовывать необходимый минимум:

    • Хранение пользователей системы и соответствия с пользователями ИБ;
    • При первом запуске создавать пользователя Администратор и назначать ему полные права;
    • Введение новых пользователей и назначать права через Конфигуратор;
    • При входе в систему инициализировать параметр сеанса ТекущийПользователь.

    Создание и изменение пользователей через режим 1С:Предприятие будем разбирать позже.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *