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

24.07.12

База данных - Администрирование СУБД

Бывают случаи, когда приходится для пользователей писать батник запуска 1С с указанием конкретной базы, когда стандартный загрузчик 1С не работает (например автоматический запуск 1С с указанием конкретной базы при старте windows), а с выходом релиза 15 платформы проблема стала еще актуальней. Но запускать в батнике 1С конкретного релиза неохота, т. к. выйдет новый релиз и придется переписывать батник. Предлагаю универсальный батник, который всегда запускает именно последний релиз платформы 1С.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Загрузчик 1С
.bat 0,14Kb
21
21 Скачать (1 SM) Купить за 1 850 руб.

Предлагаю Вашему вниманию батник, который работает по следующему принципу:

  1. Запускается батник, в который передаются параметры подключения к базе
  2. Батник ищет последний установленный релиз платформы и запускает его, передавая параметры базы.

Таким образом запускается конкретная база всегда под последним релизом.

Собственно такая проблема у меня была. Нужно пользователям в настройке запуска Windows прописать запуск 1С предприятия, указав под какой базой войти в предприятие.
Вроде не вопрос:

 
"C:\Program Files\1cv82\8.2.14.528\bin\1cv8.exe" enterprise /S server_name\base_name


Но вот не хотелось указывать конкретно релиз программы в командной строке. А если установить новый релиз? Перепрописывать всем пользователям путь?
 

"C:\Program Files\1cv82\common\1cestart.exe" enterprise /S server_name\base_name

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

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

1. В папке "C:\Program Files\1cv82\" создаем bat-файл с именем "start1c.bat" и следующим содержимым:

 
@echo off
for /f "delims=" %%* in ('dir/O:-N 8.2* /B /S 2^>nul') do (
start %%*\bin\1cv8.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
exit /B
)



2. В поле запуска приложения при входе пользователя прописываем команду

 
C:\Progra~1\1cv82\start1c enterprise /S server_name\base_name


3. В поле рабочего каталога обязательно указываем

 
C:\Progra~1\1cv82\



И все работает.

Что делает батник? Он получает список папок в рабочем каталоге с полным путем, которые начинаются на "8.2" и отсортированы по убыванию. Таким образом нужный каталог будет находится первым в списке. По списку запускается перебор, и первому же (нужному) пути каталога приклеивается "\bin\1cv8.exe", потом приклеиваются параметры и запускается 1С. Так как для запуска 1С используется команда "start", батник не ожидает окончания работы 1С и завершается. 1С же продолжает работу. Таким образом мы запускаем 1С один раз именно самой последней версии указав конкретную базу и режим предприятия. 😊

P. S. Если у Вас 64-битная система и 1С установлена в "C:\Program Files (x86)\1cv82", то вместо "C:\Progra~1\" нужно писать "C:\Progra~2\"

 

Оригинал моей статьи опубликован здесь: http://pro1c.org.ua/index.php?showtopic=6831

См. также

Администрирование СУБД Системный администратор Платформа 1С v8.3 Бесплатно (free)

Пользовался ранее https://infostart.ru/1c/articles/1120161/#, но она устарела, т.к. службы запускаются через systemctl, да и сами службы слегка изменились. Возможно, где-то на ИТС уже есть нужная инструкция, но мне не попалась.

15.11.2024    303    Baser    2    

1

HighLoad оптимизация Администрирование СУБД Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Мы исследуем проблему долгого выполнения запросов PostgreSQL при использовании конструкции VALUES: когда она возникает, как на нее можно повлиять, а главное, почему ее продуманная отработка важна для более быстрого функционирования решений на базе 1С

12.11.2024    831    Tantor    19    

14

HighLoad оптимизация Администрирование СУБД Механизмы платформы 1С Программист Платформа 1С v8.3 ИТ-компания Россия Бесплатно (free)

В данной статье мы рассмотрим, как работает механизм временных таблиц на postgres на платформе 8.3.23 и что изменилось в нем при добавлении новых возможностей в платформе 8.3.25. А также на примере покажу, как понимание работы платформы позволяет оптимизировать СУБД для работы с 1С.

29.10.2024    3149    Tantor    38    

34

Администрирование СУБД Системный администратор Программист Бесплатно (free)

CDC - очень мощный механизм, который можно использовать во многих сценариях, возможность развернуть его в Docker показывает простоту и лёгкость данной технологии.

08.10.2024    735    AlexSvoykin    1    

7

