Имя: Пароль:
1C
1С v8
запуск 1С из комм строки и выполнение обработки
0 lamme
 
08.12.14
12:03
1С83.

Есть файловая 1С.
Есть спец пользователь.
Есть батник - который поставлен в планировщик.

Если я запускаю батник - то открывается 1С и все процедуры отрабатываются.
Если в планировщике нажать на выполнить - то я вижу что в диспетчере появляется фоновое задание -1С и все .. контрольные точки не проходятся - т.е. в приоткрытии () обработки воткнул запись в лог файл инфо типа = Открылось успешно.
такого нет.

что не так делаю ?
1 Господин ПЖ
 
08.12.14
12:05
джоб от кого стартует?
2 lamme
 
08.12.14
12:06
от Администратора компутера
3 Vladal
 
08.12.14
12:07
(2) Залогинься администратором в консоль и запусти батник.
Может там какой модальный вопрос возникает у 1С?
4 lamme
 
08.12.14
12:08
5 Vladal
 
08.12.14
12:08
Или любое другое модальное окно с подтверждением реакции пользователя
6 lamme
 
08.12.14
12:08
я если батник не под админом запускаю - то все работает.
Т.е. все равно надо перезайти в систему под администратором  и запустить батник ?
7 lamme
 
08.12.14
12:09
и посмотреть чего там выскакивает ?
8 lamme
 
08.12.14
12:11
зашел. запустил. все красиво отработалось.
через планировщик - опять зависло где-то
9 lamme
 
08.12.14
12:14
собственно ..
когда запускается через батник - в какую процедуру
ПриНачалеРаботыСистемы - оно попадает ?
кто знает ?

я поставил отработку на
МодульОбычногоПриложения.Приначалеработысистемы()
10 lamme
 
08.12.14
12:15
не. идея хорошая - но не она ..
всего 2 процедуры ПриНачалаеРаботыСитемы
- модуль обычного приложения
-модель управляемого приложения ..
все
11 Timon1405
 
08.12.14
12:18
/RunModeOrdinaryApplication запуск толстого клиента в обычном режиме, несмотря на настройки конфигурации и пользователя, от имени которого будет выполняться запуск.
/RunModeManagedApplication запуск толстого клиента в режиме управляемого приложения, несмотря на настройки конфигурации и пользователя, от имени которого будет выполняться запуск.
может вставить нужный вам ключ в батник?
12 Vladal
 
08.12.14
12:18
(6) Для эксперимента.
А вообще батник - это кривой костыль и пережиток семерки. Что мешает эту обработку запускать как регламентное задание?
13 Garykom
 
гуру
08.12.14
12:18
Права дай полные задаче, и не понял насчет "в диспетчере появляется фоновое задание -1С" должно нормальное окно 1С открыться как при запуске батника вручную
14 lamme
 
08.12.14
12:19
(12)
файловая 1С.
надо - чтобы постоянно крутился 1С клиент
15 Vladal
 
08.12.14
12:19
(13) Да это не фоновое задание, а фоновый процесс без окна.
16 lamme
 
08.12.14
12:19
(13)
это как ? там и так вроде все галочки проставлены
17 Timon1405
 
08.12.14
12:21
18 Garykom
 
гуру
08.12.14
12:24
(15) а без окна это уже 1с в режиме ком соединения...
19 lamme
 
08.12.14
12:27
(18)
почему оно тогда так запускается ?
если обычный батник отрабатывает нормально - открывается окно 1С
а через планировщик - в фоновые задания попадает
20 tank68
 
08.12.14
12:34
(4) Попробуй галку снять Не сохранять пароль и Установи галку выполнять с наивысшими правами
21 tank68
 
08.12.14
12:35
Если через баитник у меня обычно все с такими галками пашет
22 lamme
 
08.12.14
12:46
поставил
не помогло
23 lamme
 
08.12.14
12:57
покажите пример батника для планировщика ?
24 lamme
 
08.12.14
13:03
25 lamme
 
08.12.14
13:03
стоп !
там ошибка - данное действие недоступно
тк нет главного окна
26 Garykom
 
гуру
08.12.14
13:04
(24) все логично )) запускай от того же юзверя от которого залогинено
27 lamme
 
08.12.14
13:06
(26)
запускается от того ж юзера.

получается -что при запуске через батник 1С не создает главное окно
или оно еще не создано ..
28 lamme
 
08.12.14
13:07
вот подробнее
http://clip2net.com/s/jqPcgK

хоть какой-то прогресс

трабла не в батнике оказалась
а в самой 1С - в коде.
29 lamme
 
08.12.14
13:14
ну и ..
собственно ..

что надо сделать - чтоб оно запустилось ?

сейчас в общем модуле в процедуре

ПриНачалаеРаботыСистемы ()
...
Если Пользователь.Код="МойКод" тогда
Ф=Обработки.МояОбработка.ПолучитьФорму();
Ф.Параметр ="Автомат";
Ф.Открыть();
конецесли;
конецпроцедуры


что не так то ?
30 PuhUfa
 
08.12.14
13:35
(28) а как ты получил эту ошибку?
31 pessok
 
