Здравствуйте. Решил выложить свое творение, вдруг кому пригодится.
Надеюсь не нарушил правила форума выложив в эту ветку. Прошу прощения у админов, если не трудно - перенесите в соответствующую тематике.
Диспозиция:
Я очень ленив. Периодически приезжаю в инжиринговую компанию для обновления баз, коих (баз) более 200-т. За время моего отсутствия могли добавится новые базы, либо частично убраны старые. А мне лень разбираться чего там у них поменялось, поэтому набросал файлик который всю работу делает за меня. Естественно, ко времени моего прибытия, простой планировщик задач уже сделает копию всех баз (на всякий случай). Базы расположены по порядку: в каталоге Bases_ACC расположены базы Бухгалтерия предприятия, в каталоге Bases_HRM расположены ЗУПы, ну и т.д. Необходимо при надобности поставить новую платформу, установить обновление конфигураций и внести необходимые изменения в прилагаемый ниже файл.
Надеюсь никому в голову не придет испытывать сразу на живых базах? Протестируйте безопасно где-нибудь (у меня для этого всегда есть подопытный компьютер).
Предварительное создание копии баз вещь весьма полезная!
Ну а теперь сам файл. Создайте текстовый файл (в блокноте например), скопируйте в него нижеприведенный текст и сохраните под именем Update_1C_ACC.bat Ну или какое там вам имя нравится... Не забудьте проверить пути к каталогам и вписать свои!
Текст файла:
:: По умолчанию осуществляется вывод команд на экран
:: Можно его отключить раскомментировав следующую строку убрав rem
rem @ECHO OFF
:: Устанавливаем кодировку для корректной работы с именами, содержащими русские символы
:: На экран при этом вместо русских символов выводятся кракозябры, это в порядке вещей
chcp 1251
:: Задаем переменные
:: Пути к папкам могут отличатся, проверьте и впишите свои пути
:: Не забудьте правильно указать версии платформы и обновления
setlocal
:: Задаем путь и версию платформы 1С
set bin_dir=C:\Program Files (x86)\1cv8
set bin_ver=8.3.9.1818
:: Задаем версию обновления конфигурации Бухгалтерия предприятия 3.0
set cfu_acc=3_0_44_155
:: Задаем путь к каталогу с базами предназначенными для обновления
set base_dir=D:\1C\EXPERIMENT
:: Задаем путь к обновлениям 1С
set cfu_dir=C:\Users\user\AppData\Roaming\1C\1Cv8\tmpl ts\1c\Accounting
:: Задаем имя пользователя имеющего права для обновления баз
:: Вместо UserName впишите своего
set user_name=UserName
:: Задаем пароль пользователя непосредственно в файле
:: Вместо Password впишите свой пароль
set user_pass=Password
:: Можем задать пароль путем ввода с клавиатуры, если опасаетесь хранить его в файле
:: Для этого раскомментируйте следующие строки и закомментируйте верхнюю
rem @ECHO "Enter user pass"
rem set /p user_pass=
:: Задаем путь к папке с логами, папку предварительно надо создать
set log_dir=D:\1C\Update_log
:: Создаем текстовый файл со списком баз находящихся в каталоге
:: В строчке ниже форум заменил код на смайлик. Вместо смайлика надо поставить двоеточие и после него букву D
:: Перед двоеточием пробела быть не должно! После двоеточия тоже.
dir %base_dir% /A
/B > List_Dir.txt
:: Начинаем обновление баз согласно полученного списка и выводим лог обновления в указанный каталог
:: Если пароль у пользователя отсутствует, то удалите в строке ниже следующую запись /P %user_pass%
for /f "usebackq delims=" %%i in ("List_Dir.txt") do (
"%bin_dir%\%bin_ver%\bin\1cv8.exe" CONFIG /F "%base_dir%\%%i" /N "%user_name%" /P %user_pass% /UpdateCfg "%cfu_dir%\%cfu_acc%\1Cv8.cfu" /UpdateDBCfg /Out "%log_dir%\%%i_%cfu_acc%.log"
)
Конец файла.
Примечание: В строчке начинающейся dir %base_dir% форум заменил код на смайлик. Вместо смайлика надо поставить двоеточие и после него букву D
Перед двоеточием пробела быть не должно! После двоеточия тоже.
Всяких комментариев в файле получилось больше чем кода, но это для пользы дела.
Для ЗУПов и прочего создайте подобные файлы, соотвествующим образом скорректировав.
P.S. Вопросы можете задавать, правда ответить не обещаю. Скорее всего мне будет просто лень.