Администрирование СУБД Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Анализ и решение ошибок СУБД. Во время реиндексации базы Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Не удалось найти объект "ИмяБазы.dbo._RefSInf21806", так как он не существует, или отсутствуют разрешения. Во время проверки целостности Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Недопустимое имя объекта "dbo._RefSInf21806".

19.09.2024    4351    Xershi    10    

17

HighLoad оптимизация Администрирование СУБД Архивирование (backup) Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Бэкап в Postgres состоит из набора граблей, которые нужно обойти для успешного восстановления. Они заложены в самых неожиданных местах от предмета резервного копирования (база или кластер) до структуры каталогов. Один неверный шаг и восстановление будет невозможным. Почему нельзя было сделать проще, как в MS SQL или Oracle? Почему бэкап в Postgres оставляет впечатление чьей-то лабораторной работы? Статья адресована прежде всего специалистам 1С, избалованным комфортом в MS SQL, в суровых буднях импортозамещения на Postgres.

13.08.2024    2973    1CUnlimited    9    

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
0. modul 158 24.07.12 11:29 Сейчас в теме
Бывают случаи, когда приходится для пользователей писать батник запуска 1С с указанием конкретной базы, когда стандартный загрузчик 1С не работает (например автоматический запуск 1С с указанием конкретной базы при старте windows), а с выходом релиза 15 платформы проблема стала еще актуальней.
Но запускать в батнике 1С конкретного релиза неохота, т. к. выйдет новый релиз и придется переписывать батник.

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


Перейти к публикации

1. maxkisa 24.07.12 13:12 Сейчас в теме
Велосипед..есть штатные средства и по запуску последней платформы и автоматической установке последней версии платформы на компы пользователей
2. frc 24.07.12 13:15 Сейчас в теме
публикацию можно закрывать.
По запуску последних и не-последних релизов есть полновесная статья "Администрирование и унификация списка баз пользователей в 8.2 (типовой механизм)".
3. modul 158 25.07.12 00:15 Сейчас в теме
Штатные средства в некоторых случаях не работают. В частности в 15 релизе: если у пользователя в списке нет базы, то прямой ярлык не запускает нужную базу а открывает список. Еще, если в настройках Виндовс для пользователя прописать запуск программы по умолчанию 1cestart.exe (это когда проводник и меню "пуск" не загружается, а грузится сразу 1С с конкретной базой) то тпри входе пользователя открывается управляемый интерфейс, даже если его явно задать.
Списки баз создавать долго, да и зачем если использовать тольку одну базу. Мне проще батником. Батник - он надежный и я точно знаю что там и как запускается, а 1С мало ли когда что накосячит. Авось перестанет вдруг запуск работать штатными методами, как в 15 релизе.
5. frc 25.07.12 13:22 Сейчас в теме
(3)
В частности в 15 релизе: если у пользователя в списке нет базы, то прямой ярлык не запускает нужную базу а открывает список.

так у вас и есть прямой запуск стартера.
Что делает ярлык.
7. modul 158 26.07.12 18:14 Сейчас в теме
(5) frc, Ярлык v8i не работает в таком случае. Я не про список баз и которого нужно выбрать базу
8. МимохожийОднако 142 26.07.12 19:05 Сейчас в теме
(3) ИМХО, не убедил. В настройках запуска достаточно указать на файл списка баз, в котором всё прописано.
4. cuba8 25.07.12 13:20 Сейчас в теме
Не совсем понял 2-й пункт:
2. В поле запуска приложения при входе пользователя прописываем команду.
Это где такое поле запуска приложения, в свойствах ярлыка?
6. modul 158 26.07.12 18:12 Сейчас в теме
9. cuba8 27.07.12 07:05 Сейчас в теме
(6) Спасибо разобрался.
Если делать не через домен, а через ярлык на рабочем столе ПК (WinXP), то строчка в поле «Объект» вида:
C:\Progra~1\1cv82\start1c
все равно встанет такой:
"C:\Program Files\1cv82\start1c.bat"
А в поле рабочая папка строчка обязательно такая:
C:\Progra~1\1cv82\
иначе не будет работать
10. webester 26 29.07.12 00:06 Сейчас в теме
никак не пойму чем
"C:\Program Files (x86)\1cv82\common\1cestart.exe" /FПутьКБазе

не устраивает?
11. webester 26 29.07.12 00:08 Сейчас в теме
(10) невнимательно читал (3) вопрос снят
Оставьте свое сообщение