Где 1С хранит список баз

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

Предыстория

Как я докатился до того, что — Я, системный администратор! — стал задаваться вопросами работы 1С?
Тирада в моей оригинальной статье, которую вряд ли кто читал, касалась того, какие лентяи 1С разработчики, и сами производители 1С, что одни понаделали много функций, но другие недостаточно хорошо описали, третьи поленились разобраться, а свалили всю рутину на системных администраторов, которым делать-то нечего, кроме как за элитой IT подметать. Думаю, здесь никто меня не похвалит за такие рассуждения. Хотя и похвалы особо не ищу. Единственная цель — чтобы это пригодилось кому-то, кто правильный лентяй-админ, и не любит заниматься одним и тем же помногу раз. А теперь о том, как это было.
Я столкнулся с таким положением дел, что всем сотрудникам наши 1С разработчики добавляют базы ручками, присутствуя на рабочем месте сотрудника, либо просят это сделать нас удалённо, подключившись к рабочему столу пользователя и мышкакликанием все повторить.
Выглядит это так:
— Миша, добавь Васи Пупкину базу: 1C-server:1551 «buh_prod»
— А как её назвать?
— Бухгалтерия
И не думайте, что в следующий раз, этот 1С разработчик скажет мне, что эту базу можно назвать именно также. Как следствие, у нас одна и та же база у разных сотрудников называлась по разному. Красота, не так ли?!
Ещё одна сторона этой проблемы в том, что Сотрудник должен быть на месте, компьютер включен, и у него должно быть время (5 мин), чтобы я мог всё это сделать. Если сотрудника нет на месте, то вы можете себе предположить, сколько от меня требуется трудозатрат, чтобы выловить этого сотрудника, согласовать с ним время и сделать это. А если этот сотрудник в удалённом офисе, на ноутбуке, и бывает в сети крайне редко, плюс разница поясов Владивосток — Москва, то это ещё добавляет остроты ощущений. Конечно, можно ещё ярлыком в почту бросить, но этим у нас 1С разработчики очень крайне редко пользуются — или не умеют, или не хотят, или за нас переживают, что без работы останемся, за что им отдельная благодарность и лучи поноса.
Баз у нас порядка пятнадцати. У каждой группы отдельный набор баз. А есть и такие, у кого строго индивидуальный список.
Следующая картина вам ещё больше понравится.
Поступает распоряжение от главы 1С’ников, что нужно трём отделам изменить базу, т.к. она переехала на другой сервер. Дальше не буду тратить буквы, т.к. всё что я описал выше множите на тридцать человек, двадцать из которых в другом офисе или даже другом городе. Классная задачка.
Не помню, сколько раз, я, таких суматох вынес, но было их больше десяти. После чего мне стало интересно, какие способы оптимизации этого процесса есть по unix-way’ю.
И стал я читать… Читал долго… Читал упорно… Документация 1С в справке мне совершенно не понравилась — написано так, как будто бы я уже это делал, поэтому большую часть идеи они оставляют между строк. Лучи поноса в написателей встроенной справки 1С. Как обычно это бывает, более-менее понятную инструкцию нашел на личном блоге, не помню уже кого.

Теория устройства конфигурационных файлов

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

Расположение файлов на стороне пользователя

У пользователя на компьютере 1С 8.2 хранит фалы списков баз в каталогах:
Для Windows XP:
Профиль всех пользователей: С:\Documents and Settings\All Users\Application Data\1C\1CEstart\
Профиль пользователя: С:\Documents and Settings\%username%\Application Data\1C\1CEstart\
Для Windows 7:
Профиль всех пользователей: C:\ProgramData\1C\1CEStart\
Профиль пользователя: C:\Users\%username%\AppData\Roaming\1C\1CEStart\
Содержимое профиля пользователя — два файла: 1CEStart.cfg, ibases.v8i.
Содержимое директории профиля всех пользователей — один лишь, 1CEStart.cfg.
При запуске 1С берёт список баз к представлению в файле пользователя C:\Users\%username%\AppData\Roaming\1C\1CEStart\ibases.v8i, но предварительно читает настройки сначала из профиля всех пользователей C:\ProgramData\1C\1CEStart\1CEStart.cfg, а потом и из профиля пользователя C:\Users\%username%\AppData\Roaming\1C\1CEStart\1CEStart.cfg, и если в них есть ссылки на конфигурационные базы в сети, то добавляет их в этот файл.

Описание файла 1CEStart.cfg

