Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - 1с77 + vbs - как открыть базу скриптом

Ответить
Настройки темы
VBS/WSH/JS - 1с77 + vbs - как открыть базу скриптом

Аватара для Charg

Ветеран


Сообщения: 2798
Благодарности: 469


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Charg
Дата: 13-07-2018
Есть код, начало которого выглядит так:
Код: Выделить весь код
Option Explicit
	
    Dim V7, OPENDB, PathToBase
    
    Set V7 = CreateObject("V77.Application")
    PathToBase = "\\server\share_disk_e$\1C_Base\base"
    OPENDB = V7.Initialize(V7.RMTrade, " /d" & PathToBase & " /Nuser /P123", "NO_SPLASH_WINDOW")
WriteLogMsg ("begin start 1C")
При запуске скрипта первый раз появляется окно, которое по идее должно выключаться параметром NO_SPLASH_WINDOW (на некоторых форумах NO_SPLASH_SHOW - тоже пробовал) но тем не менее все еще показывается
Скрытый текст


Соответственно любое запущенное планировщиком задание, стартующее этот скрипт - выдает это окно в котором нужно нажать ОК - и дальше всё отрабатывает как надо. И последующие запуски задания отрабатывают как надо БЕЗ необходимости нажимать ОК в этом окне.
При завершении сеанса и первом запуске скрипта снова нужно будет нажать ОК.

Как победить этот бред?

Отправлено: 18:35, 13-07-2018

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Charg:
При запуске скрипта первый раз появляется окно, которое по идее должно выключаться параметром NO_SPLASH_WINDOW (на некоторых форумах NO_SPLASH_SHOW - тоже пробовал) но тем не менее все еще показывается »
Чего-чего-чего? Появление этого окна говорит о том, что база по указанному пути не зарегистрирована в реестре текущего пользователя.

Цитата Charg:
Как победить этот бред? »
1. Это не бред. 2. Победить его можно добавлением информации в реестр для текущего пользователя в раздел HKEY_CURRENT_USER\Software\1C\1Cv7\7.7\Titles. Можно прямо в скрипте проверять наличие там параметра \\server\share_disk_e$\1C_Base\base, и при отсутствии — добавлять.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:46, 13-07-2018 | #2



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

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


Аватара для Charg

Ветеран


Сообщения: 2798
Благодарности: 469

Профиль | Отправить PM | Цитировать


Цитата Iska:
Чего-чего-чего? Появление этого окна говорит о том, что база по указанному пути не зарегистрирована в реестре текущего пользователя. »
Ну возможно, я с 1с то и не знаком толком, но по описанию в гугле понял именно так.
Разве эта база не должна подключаться однократно? Не на текущий сеанс а вообще при первом запуске 1с для пользователя и до ручного удаления пользователем этой базы через какой-нибудь интерфейс внутри 1с?

Отправлено: 21:25, 13-07-2018 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Charg:
Разве эта база не должна подключаться однократно? Не на текущий сеанс а вообще при первом запуске 1с для пользователя и до ручного удаления пользователем этой базы через какой-нибудь интерфейс внутри 1с? »
Должна. Что и требуется однократно проделать, через интерфейс, либо программно. О чём я и пишу.

А вышеуказанный параметр командной строки отключает splash-заставку 1С, вот эту:
Скрытый текст

Отправлено: 22:13, 13-07-2018 | #4


Аватара для Charg

Ветеран


Сообщения: 2798
Благодарности: 469

Профиль | Отправить PM | Цитировать


Цитата Iska:
Должна. Что и требуется однократно проделать, через интерфейс, либо программно. О чём я и пишу. »
Ну так а это подключение базы сбрасывается если перезайти в сеанс. И снова нужно нажимать "ОК" чтобы скрипт работал в дальнейшем.

Отправлено: 14:26, 14-07-2018 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Charg, у меня — не сбрасывается. А если у Вас сбрасывается — я же прямым текстом пишу: создавайте запись о подключении базы в реестре для текущего пользователя программно, до вызова метода .Initialize().

Отправлено: 15:12, 14-07-2018 | #6


Аватара для Charg

Ветеран


Сообщения: 2798
Благодарности: 469

Профиль | Отправить PM | Цитировать


Iska, это я понял, спасибо, просто уточнял что это не нормальное положение дел. С 1с я не знаком практически никак.
А как можно выяснить почему проявляется этот глюк (несохранение подключенной базы)?

Отправлено: 18:09, 14-07-2018 | #7


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Charg, даже не знаю, не сталкивался. Можете попробовать отследить удачные и неудачные попытки записи в раздел HKCU\Software\1C\1Cv7\7.7\Titles посредством Process Monitor (задав фильтр включения на операции с реестром и на указанный путь). Может быть даст какую-нибудь информацию к размышлению.

Отправлено: 18:30, 14-07-2018 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - 1с77 + vbs - как открыть базу скриптом

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - как добавить программу в родительский контроль скриптом cmd,vbs zrogeb Microsoft Windows 7 0 27-01-2017 15:04
VBS/WSH/JS - Помогите с VBS скриптом coptercor Программирование и базы данных 2 21-09-2011 08:48
Разное - Как открыть базу тестов, чтоб можно было распечатать Rustem Хочу все знать 2 13-02-2009 15:48
VBS/WSH/JS - Проблема со скриптом VBS! voler Программирование и базы данных 5 19-06-2007 14:38
Как открыть базу Sybase с помощью Access? babubudu Программирование и базы данных 2 10-10-2003 12:05




 
Переход