Inforg 1c что за таблица
Перейти к содержимому

Inforg 1c что за таблица

  • автор:

Inforg 1c что за таблица

Всем привет.
Имеем в наличии УТ11 (8.3.5.1119 / 11.1.7.60).
Проблема: при перепроведении по партиям товаров ругалась на отсутствие ДокументВозвратСырьяизПереработки . Запустила тестирование chdbfl. Получила сообщение: Повреждены данные таблицы ‘_INFORG6383’. Восстановлено 18860 из 151845 записей.
Хочется просто узнать что это за таблица и как узнать кто и где мог полазить руками, что эта таблица «крякнулась». И как этого избежать потом.
Спасибо

Спасибо, конечно. Но мне, наверное, это все равно ничего не скажет. Лучше обратиться к обслуживающей компании?

(2) Скорей всего сеть полетела или жесткий диск, или электрическтво скакнуло. Бывает.

Структура и название таблиц использыемых для хранения данных в БД 1С 8.х

Распечатать

Данные, которые определяют логику функционирования системы на базе 1С:Предприятия, относятся к информационной базе. Хранение информационной базы осуществляется в базе данных с виде набора таблиц, для чего 1С:Предприятие 8.1 может использовать одну из четырех систем управления базами данных (СУБД):
* Встроенную в 1С:Предприятие 8.1 (файловый вариант информационной базы). В этом случае все данные информационной базы хранятся в файле с именем 1Cv8.1CD. Этот файл имеет двоичный формат и по сути является базой данных для встроенной в 1С:Предприятие 8.1 СУБД.
* Microsoft SQL Server (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных Microsoft SQL Server.
* PostgreSQL (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных PostgreSQL.
* IBM DB2 (клиент-серверный вариант информационной базы). Все данные информационной базы хранятся в базе данных IBM DB2.

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

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

* Config — основная конфигурация информационной базы. Эта конфигурация соответствует реальной структуре данных и используется 1С:Предприятием 8.0 в режиме Предприятия.
* ConfigSave — конфигурация, редактируемая Конфигуратором. Конфигурация из ConfigSave переписывается в Config при выполнении «Обновления конфигурации базы данных» в Конфигураторе, а наоборот — при выполнении в Конфигураторе операции «Конфигурация — Конфигурация базы данных — Вернуться к конфигурации БД».
* Files содержит служебную информацию, например, о работе с хранилищем конфигурации.
* Params содержит параметры информационной базы. Среди них:
=> Список пользователей информационной базы.
=> Национальные настройки информационной базы.
=> Таблица соответствия объектов метаданных и объектов базы данных (таблиц, полей, индексов).
=> Некоторая другая информация.
* _YearOffset — смещение дат в базе данных. Эта таблица создается только при использовании Microsoft SQL Server.
* DBSchema содержит информацию о структуре базы данных 1С:Предприятия и определяет другие объекты базы данных, используемые данной информационной базой.

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

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

Если в конфигурации определен хотя бы один план обмена с установленным флагом «Распределенная информационная база», то будут созданы следующие таблицы:

* _ConfigChangeRec — таблица регистрации изменений объектов конфигурации.
* _ConfigChangeRec_ExtProps — таблица имен файлов измененных внешних свойств объектов конфигурации.

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

* Константы
=> _Consts содержит текущие значения всех констант, определенных в конфигурации.
=> _ConstsChangeRec — таблица регистрации изменений констант. Создается, если хотя бы одна константа участвует хотя бы в одном плане обмена.
* Планы обмена
=> _Node — таблица плана обмена.
=> _Node_VT — табличная часть плана обмена, создается для каждой табличной части.
* Справочники
=> _Reference — таблица справочника.
=> _Reference_VT — табличная часть справочника — для каждой табличной части.
=> _ReferenceChangeRec — таблица регистрации изменений справочника. Создается, если справочник участвует хотя бы в одном плане обмена.
* Документы
=> _Document — таблица документов для каждого объекта метаданных «документ».
=> _Document_VT — табличная часть документа — для каждой табличной части каждого документа.
=> _DocumentChangeRec — таблица регистрации изменений объекта метаданных типа «документ». Создается для каждого объекта метаданных типа «документ», если он участвует хотя бы в одном плане обмена.
* Последовательности документов
=> _Sequence — таблица регистрации документов — для каждой последовательности.
=> _SequenceBoundary — таблица границ последовательности — для каждой последовательности.
=> _SequenceChangeRec — таблица регистрации изменений последовательности. Создается для каждой последовательности, которая участвует хотя бы в одном плане обмена.
* Журналы документов.
=> _DocumentJournal — таблица журнала документов, создается для каждого журнала документов.
* Перечисления
=> _Enum — таблица перечисления — по одной для каждого перечисления.
* Планы видов характеристик
=> _Chrc — основная таблица плана видов характеристик.
=> _Chrc_VT — табличная часть плана видов характеристик — для каждой табличной части.
=> _ChrcChangeRec — таблица регистрации изменений плана видов характеристик. Создается, если план видов характеристик участвует хотя бы в одном плане обмена.
* Планы счетов
=> _Acc — основная таблица плана счетов.
=> _Acc_ExtDim — таблица видов субконто плана счетов, создается для плана счетов в том случае, если максимальное количество субконто больше нуля.
=> _Acc_VT — табличная часть плана счетов, создается для каждой табличной части плана счетов.
=> _AccChangeRec — таблица регистрации изменений плана счетов. Создается, если план счетов участвует хотя бы в одном плане обмена.
* Планы видов расчета
=> _CalcKind — основная таблица плана видов расчета.
=> _CalcKind_BaseCK — таблица базовых видов расчета, создается для плана видов расчета в случае, если его свойство «Зависимость от базы» имеет значение, отличное от «Не зависит».
=> _CalcKind_DisplacedCK — таблица вытесняемых видов расчета, создается для плана видов расчета в случае, если у него установлен флаг «Использует период действия».
=> _CalcKind_LeadingCK — таблица ведущих видов расчета — для каждого плана видов расчета.
=> _CalcKindDN — вспомогательная таблица для порядка вытеснения, создается, если у плана видов расчета установлен флаг «Использует период действия».
=> _CalcKind_VT — табличная часть плана видов расчета, создается для каждой табличной части.
=> _CalcKindChangeRec — таблица регистрации изменений плана видов расчета. Создается, если план видов расчета участвует хотя бы в одном плане обмена.
* Регистры сведений
=> _InfoReg — таблица движений регистра сведений.
=> _InfoRegChangeRec — таблица регистрации изменений регистра сведений. Создается, если регистр сведений участвует хотя бы в одном плане обмена.
* Регистры накопления
=> _AccumReg — таблица движений регистра накопления.
=> _AccumRegTotals — таблица итогов регистра накопления, если регистр поддерживает остатки.
=> _AccumRegTurnovers — таблица оборотов регистра накопления, если регистр поддерживает обороты.
=> _AccumRegChangeRec — таблица регистрации изменений регистра накопления. Создается, если регистр накопления участвует хотя бы в одном плане обмена.
=> _AccumRegOptions — таблица настроек хранения итогов регистров накопления одна на все регистры накопления.
* Регистры бухгалтерии
=> _AccntReg — таблица движений регистра бухгалтерии.
=> _AccntRegED — таблица значений субконто регистра бухгалтерии, создается в том случае, если он ссылается на план счетов, у которого максимальное количество субконто больше нуля.
=> _AccTtl0 — таблица итогов по счету.
=> _AccTtl — где i от 1 до максимального количества субконто. Таблица итогов по счету с количеством видов субконто равным i.
=> _AccTtlC — таблица итогов оборотов между счетами, только для регистра бухгалтерии поддерживающего корреспонденцию.
=> _AccntRegChangeRec — таблица регистрации изменений регистра бухгалтерии. Создается, если регистр бухгалтерии участвует хотя бы в одном плане обмена.
=> _AccntRegOptions — таблица настроек хранения итогов одна на все регистры бухгалтерии.
* Регистры расчета
=> _CalcReg — таблица движений регистра расчета.
=> _CalcRegActPer — таблица фактических периодов действия для регистра расчета, создается, если у регистра расчета установлен флаг «Период действия».
=> _CalcRegChangeRec — таблица регистрации изменений регистра расчета. Создается для каждого регистра расчета, участвующего хотя бы в одном плане обмена.
=> _CalcRegRecalc — таблица перерасчета регистра расчета, создается для каждого перерасчета.
=> _CalcRegRecalcChangeRec — таблица регистрации изменений перерасчета. Создается, если перерасчет участвует хотя бы в одном плане обмена.
* Бизнес-процессы
=> _BPRoutePoint — таблица точек маршрута бизнес-процесса для каждого бизнес-процесса.
=> _BusinessProcess — основная таблица бизнес-процесса.
=> _BusinessProcess_VT — табличная часть бизнес-процесса для каждой табличной части.
=> _BusinessProcessChangeRec — таблица регистрации изменений бизнес-процесса. Создается для каждого бизнес-процесса, участвующего хотя бы в одном плане обмена.
* Задачи
=> _Task — основная таблица задачи.
=> _Task_VT — табличная часть задачи для каждой табличной части.
=> _TaskChangeRec — таблица регистрации изменений в задачах. Создается для каждого объекта метаданных типа «задача», который участвует хотя бы в одном плане обмена.

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

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

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

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

Как просмотреть структуру таблиц информационной базы?

Ошибка SDBL 1С: как исправить некорректное использование local global в set generation

Почепский Олег

многоуровневый код сайта

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

Общее представление

структура базы данных

Взаимодействуя с учетной программой, пользователи выполняют различные операции, каждая из которых, так или иначе, формирует запрос к базе данных. Создание нового документа, интеграция библиотеки, плановое обновление — во время любого из процессов есть вероятность получить в ответ уведомление от системы, свидетельствующее о том, что одна из логических цепочек была нарушена. Распространенный вариант — когда на экране появляется сообщение об ошибке SDBL 1С ожидается выражение (pos = 6) (а также 15, 57, 198, 250, 469, или любой другой номерной идентификатор). Фактически это говорит о наличии технического сбоя, с которым чаще всего сталкиваются пользователи, самостоятельно обновляющие конфигурацию автоматическими средствами. Важно понимать, что при работе с программой (и в том числе при установке новых релизов) необходимо иметь определенный уровень навыков и знаний, достаточный для внесения изменений и управления функциональными возможностями платформы.
Впрочем, сильно переживать не стоит. Появление ошибки SDBL 1С еще не значит, что структура базы данных предприятия разрушена полностью — в большинстве случаев исправить проблему можно при помощи стандартного набора способов, реализовать которые под силу даже начинающим пользователям.

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

ошибка sdbl pos 6

Один из главных факторов, о котором многие забывают в процессе работы с учетной системой — необходимость соответствия платформы и конфигурации обновления. То есть перед тем как начать использовать новый релиз, нужно создать условия, в которых он сможет нормально функционировать. Простейший вариант — доверить контроль за установкой профильному специалисту, который поможет избежать технических сбоев в программе. Если говорить об уже упомянутой ранее ошибке SDBL 1С «ожидается выражение (pos = 144)» (или 48, 153, 13 — не столь принципиально), то в этом случае ключевым обстоятельством становится повреждение базы данных, обусловленное нарушением системных логических циклов. К числу распространенных причин возникновения, отмечаемых специалистами, относят не только применение устаревшей конфигурации или платформы, но также и проблемы, связанные с серверным кешем. Кроме того, всегда существует вероятность случайного запуска с некорректной учетной записи, не обладающей достаточным набором прав.
Чаще всего системные ошибки происходят в процессе очередного обновления БД, а также при обращении к ней — через запрос на добавление документов, во время тестовой проверки логической целостности, или же в иных ситуациях. Критической проблемой при установке расширений может стать и «некорректное использование LOCAL/GLOBAL в SET GENERATION», не позволяющее полноценно сохранить базу даже после выборочного удаления. Стоит отметить, что стандартное решение в виде перезагрузки программы обычно не помогает, поэтому для восстановления работоспособности придется воспользоваться альтернативными методиками.

Какие сообщения возникают

архивация бд

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

  • предпринята попытка ввести неприемлемый тип значения «NULL»;
  • пропущена точка с запятой;
  • нарушение индексирования с полным текстом;
  • неоднозначное определение некоторого поля;
  • отсутствует выражение (pos =) — с различными числовыми идентификаторами в скобках.

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

Inforg 1c что за таблица

В процессе обновления базы 1С 8 произошла критическая ошибка. Не удалось вставить значение NULL в столбец таблицы

Описание ошибки:
В процессе обновления информационной базы произошла критическая ошибка
по причине:
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Не удалось вставить значение NULL в столбец «_Fld518», таблицы «Бухгалтерия.dbo._Reference18NG»; в столбце запрещены значения NULL. Ошибка в INSERT.
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=2, Severity=10, native=515, line=1

Нажатие на изображении увеличит его
1C 8, критическая ошибка при обновлении базы, ошибка СУБД, в столбце запрещены значения NULL

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

Этот конкретный пример предоставит представление о том, как можно разрешить подобного рода ошибки с минимальными знаниями и использованием MS SQL. Т.к. база данных на СУБД Microsoft SQL Server, то учитывая тот факт, что в ошибке есть исчерпывающие данные, то можно определить проблему и устранить с помощью самой СУБД.

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

Потребуется запустить SQL Server Management Studio. В дереве «Обозреватель объектов» находим базу данных по ее имени. Раскрываем ветку «Таблицы»:

1С 8, ошибка при обновлении конфигурации базы данных, не удалось вставить значение NULL в столбец

Можно отметить, что название таблиц «_Reference» — это справочники, «_Document» — документы, «_DocumentJourna» — журнал документов, «_Enum» — перечисления, «_InfoRg» — регистры сведений, «_Const» — константы.

Находим таблицу из описания ошибки, в данном примере «_Reference18». В ошибке еще содержится «NG» — это значит new generation (новое поколение), т.к. таблица обновляется. Но ищем исходную таблицу по имени. Правой кнопкой мыши открываем контекстное меню, переходим в подменю «Создать скрипт для таблицы», далее в подменю «Использую SELECT» и наконец пункт «Новое окно редактирования запросов». Таким подходом через менд запрос SELECT позволяет выбрать сразу содержимое всех колонок (столбцов) таблицы. Нажимаем кнопку «Выполнить» командной панели над обозревателем объектов.

Нажатие на изображении увеличит его
1C 8, определение по базе данных SQL не корректных данных в таблице

Это делается для того, чтоб идентифицировать, в каких данных базы содержится проблема. И по запросу и составу данных станет окончательно ясно, какой это справочник. После выполнения запроса можно изучить колонки таблицы «_Description» — она есть у любой таблицы, т.к. соответствует обязательному реквизиту любого справочника «Наименование» (для документов, таким обязательным реквизитом будет номер и дата — «_Date_Time» и «Number»). В текущем примере данные колонки таблицы «_Fld518» и колонки «_Description» легко позволяют понять, что проблема в реквизите «НомерСчета» справочника «Банковские счета».

Нажатие на изображении увеличит его
1С 8, поиск данных, содержащих NULL в таблицах SQL

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

Можно было бы сделать запрос далее к базе SQL на поиск значения NULL в столбце таблицы. Но, если Вы не так сильны в запросах к MS SQL, то предлагается дальнейшее устранение ошибки средствами самой 1С. В зависимости от типа и содержания ошибки стратегия поиска может меняться. Но в данном случае оставалось лишь составить запрос на поиск в справочнике реквизитов «НомерСчета» в значении NULL, ведь именно установка вызывает проблему, значит, скорее всего, что это значение неуместно для данного реквизита.

Нажатие на изображении увеличит его
1С 8, запрос в базе для поиска значения NULL в данных справочника

В результате запроса получается выборка. Далее остается решить, что делать с этими данными. Либо корректно заполнить, либо удалить, если на эти элементы нет ссылок в базе. И далее, если других подобных ошибок в базе нет, то обновление закончится успешно.

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

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