В профиле всех пользователей конфигурационный файл C:\ProgramData\1C\1CEStart\1CEStart.cfg имеет следующее содержание:
InstalledLocation=C:\Program Files (x86)\1cv82 InstallComponents=DESIGNERALLCLIENTS=1 THINCLIENTFILE=1 THINCLIENT=0 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=0 LANGUAGES=RU
Где:
InstalledLocation — содержит указание на каталог, в который выполнена установка 1С: Предприятие. По умолчанию это значение C:\Program Files (x86)\1Cv82.
CommonCfgLocation — указывает путь и имя общего конфигурационного файла. Допускается наличие нескольких строк с таким параметром.
CommonInfoBases — указывает путь и имя файла (.v8i) со списком общих информационных баз.
DistributiveLocation — содержит указание на каталог, в котором будет производится поиск новой версии для автоматической установки.
InstallComponents — В локальном конфигурационном файле (1CEStart.cfg) содержит перечень установленных компонент с признаком нужно установить компонету — 1, или нет — 0.
Возможны следующие компоненты параметра InstallComponents:
DESIGNERALLCLIENTS — все клиенты и конфигуратор.
THINCLIENT — тонкий клиент для клиент-серверного варианта работы.
THINCLIENTFILE — тонкий клиент с возможностью работы с файловыми информационными базами.
SERVER — сервер 1С: Предприятия. Если программа установки запускается из программы запуска, то сервер будет установлен как приложение.
WEBSERVEREXT — компоненты расширения для веб-сервера.
CONFREPOSSERVER — сервер хранилища конфигураций 1С: Предприятия.
SERVERCLIENT — компоненты для администрирования кластера серверов 1С: Предприятия.
CONVERTER77 — конвертер информационных баз из версии 1С: Предприятия 7.7.
LANGUAGES — список языков интерфейса для установки. Если указано несколько языков, они перечисляются через ”,”. Пример: LANGUAGES=RU,UK,BG
В профиле пользователя конфигурационный файл C:\Users\%username%\AppData\Roaming\1C\1CEStart\1CEStart.cfg первоначально пустой. Но, если какие-то настройки необходимо сделать индивидуально для конкретного пользователя, то писать именно в него, и тут уже его ключи настроек будут иметь больший приоритет, но не все. Это отдельный вопрос, им я не буду сейчас захламлять голову.

Описание файла ibases.v8i

Второй важный файл информационных баз, который находится в профиле самого пользователя — C:\Users\%username%\AppData\Roaming\1C\1CEStart\ibases.v8i. В него и собирается конечный список баз. Пример его содержимого:
Connect=Srvr=»1C-server:1551″;Ref=»phonebook»; ID=34891493-907f-4783-8a37-3cbc092a989a OrderInList=16640 Folder=/ OrderInTree=16640 External=1 ClientConnectionSpeed=Normal App=ThinClient WA=1 Version=8.2 Connect=File=»\\Dvc-server\it\Equipment\Rarus\ITIL»; ID=2829c91a-137f-457c-93fe-9e74c8ec5ee4 OrderInList=16384 Folder=/ OrderInTree=256 External=1 ClientConnectionSpeed=Normal App=Auto WA=1 Version=8.2.14.540
Где:
– название базы 1С. Может быть как русскими буквами, так и английскими. Это то, что видит пользователь.
Connect=Srvr=»1C-server:1551″;Ref=»phonebook»; — место хранения базы. | | | | | | | |- наименование базы на сервере 1С. | | |————- порт подключения, если отличается от стандартного. | |——————— адрес сервера. |—————————— тип подключения может быть: Srvr, File, ws — вэб-сервер.
ID=34891493-907f-4783-8a37-3cbc092a989a — автоматически генерируемый уникальный код базы. Если у двух записей один и тот же ID, значит это одна база.
OrderInList=16640 — порядок в списке баз, когда базы представлены одним общим списком без подкаталогов; этот параметр из сетевого списка синхронизируется только в чистый ibases.v8i, если в ibases.v8i пользователя уже заполнен этой базой и этот параметр не будет перезаписываться, при его изменении в сети.
Folder=/ — задаёт место в дереве каталогов, если вид представления списка баз выставлен деревом; этот параметр имеет приоритет пользователя, и не меняется при изменении в сетевом конфиге.
OrderInTree=16640 — порядок в дереве, когда список баз представлен в виде иерархии подкаталогов; этот параметр имеет также приоритет пользователя, и синхронизируется только при первом добавлении базы, а далее подлежит изменению только локальным пользователем.
External=1 — внешняя подключаемая запись конфигурации или нет. Когда 0 тогда база присутствует только в этом файле. В данной ситуации эта запись импортируется из файла списка баз .v8i из сети. Это идентификатор, если это список баз расположенный в сети (расшаренный), то этот параметр можно вообще убрать из конфигурационного файла.
ClientConnectionSpeed=Normal — скорость соединения клиента. Опции могут быть «Nofmal” и «Low”. Логика ясна и без моих поиснений. Этот параметр интерактивный и при сетевом размещении синхронизируется при каждом запуске 1С.

App=Auto — тип соединения клиента. Бывает три типа:
— Auto — определяется сервером;
— ThinClient — тонкий клиент;
— ThickClient — толстый клиент.
Этот параметр интерактивный и синхронизируется при каждом запуске 1С.
WA=1 — этот параметр говорит о том, что система должна использовать windows авторизацию. Этот параметр интерактивный и синхронизируется при каждом запуске 1С.
Version=8.2 — используемая версия для этой базы. Если указать полностью конкретизируя какую платформу использовать, то будет использовать именно ту платформу, которую укажешь, как, например, во второй записи — Version=8.2.14.540. Этот параметр интерактивный и синхронизируется с сетевым конфигом при каждом запуске 1С.
Также есть ещё такой параметр как DefaultApp — тип соединения клиента по умолчанию, если в конфигурации для базы не задан, и DefaultVersion — используемая версия по умолчанию, если не задано в конфигурации для базы. Этот параметр пользовательский, и синхронизируется в чистый файл базы при первом запуске. Далее этим параметром управляет локальный пользователь.

Ссылки на конфигурационные файлы в сети

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

  • либо в конфигурационном файле всех пользователей C:\ProgramData\1C\1CEStart\1CEStart.cfg, если мы хотим показать базы для всех пользователей компьютера;
  • либо в конфигурационном файле конкретного пользователя C:\Users\%username%\AppData\Roaming\1C\1CEStart\1CEStart.cfg, если мы хотим показать базы только определённому пользователю на компьютере.

А добавить можно параметры:

  • либо CommonCfgLocation=\\server\1C\config\bases.cfg — указывает путь и имя общего конфигурационного файла. Допускается наличие нескольких строк с таким параметром. Название файла не играет принципиального значения, лишь бы расширение сохранялось;
  • либо CommonInfoBases=\\server\1C\config\buh_bases.v8i — указывает путь и имя файла (.v8i) со списком общих информационных баз. Название файла не играет принципиального значения, лишь бы расширение сохранялось;
  • или в комбинации и тот и другой, и помногу строк.

Следует оговориться, что в сети мы должны разместить файлы с расширением .cfg и .v8i, и соответствующим наполнением.

Идея использования возможностей

Идея заключается в том, чтобы делать правки с наименьшим количеством повторений. Если настройки базы или её расположение на сервере поменялось, то, исправив запись один раз в одном месте, мы получим актуальную информацию на всех компьютерах.
Для этого необходимо сделать шару в сети: \\server\1C\. В этой шаре сделать, как минимум два каталога:
..\bases\
Листинг каталога:
\\server\1C\bases\.. .. base1.v8i base2.v8i base3.v8i base4.v8i
В этом каталоге будут хранится файлы с расширением .v8i. Эти файлы будут иметь внутри себя настройки всего лишь одной базы для каждого файла. Причём указать следует только те параметры, настройки, которые критичны именно для этой базы, всё остальное автоматом подставится по умолчанию. Пример файла:
Connect= ClientConnectionSpeed=Normal App=Auto WA=1 Version=8.2
Следует избегать использования параметра ID, т.к. 1С разработчики используют для создания новой базы копипаст из имеющейся базы. А базы с одним ID будут конфликтовать.
..\groups\
Листинг каталога:
\\server\1C\bases\.. .. buh.cfg fin.cfg managers.cfg
В этом каталоге будут храниться файлы с расширением .cfg. Эти файлы будут иметь внутри себя ссылки на базы в каталоге ..\bases\. Пример файла:
CommonInfoBases=\\server\1C\bases\base1.v8i CommonInfoBases=\\server\1C\bases\base2.v8i
В это каталоге мы создаём индивидуальные для группы пользователей или же для конкретного пользователя списки баз. Именно на файлы из этой группы мы ссылаемся в конфигурационных файлах операционной системы пользователя.
При такой схеме мы выносим управление списками баз 1С пользователей в сеть для не администраторов. На сетевой каталог с конфигурационными файлами дать доступ 1С разработчикам и пусть играются как хотят.
А если необходимо изменить настройки какой-то базы, то мы правим её всего одни раз в файле \\server\1C\bases\base.v8i, и это отразится у всех пользователей, т.к. все пользователи смотрят информацию о базе именно в этом файле.

Результат

Результат такого построения конфигурационных файлов:

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

