06.04.2007, 11:46 | #21 |
Участник
|
А по этому поводу - она и должна быть пустая. Параметры NAS, похоже, хранит где-то в другом месте.
|
|
06.04.2007, 11:54 | #22 |
Участник
|
Цитата:
Сообщение от RedFox
Если я все-таки правильно понял то, что нужно сделать, то батник должен содержать следующее:
- запуск на выполнение Application Server с необходимыми параметрами (startupparameter=jobschmigex, где jobschmigex - код, по которому в 1 кодеюните производится обработка - см. аналог ADCS). Так же производится корректировка 1 кодеюнита с запуском то, что нужно, будь то другой кодеюнит, отчет, внешняя компонента или что-то еще. Самое главное, чтобы она возвращала куда-то признак о том, что ее работа или обработка закончилась (нужно смотреть по бизнес-процессу). "\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex то все просто замечательно работает, но в этом случае нужно нажать кнопку ESC, чтобы системное черное окно закрылось (а мне это нужно делать автоматически, потому как мой батник - один из нескольких десятков, которые должны отрабатывать в рамках процесса обмена данными). Но сделать это каким-то параметром или другим способом, кроме как нажать на клавиатуре кнопку ESC не представляется возможным, насколько я понял из общения с друзьями, коллегами на форуме и всеми, кто мог бы мне помочь Поэтому я пытаюсь сделать то, что мне нужно с помощью сервиса. При этом сервис создается, запускается, но сессия NAS не открывается ни в одной из баз. И оно понятно: строка параметров пустая, хотя я и указываю параметры в строке инсталяции сервиса: "\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex, installasservice=Yes При этом, даже если я указываю те же параметры в самой "карточке" сервиса (если можно так выразиться) ничего не меняется: сессии нет, код не отрабатывает. Пытался я в сервисе сделаить запуск от определенного пользователя - никаких изменений. Верю, что среди вас есть специалист, который в состоянии мне помочь! Цитата:
Сообщение от RedFox
P.S. Кстати. вопрос к крутым спецам: Если кому не трудно, то объясните точнее по поводу net start NAVISION-SQL ..
net stop NAVISION-SQL, а то интересно. Ну или пришлите что-нибудь в личку или redfox@list.ru. Заранее благодарен. есть такая команда DOS: NET у нее есть параметры: ACCOUNTS | COMPUTER | CONFIG | CONTINUE | ... | SEND | START | STOP в свою очередь параметром у команды NET START может быть только имя сервиса /(службы) Windows, созданной на том компьютере, на котором производится ее запуск. Сервис же можно создать различными способами: например, с помощью Windows Resource Kit (доки можно почитать тут: http://support.microsoft.com/kb/q137890/ Ресурс кит загружается тут - http://www.microsoft.com/downloads/d...isplayLang=en) Ну а в случае с NAS - сервис создается с помощью параметра installasservise. |
|
06.04.2007, 11:59 | #23 |
Участник
|
Цитата:
но легче не становится. Сессия не открывается, когда я стартую этот сервис. Почему? Что я не так делаю? В общем все мои вопросы можно свести к одному: Как сделать сервис так, чтобы при его старте открылась сессия и отработал триггер NASHandler, расположенный в ApplicationManagement??? Все остальное: запуск сервиса из командной строки, его остановка, отлов факта выполнения всех нужных процедур - дело техники. Спасибо! |
|
06.04.2007, 12:00 | #24 |
Участник
|
Цитата:
Сообщение от EDVard
И оно понятно: строка параметров пустая, хотя я и указываю параметры в строке инсталяции сервиса:
"\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex, installasservice=Yes При этом, даже если я указываю те же параметры в самой "карточке" сервиса (если можно так выразиться) ничего не меняется: сессии нет, код не отрабатывает. -ДОКТОР МЕНЯ ВСЕ ИГНОРИРУЮТ - СЛЕДУЮЩИЙ ЧИТАЙТЕ ПОСТЫ ВЫШЕ |
|
06.04.2007, 12:04 | #25 |
Участник
|
Цитата:
Стартуете службу(сервис). Лезете в Event Viewer (через контрол панель или в cmd набираете команду eventvwr). Смотрите что пишут в Application событиях. Без Event Viewer дебагить NAS невозможно |
|
06.04.2007, 12:07 | #26 |
Участник
|
Цитата:
Ведь именно с помощью startupparameter= ххх мы спокойненько можем передать параметры. И при этом никаких ручных действий не нужно делать - все автоматизировано. В вашем случае Вы только запускаете NAS на выполнение и все... И не забываем править триггер NASHandler в 1 кодеюните так, как нас нужно!! |
|
06.04.2007, 12:10 | #27 |
Участник
|
Цитата:
Сообщение от RedFox
Как это? А как же передача параметров? Зачем тогда все это городить.
Ведь именно с помощью startupparameter= ххх мы спокойненько можем передать параметры. И при этом никаких ручных действий не нужно делать - все автоматизировано. В вашем случае Вы только запускаете NAS на выполнение и все... |
|
06.04.2007, 12:38 | #28 |
Участник
|
Цитата:
Сообщение от EDVard
Первый кодеюнит я обработал. И если из командной строки вызвать:
"\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex то все просто замечательно работает, но в этом случае нужно нажать кнопку ESC, чтобы системное черное окно закрылось (а мне это нужно делать автоматически, потому как мой батник - один из нескольких десятков, которые должны отрабатывать в рамках процесса обмена данными). Так же окошко ДОС можно закрыть автоматом, установив какое-то свойство. Сис. админа нужно дернуть. А еще можно порыться тут: http://www.microsoft.com/technet/sys...s/default.mspx или http://www.microsoft.com/technet/sysintern...sutilities.mspx. Знаю и видел, что такие окошки можно закрывать автоматически. Цитата:
Но сделать это каким-то параметром или другим способом, кроме как нажать на клавиатуре кнопку ESC не представляется возможным, насколько я понял из общения с друзьями, коллегами на форуме и всеми, кто мог бы мне помочь
Поэтому я пытаюсь сделать то, что мне нужно с помощью сервиса. Цитата:
При этом сервис создается, запускается, но сессия NAS не открывается ни в одной из баз.
И оно понятно: строка параметров пустая, хотя я и указываю параметры в строке инсталяции сервиса: "\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex, installasservice=Yes При этом, даже если я указываю те же параметры в самой "карточке" сервиса (если можно так выразиться) ничего не меняется: сессии нет, код не отрабатывает. Пытался я в сервисе сделаить запуск от определенного пользователя - никаких изменений. Верю, что среди вас есть специалист, который в состоянии мне помочь! Количество установленных на сервер версий NAS может быть сколько угодно, а вот одновременно работающих = кол-во в лицензии. Цитата:
А START и STOP сервиса - дело техники.
Цитата:
Ну а в случае с NAS - сервис создается с помощью параметра installasservise.
|
|
06.04.2007, 12:41 | #29 |
Участник
|
Цитата:
Сообщение от randrews
Вы не поняли - человек говорит про то, что у самой службы нет параметров - в свойствах. То есть - заходить в Службы(Services), становитесь на NAS службу, нажимете свойство - и там в параметрах пусто. Сами параметры, которые вы указываете при инсталяции "как сервис" хранятся в другом месте.
Хотя можно и под другому сделать. a.abyzov, напишиите в личку поточнее последовательность выполняемых задач, если хотите точного ответа. На праздниках я подумаю и отвечу более точно что с моей точки зрения будет лучше. |
|
06.04.2007, 12:50 | #30 |
Участник
|
Цитата:
Цитата:
Честно говоря, вышеперечисленные советы более разумны. Но, если вы настаиваете на внешнем закрытии сессии, то можно такой метод попробовтаь:
1. Создаете процессы (Service) NAS с нужными параметрами. |
|
06.04.2007, 12:56 | #31 |
Участник
|
На всякий случай - несколько NAS на одной машине.
Несколько копий NAS на одной машине |
|
06.04.2007, 14:11 | #32 |
Участник
|
Цитата:
Но в случаес NAS команда остается невыполненной, пока не нажмешь кнопку ESC. После запуска командой "\\navisionserver\Application Server\nassql.exe" appservername=NAVISION-SQL, servername=NAVISIONSERVER, database=Live, company=Компания ""РиК"", startupparameter=jobschmigex NAS выдает сообщение: Код: Date: 06.04.07 - 14:07:17: 14:07:17: Navision Application Server version 3.70 (Build 13164) 14:07:17: Copyright (c) 1987-2003 Microsoft Business Solutions ApS 14:07:17: - 14:07:17: The Navision Application Server NAVISION-SQL started with the foll owing configuration: 14:07:17: Database Server Name = NAVISION 14:07:17: Database = Live 14:07:17: Company = Компания "РиК" 14:07:17: Startup Parameter = jobschmigex 14:07:17: 14:07:17: Press ESC to shut down the Navision Application Server MONAVISION-SQ L. 14:07:17: То есть в данном случае нажатие ESC нужно не для закрытия окна ДОС, а для завершения работы NAS. |
|