08.12.14
13:36
посмотри настройки задания. у exec() есть параметры показывания или непоказывания окна
32 pessok
 
08.12.14
13:37
тьфу, у run
33 pessok
 
08.12.14
13:38
34 pessok
 
08.12.14
13:38
а "правильным" выходом из ситуации будет вынести код из формы обработки в модуль, и вообще форму не открывать
35 lamme
 
08.12.14
13:42
(30)
решил проверить - может в батнике есть рус буквы в пути.
скопировал в папку типа C:\1
запустил
а оно и выдало ..
36 lamme
 
08.12.14
13:42
(31)
в каком месте задания ?
37 lamme
 
08.12.14
13:43
у меня батник идет типа
"ПутьК1С" /логин / пароль / ключи
38 pessok
 
08.12.14
13:47
(37) ну так сделай в батнике через run
39 PuhUfa
 
08.12.14
13:47
(35) если ты свой батник сам запускаешь, то почему у тебя 1С сама не появилась?
40 lamme
 
08.12.14
13:47
щас
41 lamme
 
08.12.14
13:47
если я свой баьтник сам запуска. - то проблем нет
окно 1С появляется и все отрабатывается
42 pessok
 
08.12.14
13:47
(41) сделай запуск батник через shell
43 pessok
 
08.12.14
13:48
тьфу, сделай запуск 1С в батнике через shell :)
44 lamme
 
08.12.14
13:48
а пример ?
45 pessok
 
08.12.14
13:50
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run("ПутьК1С" /логин / пароль / ключи", 1)
46 lamme
 
08.12.14
13:53
так .. это в файл с каким расширением засунуть ?
47 ДенисЧ
 
08.12.14
13:53
(46) vbs
48 lamme
 
08.12.14
13:56
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run("C:\Program Files (x86)\1cv8\8.3.5.1119\bin\1cv8s.exe" ENTERPRISE /F "D:\1" /N"Avtoload_price" /P"1234567890"/RunModeOrdinaryApplication", 1)

пишет - нужен символ ) в стр2 поле 69
49 lamme
 
08.12.14
13:56
т.е.
WshShell.Run("C:\Program Files (x86)\1cv8\8.3.5.1119\bin\1cv8s.exe")
50 pessok
 
08.12.14
13:56
(48) экранировать кавычки нужно
51 lamme
 
08.12.14
13:57
WshShell.Run(""C:\Program Files (x86)\1cv8\8.3.5.1119\bin\1cv8s.exe"" ENTERPRISE /F ""D:\1"" /N""Avtoload_price"" /P""1234567890""/RunModeOrdinaryApplication"", 1)
52 lamme
 
08.12.14
13:57
?
53 lamme
 
08.12.14
13:58
или одну кавчку на 3 поменять ?
54 YFedor
 
08.12.14
13:58
Я вот не понимаю, кому ты форму обработки собираешься показывать?
55 pessok
 
08.12.14
13:59
(54) это вторично :)
(53) вроде так норма должно быть
56 Garykom
 
гуру
08.12.14
13:59
(54) дык у него там "ПриОткрытии" формы код ))
57 lamme
 
08.12.14
14:01
(54)
не хочет.
тож самое -пишет - нужен символ ) в стр2 поле16
58 pessok
 
08.12.14
14:02
(56) ну не переписывать же ПриНачалеРаботыСистемы
59 YFedor
 
08.12.14
14:04
(58) А кто мешает код в модуль обработки воткнуть?
60 YFedor
 
08.12.14
14:06
'---------------------------------------------------------------------------
'Процедура запуска задач архивации
Function Run

    'On Error Resume Next
    
    '1) Создадим объект, затем будем использовать его методы для запуска задач
    Set WSHShell     = CreateObject("WScript.Shell")
    '
    
    WSHShell.Run """c:\Program Files (x86)\1cv8\8.3.5.1231\bin\1cv8.exe"" ENTERPRISE /F D:\_ТЕСТЫ\Почка /N ОбменДанными /DisableStartupMessages /Execute ""t:\Desktop\ЗавершитьРаботуСистемы.epf"""

End Function'Run

' Запустим процедуру при открытии скрипта
Run
61 pessok
 
08.12.14
14:06
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run """C:\Program Files (x86)\1cv8\8.3.5.1231\bin\1cv8s.exe"" ENTERPRISE /F""D:\1"" /N""Avtoload_price"" /P""1234567890""/RunModeOrdinaryApplication""", 1
62 lamme
 
08.12.14
14:07
61
ага
понял

сначала - три кавычки
потом везде по 2
в конце 3
63 lamme
 
08.12.14
14:08
vbs запускается вручную. хоршо
щас с планировщик поставлю
64 pessok
 
08.12.14
14:09
(59) что-то я туплю, а как потом саму процедуру из модуля обработки вызвать?
65 lamme
 
08.12.14
14:12
планировщик дает как обычно
http://clip2net.com/s/jqR7a2
--
сам vbs
http://clip2net.com/s/jqR8zi
66 pessok
 
08.12.14
14:14
попробуй с параметром поиграться
http://msdn.microsoft.com/en-us/library/d5fk67ky(v=vs.84).aspx