P. S.
Если вы думаете, что это было самой сложной частью работы, то вы глубоко ошибаетесь.

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

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

Где 1С хранит список баз и как увидеть их расположение, не запуская программу? В данной публикации мы ответим на этот вопрос и рассмотрим:

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

1С список баз

Где хранятся базы 1С

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

Выделив информационную базу (далее — ИБ), внизу окна увидим путь к каталогу, где она располагается.

Где же хранится информация об этих базах?

Информация об ИБ, подключенных у пользователя, находится в файле ibases.v8i. Обычно он располагается в каталоге 1СEStart, который имеет путь — С:\Пользователи\Имя пользователя\AppData\Roaming\1C.

Пример расположения для операционной системы Windows 10.

Пример расположения для операционной системы Windows XP.

Откройте папку. В ней находится файл ibases с расширением v8i.

Что делать, если папка скрыта

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

  1. Задайте дополнительные параметры — Вид – Параметры – Изменить параметры папок и поиска.
    (На примере Windows 10).
  2. На закладке Вид установите переключатель — Показывать скрытые файлы, папки и диски.
  3. Нажмите кнопку Ок — скрытые файлы и папки отобразятся.

Есть еще один вариант быстрого поиска каталога AppData, где находятся папки 1С.

Введите в адресной строке проводника %AppData% и нажмите Enter.

Откроется указанный каталог.

Откройте папку 1С – 1CEStart. Там находится нужный нам объект — файл ibases.v8i.

Итак, мы узнали, где хранятся базы 1С. Но как этот файл открыть и посмотреть список баз 1С 8.3 — где хранится он и в каком формате записан?

Файл ibases.v8i и его структура

Файл ibases.v8i можно открыть с помощью блокнота. Он представляет собой файл TXT (текстовый):

  1. Нажмите правой кнопкой мышки на файле и в контекстном меню выберите команду Открыть с помощью.
  2. Из предложенного списка программ выберите программу Блокнот.

Откроется файл, в котором отражена информация об ИБ на данном компьютере, и вы увидите список баз 1С 8.3. У каждого пользователя информация отображается по-своему. Располагается она блоками и содержит данные о наименовании ИБ (так, как она подписана в списке, в окне запуска) и путь к ней.

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

  • ID — идентификатор ИБ, сформированный автоматически.
  • Folder — название папки, при отображении ИБ в виде дерева (в нашем примере — не используется).
  • App — отражает параметры запуска 1С, выбор клиентского приложения (в нашем случае установлен автоматический выбор запуска — Auto). Указывается другой параметр, если в параметрах запуска 1С установлено: тонкий клиент (ThinClient), толстый клиент (ThickClient) или веб-клиент (WebClient).
  • WA — определение пользователя (в нашем примере 1 — пользователь определяется средствами операционной системы). Возможен вариант 0 — определение пользователя путем ввода логина и пароля.
  • Version — версия программы.

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

Поставьте вашу оценку этой статье:

Понятие «Программа 1С» — это совокупность двух составляющих:

  • конфигурации (программного продукта, типового или отраслевого решения) на платформе 1С:Предприятие;

  • платформы 1С:Предприятие.

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

Важно!

Конфигурация — это программа учета. Она определяет набор видов справочников, документов, отчетов, алгоритмы их обработки и проведения, формы отчетов и т.д.

Информационная база предприятия — это конфигурация программного продукта и учетные данные компании (введенные документы, заполненные справочники и пр. учетная информация).

Платформа 1С:Предприятие — это программа, которая необходима для возможности работы с конфигурацией (так же как для работы с документом Excel, например, необходимо наличие программы Microsoft Excel).

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

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

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

В окне информации в разделе Конфигурация отражаются наименование конфигурации, ее версия, например: «Бухгалтерия 8 для Казахстана», версия (3.0.9.25). Это означает, что предприятие работает в версии 3.0.9.25 программного продукта «Бухгалтерия для Казахстана, ред. 3.0». Первые две цифра версии (релиза) конфигурации идентифицируют номер редакции продукта (релиз 3.0.9.25 — это девятый релиз редакции 3.0).

Версия платформы 1С:Предприятия приведена в верхней строке информации о программе. На рисунке используется платформа 1С:Предприятие 8.3.8.2167.

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

Рекомендуется следить за актуальностью версии (релиза) конфигурации и своевременно обновлять конфигурацию.

Подробнее об обновлении программы можно узнать в статье «Обновление базы данных на примере конфигурации «Бухгалтерия 8 для Казахстана» в разделе сайта База знаний — Прочее.

Смотреть видео

Оставьте комментарий