Быстрый запуск информационной базы 1С:Предприятия 8.3 в Python c использованием bat файла

Публикация № 1421837

Администрирование - Администрирование данных 1С - Стартеры 1С

быстрый запуск информационная база bat файл скрипт Python 1C

В статье излагается решение задачи быстрого запуска требуемой пользователю информационной базы 1С:Предприятия 8.3. Под быстрым запуском подразумевается запуск информационной базы без выбора в списке информационных баз. Один из способов - запуск информационной базы с использованием ярлыка. Второй способ - быстрый запуск информационной базы в Python с использованием bat-файла.

Быстрый запуск информационной базы 1С:Предприятия 8.3 в Python  c использованием bat файла

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

Первый скромный вопрос: «Как запустить внешнее исполняемое приложение без параметров в Python?» На него есть множество вариантов ответов. Ниже приведён пример скрипта для запуска IDE Lazarus. Полное имя стартового файла: С:/lazarus/lazarus.exe.

 

# -*- coding: utf-8 -*-

import os

os.system(r'c:/"lazarus"/lazarus.exe')

 

Казалось бы, что «дело в шляпе». Пишем требуемый путь к 1С и всё... Однако, нет рек без подводных камней. Вот тут нас ожидает первый из них. Вышеприведенный скрипт хорошо работает при отсутствии в пути пробелов. Но платформа 1С:Предприятие 8.3. «любит» по умолчанию устанавливаться  в папку "Program Files". Если в пути к файлу есть пробелы, то запуск приложения можно выполнить так как показано ниже. Пример запуска программы 1С:Предприятие 8.3, расположенной в c:/Program Files/1cv8/common/1cestart.exe.

 

# -*- coding: utf-8 -*-

import os

os.startfile(r'c:/Program Files/1cv8/common/1cestart.exe')

 

Кстати говоря, код будет добротно работать и при такой записи последней строки:

os.startfile(r'c:\Program Files\1cv8\common\1cestart.exe')

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

В результате проб и ошибок мы выработали следующий порядок действий (приводим его предельно детально):

  1. Предположим, что стартовая программа 1С:Предприятие 8.3. установлена в  c:/Program Files/1cv8/common/1cestart.exe. Расположение стартового файла 1С можно узнать, кликнув по её ярлыку и во вкладке «Ярлык» можно увидеть имя в поле «Объект».

 

 

  1. Полное имя информационной базы, которую мы собираемся запустить, минуя появления диалогового окна 1С:  C:\Users\User\Documents\InfoBase5. Узнать место расположения информационной базы можно предварительно из диалогового окна, возникающего при обычном запуске 1С.

  1. Создадим новый ярлык, который нам понадобится для быстрого запуска нашей информационной базы. Для этого можно сделать копию уже имеющегося ярлыка 1С. Затем переименовать его как вам нужно и в свойствах в  поле «Объект» немного продолжить строчку, дополнив ее параметром «ENTERPRISE /F» и полным именем требуемой вам информационной базы.

У нас получится следующая строка (кавычки обязательны!).

 

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"C:\Users\User\Documents\InfoBase5"

 

 

Можно протестировать работу нового ярлыка. Если всё работает как нужно, то можно переходить к следующему шагу.

  1. Наступил момент создания bat файла. Открываем блокнот и копируем в него строчку, которую мы только что записывали в поле «Объект» ярлыка. 

 

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"C:\Users\User\Documents\InfoBase5"

 

  1. Сохраним файл и дадим ему красивое имя start_conf.bat (можно назвать, исходя из собственного представления о прекрасном).
  2. Теперь осталось научиться запускать файл типа bat с помощью Python кода. Предположим, что полное имя вашего bat файла c:\PythonProgram\start_conf.bat, тогда код в Python будет предельно лаконичен!

 

# -*- coding: utf-8 -*-

import os

os.startfile(r'c:\PythonProgram\start_conf.bat')

 

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

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. SerVer1C 379 12.04.21 13:22 Сейчас в теме
import os
os.system(r'""c:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F C:\Users\User\Documents\InfoBase5"')

..."незачто".
A_Max; dominatorwarr; +2 Ответить
2. fscorp~~61 13.04.21 14:46 Сейчас в теме
Спасибо! На всякое "просто" всегда найдётся "проще простого")
Оставьте свое сообщение

См. также

Планировщик Windows не выгружает базу на 1С 8.2

Стартеры 1С Платформа 1C v8.2 БП1.6 Россия Бесплатно (free)

Внезапно перестал работать планировщик Windows для выполнения онлайн выгрузки из базы.

23.12.2020    603    kacerro    1    

Регулярная перезагрузка Сервера 1С с чисткой кэша

Администрирование данных 1С Стартеры 1С Бесплатно (free)

Батник для перезагрузки агента сервера 1С и чистки серверного кэша и сеансовых данных. Для регулярной перезагрузки вставляем в планировщик заданий Windows.

17.05.2019    14029    alfir70    19    

Настройка списка пользователей для веб-клиента

Стартеры 1С v8 1cv8.cf Бесплатно (free)

Решение для настройки списка пользователей для веб-доступа, отличного от других видов клиентов

29.04.2014    19405    hell666    24    

Скрипт запуска 1С 8 с принудительным обновлением кэша конфигурации 8.0-8.3 (замена 1cestart.exe)

Стартеры 1С v8 1cv8.cf Россия Бесплатно (free)

Скрипт служит для борьбы с глюками 8-ой версии после динамического обновления. Данный скрипт очищает локальный кэш 1С при каждом запуске платформы. Для использования необходимо положить его в папку "%appdata%\1C\1CEStart\" и у ярлыка на рабочем столе пользователей изменить расширение файла с ".exe" на ".js". Скрипт работает на всех версиях Windows включая Windows 7 (x64), Server 2008 (R2), Server 2012 (R2).

09.07.2011    18437    tuman777    3    

Запуск конфигурации без регистрации в списке ИБ

Стартеры 1С v77::ОУ v77::БУ 1cv7.md Россия Бесплатно (free)

запускаем конфигурацию платформы 1С.7.7 через bat-ник... не требуется регистрировать ИБ в списке запуска и после корректного выхода - реестр остаётся пустым.. ;-)

01.05.2011    15597    alleh    45    

Облегчаем запуск 1С

Стартеры 1С Россия Бесплатно (free)

Те, кто вынужден работать с большим количеством баз, знают, что стандартные способы запуска 1С не всегда удобны. Именно по этой причине появляются альтернативные способы запуска. У каждого у них есть свои преимущества и свои недостатки. Надеюсь, эта статья поможет вам сделать выбор в пользу того или иного решения, если, конечно, этот выбор перед вами стоит :) И так, начнем…

17.09.2009    19501    salexdv    29