Вкратце по конфигурационным файлам списка баз:
1CESCmn.cfg - используется обычно при административной установке 1С с общих ресурсов (задает параметры баз и где брать дистрибутив), и не рекомендован для использования как поднастройка пользовательского списка (хотя ниже приведен пример, как можно для пользовательской поднастройки использовать и его).
Для "локальной" настройки списка используется 1CEStart.cfg , который помещается в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\".
Чтобы система автоматически "видела" эти конфигурационные файлы, важно не только название файла - но и его размещение.
В данных файлах можно задать различные настройки, но остановимся только на самых необходимых, и вкратце опишу различные варианты взаимодействия и результаты того или иного способа задания списка баз вплоть до мельчайших нюансов, появляющихся при различных вариантах настройки.
Также в конце приведены примеры задач и варианты настроек, с указанием файлов (какие и куда), параметров в конфигурационных файлах и их значений.
Выбор варианта загрузки платформы - за это отвечает параметр "Version" конфигурационных файлов *.v8i.
Примечание: работает только при запуске стартера "%ProgramFilesDir%\1cv82\common\1cestart.exe", при запуске же непосредственно из папки релиза (например, вы запускаете релиз 8.2.13.252: "%ProgramFilesDir%\1cv82\8.2.13.252\bin\1cv8s.exe") данный параметр игнорируется и запускается выбранный в ярлыке релиз.
Варианты загрузки:
Version=8.2 - режим запуска по умолчанию, база запускается на максимальном установленном на сервере релиз платформы 8.2;
Version=8.2.12 - режим запуска максимального релиза 8.2.12;
Version=8.2.12.80 - режим запуска релиза 8.2.12.80; если такой релиз не установлен - будет выдано сообщение об ошибке.
Указание версии соответствия платформы и базы (при задании его в параметрах списка *.v8i) в "Настройках диалога запуска"
самого списка баз 1С в дальнейшем не отображаются.
Варианты с работой 1CEStart.cfg:
- если файлов 1CEStart.cfg и ibases.v8i нет - новый 1CEStart.cfg не создается, а ibases.v8i - будет создан после запуска 1C "Открыть список баз".
- если нет ibases.v8i, а 1CEStart.cfg (с прописанным местоположением дополнительного списка баз) есть - создается пустой
ibases.v8i, а содержимое 1CEStart.cfg приводится к исходному состоянию (без каких-либо ссылок на дополнительные списки баз).
- если есть пустой ibases.v8i, есть 1CEStart.cfg (со списком баз) - список по ссылке из 1CEStart.cfg добавится в ibases.v8i, и там будет сохранен.
Hюанс 1: если одна и та же база присутствует как в списке ibases.v8i, так и в списке, указанном в файле 1CEStart.cfg (или в
списке файла 1CESCmn.cfg), то даже если они различаются настройками - изменения настроек в ibases.v8i для этой базы не
будет; будет добавляться только совершенно новая база. В дальнейшем приоритет настроек будет за списком баз, указанном в
файле 1CEStart.cfg, и настройки одной и той же базы, указанной в разных списках, будут браться из списка 1CEStart.cfg.
Нюанс 2: при варианте, когда добавляемая база есть как в списке файла 1CEStart.cfg, так и в списке файла 1CESCmn.cfg, то
приоритет настроек опять же за списком 1CEStart.cfg - т.о., он первичен по отношению к остальным.
Если же файл 1CEStart.cfg (а параметр "CommonInfoBases=" с непосредственным указанием на другой список "*.v8i" в этом файле, например, будет отсутствовать) указывает на конфигурационный файл 1CESCmn.cfg, а тот, уже в свою очередь, указывает на список добавляемых баз, то приоритет (между умолчательным ibases.v8i и списком по 1CESCmn.cfg) будет за списком баз из файла 1CESCmn.cfg.
Примечание: базы сравниваются между собой по ID.
- если есть ibases.v8i (с каким-либо списком), есть 1CEStart.cfg (с другим списком баз), то список из 1CEStart.cfg также добавится к списку ibases.v8i (аналогично и с такими же нюансами, как и в предыдущем случае).
Нюанс: однако настройки конфигурационных файлов запуска версии платформы (version=) игнорируются, если запускать
непосредственно файл *.v8i с ярлыка:
- если в списке будет одна база - то будет попытка её запуска на платформе с максимальным релизом;
- если несколько баз - будет предоставлен выбор баз, однако запуск будет все так же на платформе с максимальным релизом.
Параметр 1CEStart.cfg указания местоположения файла конфигурации 1CESCmn.cfg (запрещен для выставления в самом
1CESCmn.cfg):
CommonCfgLocation=\\1Cshara\1CESCmn.cfg
Примечание: можно указывать вообще любой файл - с любым именем и расширением, главное - чтобы он был текстовый и в
кодировке UTF-8. Исключение - если нужна загрузка файла конфигурации, то в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart" должен быть "1CEStart.cfg".
Параметр указания списка загружаемых баз с настройками загрузки (одинаков для 1CEStart.cfg и 1CESCmn.cfg):
CommonInfoBases=\\1Cshara\ibcommon.v8i
Пример: "CommonInfoBases=ibcommon.v8i" - файл списка баз указан без пути, должен быть непосредственно в самой папке конфигурационного файла.
Примечание: аналогично именам конфигурационных файлов, можно указывать вообще любой файл - с любым именем и расширением, главное - чтобы он был текстовый и в кодировке UTF-8.
Исключение - опять же, если нужна только пользовательская загрузка списка баз по умолчанию, то в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart" должен быть "ibases.v8i".
Для простоты приняты такие названия:
1CEStart.cfg - конфигурационный файл на локальной машине в папке пользователя "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\", может содержать местоположение 1CESCmn.cfg и/или местоположение дополнительного списка с настройками баз ibases.v8i;
ibases.v8i - список баз и настроек к ним на локальной машине (если расположен в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart" - то при отсутствии здесь же файла "1CEStart.cfg" данный список берется по умолчанию);
1CESCmn.cfg - конфигурационный файл со ссылкой на общий список баз, может лежать в любом доступном для всех месте сети;
ibcommon.v8i - дополнительный/общий список баз и настроек к ним.
Примеры, как можно использовать конфигурационные файлы и настройки запуска различных версий.
Задача 1:
Нужно дать пользователям единый список, и желательно, чтобы его можно было быстро править при необходимости (изменить
сервер 1С, если вышел из строя основной, изменить платформу запуска баз и т.д.).
Решение:
Вариант 1. В "%Users%\\AppData\Roaming\1C\1CEStart\" помещаем 1CEStart.cfg, в нем даем указание на 1CESCmn.cfg, в котором, в свою очередь, будет указан список баз и настроек к ним (ibcommon.v8i).
В этом же каталоге должен быть обязательно хотя бы пустой "ibases.v8" (куда потом будет автоматически скопирован список из
"ibcommon.v8i"), иначе параметры в 1CEStart.cfg обнулятся.
Параметр в 1CEStart.cfg:
CommonCfgLocation=%ProgramFilesDir%\1cv82\1CESCmn.cfg
Параметр в 1CESCmn.cfg:
CommonInfoBases=%Users%\пользователь1С\AppData\Roaming\Roaming\1C\ibcommon.v8i
В "ibcommon.v8i" в параметре "version=" можно указать версию платформы, с которой должна запускаться данная база (только
при запуске стартера 1С с ярлыка "%ProgramFilesDir%\1cv82\common\1cestart.exe").
Вариант 2. В "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\" помещаем 1CEStart.cfg, в нем сразу даем указание на сетевой список баз и настроек к ним (ibcommon.v8i).
В этом же каталоге должен быть обязательно хотя бы пустой "ibases.v8" (куда потом будет скопирован список из
"ibcommon.v8i"), иначе параметры в 1CEStart.cfg обнулятся.
Параметр в 1CEStart.cfg:
CommonInfoBases=\\SERVER\1Cshara\ibcommon.v8i
В "ibcommon.v8i" в параметре "version=" можно указать версию платформы, с которой должна запускаться данная база (только
при запуске стартера 1С с ярлыка "%ProgramFilesDir%\1cv82\common\1cestart.exe").
Файлы конфигурации можно распространять по компьютерам различными способами:
- вручную
- через домен
- через SMS-сервер
- скриптом VBS, WHS и т.д.
Самый наглядный - ручной способ (может быть использован также и в задаче 2):
Каждому пользователю в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\" раскопировать заранее сформированный список баз с настройками "ibases.v8".
Вариант 3. Компиляция вариантов 1 и 2: в "1CEStart.cfg" указываем как путь к общему файлу конфигурации "1CESCmn.cfg" (через который подгружаем общий для всех пользователей список баз "ibcommon.v8i"), так и путь к нужному дополнительному списку баз ("ibcommon(cut).v8i" либо "ibcommon(full).v8i"). Соответственно, пользователям сохраняем каждому свой "1CEStart.cfg" (определяется тем, какой из дополнительных списков подключаем данному пользователю), и не забываем тут же поместить пустой "ibases.v8" (чтобы не затерся "1CEStart.cfg"). И "ibcommon.v8i", и "ibcommon(cut).v8i" ("ibcommon(full).v8i") помещаем в один каталог.
Теперь, чтобы исправить списки баз - достаточно поправить нужный "ibcommon*.v8i". Приоритет настроек при обновлении, соответственно, будет за списком из "1CEStart.cfg".
Вариант 4. Можно сформировать общий файл со списком и настройками ibcommon.v8i, положить его в сетевой доступ, и дать всем
пользователям ярлык и права на его запуск.
Поместить ярлык в "%Users%\ AllUser\"
Задача 2:
Нужно дать одним пользователям - один список, другим - другой список баз.
Решение:
Вариант 1. Когда списки дополняют друг друга (один, более полный, включает в себя менее полный).
Для пользователей, у которых список баз урезан - только урезанный список "ibases.v8" в "%Users%\\AppData\Roaming\1C\1CEStart\".
Для пользователей, у который более полный список - в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\" помещаем
урезанный список "ibases.v8" и файл "1CEStart.cfg", в файле конфигурации даем указание на список дополнительных баз
"ibases(доп).v8i". В результате получим расширенный список баз.
Параметр в 1CEStart.cfg:
CommonInfoBases=%Users%\пользователь1С\AppData\Roaming\Roaming\1C\ibases(доп).v8i
В "*.v8i" в параметре "version=" можно указать версию платформы, с которой должна запускаться данная база (только при
запуске стартера 1С с ярлыка "%ProgramFilesDir%\1cv82\common\1cestart.exe").
То же самое по сети:
Для пользователей, у которых список баз урезан - в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\" только урезанный
список "ibases.v8".
Для пользователей, у который более полный список - в "%Users%\user\AppData\Roaming\1C\1CEStart\" помещаем урезанный список "ibases.v8" и файл "1CEStart.cfg", в файле конфигурации даем указание на список дополнительных баз "ibcommon(доп).v8i". В результате получим расширенный список баз:
"CommonInfoBases=\\SERVER\1Cshara\ibcommon(доп).v8i"
Аналогично - у разных пользователей сразу указать через "1CEStart.cfg" каждому свой сетевой список баз (одним - "\\SERVER
\1Cshara\ibcommon.v8i", другим - "\\SERVER\1Cshara\ibcommon(доп).v8i".
Вариант 2. Когда списки разные (один не включает полностью другой).
Каждому пользователю - свой список баз "ibases.v8" в "%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\", либо - если по
сети, то указание в файле конфигурации "1CEStart.cfg" ("%Users%\пользователь1С\AppData\Roaming\1C\1CEStart\") своего
расшаренного списка баз: у одних параметр будет "CommonInfoBases=\\SERVER\1Cshara\ibcommon.v8i", у других -
"CommonInfoBases=\\SERVER\1Cshara\ibcommon(доп).v8i".
Update:
Если создание конфигурационного файла в формате UTF-8 вызывает сложности, то вот простейший рецепт:
заходите в: "%ProgramFilesDir%\1cv82\conf\"), и копируете оттуда файл conf.cfg (только не удалите его случайно :), хотя настроек там по умолчанию и минимум), после того, как скопировали - удалите в копии ключи исходного файла (например, параметр "SystemLanguage=RU"), переименуйте как вам нужно (или дайте имя согласно стандарту 1С), и все, Ваш новый конфигурационный файл к использованию готов!