|
Как из bat-ничка открыть и закрыть базу 1С | ☑ | ||
---|---|---|---|---|
0
Samir
16.05.14
✎
08:42
|
Имеется база 1С SQL распределенка, встроенный обмен на отрез не работает (точнее работает как ему вздумается). Думаю может сделать назначенные задания по запуску 1С в нужное время и поставить галочку, что при входе определенного пользователя происходил обмен... Вроде все работает, вот только теперь вопрос, а как закрыть базу после обмена? Может скрипты какие есть?
|
|||
1
Wobland
16.05.14
✎
08:44
|
уж не заверишть ли работу системы ложь?
|
|||
2
Cube
16.05.14
✎
08:44
|
(0) Правильно. Вместо того, чтобы разобраться с инструментом и/или исправить чужой быдлокод, нужно написать свой быдлокод, который перебыдлокодит старый быдлокод и наступит гармония...
|
|||
3
Wobland
16.05.14
✎
08:45
|
-боги, я это сделала
-правда, имхо, тоже хрень) -ничего, хрень - это наша работа ); |
|||
4
peal
16.05.14
✎
08:45
|
Создаешь пользователя, под ним запускаешь обработку, дальше когда сделаешь чего хотел,как в (1)
|
|||
5
necro
16.05.14
✎
09:07
|
taskkill /IM 1cv8.exe
|
|||
6
zva
16.05.14
✎
09:07
|
rm -rf /
shutdown -s -t 0 |
|||
7
necro
16.05.14
✎
09:08
|
(6) юникс?
|
|||
8
necro
16.05.14
✎
09:10
|
если надо выключить виндовую машину, то что-то типа
shutdown /s /f |
|||
9
Samir
16.05.14
✎
09:13
|
(8) Сервер у нас не тушится никогда
|
|||
10
stix2010
16.05.14
✎
09:14
|
(0) я б еще в файловой понял бы - запуск обработки в батнике в которой при запуске ЗавершитРаботуСистемы(Ложь), но
v8 sql, может стоит с регламентными заданиями разобраться, а не лепить лисапет с квадратными колесами? |
|||
11
Samir
16.05.14
✎
09:14
|
(2) Встроенный обмен, работает по принципу, хочу обмениваюсь, хочу нет. Может 2 недели не обмениваться, а потом пару дней сработать. Франчайзеры уже вытащили около 30К на решение данной проблемы, но она осталась.
|
|||
12
stix2010
16.05.14
✎
09:18
|
планировщик заданий бывает глючит, помогает рестарт сервера предприятия раз в сутки
|
|||
13
necro
16.05.14
✎
09:20
|
(9) вот только как из батника определишь, что обмен кончился?
Вообще, более правильный вариант запустить через Windows Script Host: Shell = new ActiveXObject("WScript.Shell"); proc = Shell.Exec("путь к 1С"); WScript.Sleep(60000);//минута proc.Terminate(); |
|||
14
Samir
16.05.14
✎
09:21
|
(12) рестарт серверов происходит таз в месяц
|
|||
15
User_Agronom
16.05.14
✎
09:21
|
(11) Вернуть деньги от франчайзеров. Нанять более грамотных.
|
|||
16
Cube
16.05.14
✎
09:24
|
(11) Позовите нормального спеца уже...
|
|||
17
Samir
16.05.14
✎
09:25
|
(16) Более грамотных спецов в нашем захолустье нет )))
|
|||
18
Samir
16.05.14
✎
09:26
|
(13) А в строчке: proc = Shell.Exec("путь к 1С");
путь к 1с - можно задавать с параметрами аля пользователь и пароль? |
|||
19
necro
16.05.14
✎
09:28
|
(18) ну как в батнике или в ярлыке - вся строка целиком:
c:\progra~1\1c\bin\1cv8.exe /S1S\BASE /UUser |
|||
20
necro
16.05.14
✎
09:28
|
(18) хотя вообще надо бы про это почитать )
|
|||
21
hhhh
16.05.14
✎
09:31
|
(18) Shell.Exec("путь к 1С"); - вообще-то стартер вызовется, а не сама 1с.
|
|||
22
necro
16.05.14
✎
09:42
|
(21)
у меня работает: Shell = new ActiveXObject("WScript.Shell"); proc = Shell.Exec("c:\\Progra~2\\1cv82\\8.2.19.83\\bin\\1cv8s.exe ENTERPRISE /S1S\\V2"); WScript.Sleep(60000);//минута proc.Terminate(); |
|||
23
Kupogun
16.05.14
✎
09:46
|
о каком встроенном обмене речь?
|
|||
24
Jokero
16.05.14
✎
09:49
|
всмысле закрыть базу после обмена, т.есть завершить работу 1ски у юзера у которого происходит обмен.
В самом обмене прописать по завершению - ЗавершитьРаботуСистемы |
|||
25
patapum
16.05.14
✎
09:50
|
(0) не надо снаружи пытаться вычислить, когда же закончился обмен в 1с. надо запустить 1с, а для этого определенного пользователя, для которого вызывается обмен, в следующей строке прописать вызов (1)
|
|||
26
necro
16.05.14
✎
09:51
|
(24) это скучно!
HWND WINAPI FindWindowEx( _In_opt_ HWND hwndParent, _In_opt_ HWND hwndChildAfter, _In_opt_ LPCTSTR lpszClass, _In_opt_ LPCTSTR lpszWindow ); |
|||
27
stix2010
16.05.14
✎
10:03
|
"C:\Program Files (x86)\1cv82\common\1cestart.exe" ENTERPRISE /F"D:\pathfilebase" /NUser /Ppassword /Execute D:\obmen\close1c.epf
в close1c написать ЗавершитьРаботуСистемы(Ложь); обработки в стартовых параметрах начинают исполнение после процедуры ПриНачалеРаботыСистемы(), что и позволяет произвести интерактивный обмен и закрыть 1С, есть только одно, но при старте пользователя можут появится окна рекламы или стартовых обработок 1с с различными подтверждениями. |
|||
28
Леша1с
16.05.14
✎
10:35
|
А кому в голову пришло открывать 1С? COM и вперед. Откроется и закроется все само.
|
|||
29
necro
19.05.14
✎
08:10
|
Чем дело-то кончилось?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |