#0
by MaxS
ничего пока в WSH не понимаю, помогите пожалуйста с примерчиком.Нужен скрипт запуска 1С 8.0 в режиме ("V8.Application")Чтобы потом сунуть этот скрипт в назначенные задания для запуска каждые 15 минут.
#2
by gea
Сорри, вместо /D надо /F если база в файле и /S<Адрес>, где<Адрес> = <имя компьютера, работающего сервером приложений><Ссылочное имя инф.базы, известное в рамках сервера 1с:Предприятия>А на самом деле параметров настроек запуска куча
#3
by Young
Вот здесь много чего найдёшь по WSH:http://www.script-coding.info/В "файлах для скачивания" есть справочный CHM-файл по WSH на русском с кучей примеров кода.
#4
by MaxS
это как? мне нужен файл (с каким расширением?) в котором нужно написать команду запуска 1С, которая должна запуститься без взаимодействия с рабочим столом. Спасибо, буду изучать, но дайте чтобы начать? ;)
#5
by Young
То, что написано в (1,2) нужно написать в текстовый файл с расширением VBS. После этого его можно запускать просто двойным щелчком. Можно запускать и из командной строки:cscript.exe c:foldermyfile.vbsЗапуск двойным щелчком равносилен командной строке:wscript.exe c:foldermyfile.vbsИнтерпретаторы wscript.exe и cscript.exe у тебя в системе скорее всего есть.
#6
by Mitrich
А зачем обязательно вызов скрипта пихать в назначенные задания для такой фигни, как запуск 1С в режиме командной строки?Вариант 1, самый простой - пихай в поле "Выполнить" твоего задания сразу строкуc:progra~11cv8in1cv8.exe ну и далее по текстуВариант 2 - делай .bat файл со строкой c:progra~11cv8in1cv8.exe (создаешь текстовый файл и сохраняешь с расширением .bat), потом запускаешь из планировщикаВариант 3 - делаешь текстовый файл, пихаешь туды код из , даешь ему расширение .vbs ну и опять планировщик...PS Хотя варианты 2 и 3 смахивают на извращение с твоими вводными
#7
by MaxS
нужно на сервере запускать. если никто не залогинен, то 1С-ка отработает?В коде 1С сделаны обработки, выдача сообщений в окно сообщений и в журнал 1С и потом автоматический выход.
#8
by MaxS
Вот ещё доп условия.допустим запуск каждые 15 минут, не запускать если предыдущий запуск ещё работает. Если работает более, например часа, то принудительно завершить.Возможно что-то ещё появится....Это все можно настроить в шедуллере, но вдруг сервер умрет и нужно будет сточно восстановить эту задачу на другом сервере, а настраивать параметры и условия будет некому, поэтому если бы все условия и проверки были бы в одном файле, то админам было бы проще.Я им отдаю файл и говорю запускай каждые 15 мин, остальное мои заботы.
#9
by XpyM
Получилось сделать то, что требовалось? Мне вот тут тоже нужно автозапуск регламентных процедур, причем с проверкой, что 1С уже запущен и т.п.
#10
by Николаев Олег
Вообще тема интересная. Я тоже реализовал запуск регламентых процедур, но по образу и подобию идеи системных служб Windows. И запуск реализовал не на WSH а средствами самой 1С-ины. Т.е. утречком запускается 1С-ка под каким-нть специальным пользоватлем и пошло-поехало... Есть справочник "Службы", в нем все хранится, как часто запускать и т.п. Перед выполненнеием задачи службы проверяется запущен ли системный пользователь, службы можно запускать, останавливать, отсылать им сообщения. Есть очередь сообщений для каждой службы которая есть в справочнике "Службы". И таким образом зависимость от настроек винды возникает только один раз - при запуске 1С-ины под системным пользователем. На 8-ке правда енто написано, хотя и на 7-ке тож можно.
#11
by VV
Я про 7-ку. И как ты обрабатываешь такую ситуацию: запустилось восстановление ГП, еще не закончилось, но началось уже другое задание под тем же пользователем, или, если 1-ый монопольно - то под любым. Как бороться с окном "Каталог пользователя занят"? Оно же со временем не убирается, собака, и процесс 1С висит.
#12
by Николаев Олег
Такую ситуацию стандартными средствами не обработать никак. Необходимо вводить понятие "диспетчер". Например, это можно реализовать с помощью файла: перед началом восстановления ГП в файл добавляется отметка о том, что информационная база открыта в монопольном режиме, и все запуски должны предварительно проверять информацию из этого файла, с помощью того же WSH например. Как только появляется отметка о закрытии монопольного режима - можно запускать.
#14
by Николаев Олег
"...еще не закончилось, но началось уже другое задание под тем же пользователем, или, если 1-ый монопольно - то под любым. Как бороться с окном "Каталог пользователя занят"? Оно же со временем не убирается, собака, и процесс 1С висит".
#17
by Николаев Олег
ПриНачалеРаботыСистемы вызывется когда конфгурация УЖЕ загружается но после проверки занят/не занят каталог пользователя. И код который ты написал не сработает никогда, потому как будет висеть именно это волшедбное окно "Каталог пользователя занят".
#19
by Николаев Олег
А насчет инструкции к "стеклянному", извини, таких предметов нетути... без надобности они мне. :-)
#20
by VZ
Спасибо за раскрытие глаз. Может, объяснишь, почему эта конструкция у меня долго работает?
#24
by Бертыш
Файл проверяй на запущенность 1Са при монопольном запуске формируй промежуточнеый файл и держи его открытым (залоченым) до окончания работы
#25
by Бертыш
:visimif exist gnoFail.dat then del gnoFail.datif exist gnoFail.dat Goto visimА файл создавай при монопольном запуске или под нужным акаунтомну не знаю я скриптовbatНик вот он
#27
by VZ
Не, этот пример, конечно же, "семерошный" ;) Но примерно также можно поступить и с "восьмерой". "Стартовая" обработка есть в типовых, немного модифицировать и усё...Но это, ИМХО, стремно. Все-таки есть у "восьмеры" для "регламентных" работ (т.е. без интерактивного вмешательства) отдельный режим соединения.
#28
by XpyM
Нет - не катит. А если сервер перезагружен? Кто будет за этим следить?А если нужно конфигу обновить? А в этот момент проводится обработка? Потом опять на сервер заходить и запускать?Мне именно нужно, чтобы например раз в час проверялось - крутится-ли процесс 1С, или нет. Если не крутится, то запустить его. Если нужно вый
#31
by smaharbA
скока можна ?!Показывал нираз как запускать обработки без изменений конфы ваапче...и Окно авторизации никому не мешает, совершенно, и для запуска остальных...
#32
by XpyM
Причем здесь это? Мне не нужно запустить одну обработку при запуске и закончить работу.Мне нужно, чтобы после запуска 1С выполняла по расписанию некоторые действия.
#33
by smaharbA
а что действия прописать в обработке сложна ?Кстати для 7.7 можна запустить подряд скока хошь действий/обработок, тока дейтвия не могут быть процедурами, но могут быть функциями/методами...(Без изменения конфы)(Зря неслушаешь меня, может и не ясно выражаюсь, но не дриндю)
#35
by XpyM
Иде??? Да и потом, а если у меня две разные базы?Все магические варианты с файлами не проходят.Потому, как 1С может упасть, а кто потом будет разбираться с тем, что файл остался в папке?
#36
by XpyM
мне не нужна 7.7 - мне нужна 8.0Думаю припахать ADO.NET - и то проще будет. :DПо-поводу действий. Еще раз повторяю что мне нужно: При запуске 1С запускаются 5-10 регламентных процедур с разными интервалами и разными действиями. Запускать под каждую из них отдельный 1С - слишком жирно. Поэтому запускается один 1С и там устанавливаются обработчики ожидания.
#37
by smaharbA
Зря ты меня не слушаешь... Уж в этом то, я неодну собаку съел...И ненада никаких АДО.НЕТ у тебя все есть подруками, особенно в восьмерке...
#38
by smaharbA
Короче -- Вы не знаете кто такой Паниковский ?- Нет, Вы не знаете кто такой Паниковский.!- Дак поезжайте в Киев и спросите...- Нет, Вы поезжайте и спросите...!(с)
#43
by smaharbA
Тебе проста нада знать есть 1С или нет, или именно в конкерентной базе ?Для определения в конкерентной базе можна просто запустить по ОЛЕ и позырить есть кто или нет (в восьмерке есть средства вроде)А процесс - методов до и болееselect * Win32_process where name='1cv8.exe' - ну или как он там в восьмерке зовется...
#44
by XpyM
Угу... Через OLE из скрипта... Подключится к уже работающей проге. Что-то не представляю я себе, как это сделать.
#45
by smaharbA
Лениво мне втельмяшивать пока, может кто другой возьмется. можешь поинтересоваться у народа коль не веришь в правдивость моих слов...
#47
by smaharbA
Еще оди Фома-неверующий...А зря ты так думаешь......Могу сказать как определить ОЛЕ-неОЛЕ, без изменений конфы, для 7.7 и 8.0...Способ определять ПроцессИД из самой 1С тоже придуман Вашим покорным слугой...Соединить 7.7/8.0 с опенофисом никто иноя как Ваш покорный слуга......и многа еще чего...(ладно - "и тут Остапа понесло..." (с) :) )
#48
by smaharbA
+ чтение-запись бинарников, строк неимоверного размера и т.д. и т.п....И заметьте, все без ВК...
#49
by smaharbA
+ запуск внешних обработок при старте без какихбыто нибыло изменений конфы (для 7.7) (причем можна из батника)да многа еще чего, да не - больше...
#50
by Бертыш
Зря ты тупишь про файлыЕсли 1С ка упала файл удалится успешно и всего делов тоНо если тебе хочется людей подурачить дурачь
#51
by XpyM
Не надо предлагать того, что не нужно. Я же тебе не пишу того, что я делал и того, что я могу.Что, из того, что ты назвал мне пригодится для _МОЕЙ_ задачи? Чем мне поможет определение идентификатора процесса или запуск обработок не из конфы?Ты мне просто скажи, как определить, что 1С уже запущена для этой базы на этом компе. Есть решение менее кривое, кроме как блокировка файла? Я не говорю, что он не удалится, а говорю, что это не совсем прямо. И думал, что , который столько всего придумал для 1С нашел что-то свое.Тем более, что для случая десятка баз нужно придумывать где эти файлы хранить, а главное удалять при падении 1С - иначе они будут плодиться.
#52
by XpyM
Усе... Буду использовать COM. Через интерфейс IBConnections можно получить список пользователей системы, в том числе и через скрипт.
#53
by smaharbA
wmic /node:comp process where "name LIKE '1cv8%'" get commandline...А вот что я делал, дак врядли вы повторите...(еще посамохвалюсь)
#54
by smaharbA
"Чем мне поможет определение идентификатора процесса или запуск обработок не из конфы" какраз из конфы, минимум изменений и будешь знать кто где и чего запустил (базу)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Подскажите книжку по 1С
- Windows Script Host (WSH). Коллекция ссылок
- Как вставить Windows Script Host в текст программы?
- Скрипт запуска dial-up соединения
- v77.Application и Windows 7 (или Windows Server 2008)
- Скрипт под windows на vbs и т.д. для запуска РИБ
- узнать свой внешний IP - подскажите скрипт
- Почему назвали Windows 7 и Windows 8?
- Скрипт для запуска 1С
- Подскажите скрипт "мягкого" перезапуска рабочих процессов сервера 1С
- файловый сервер windows xp или windows 7
- Скрипт vbs для v83.COMConnector падает: Прекращена работа программы script host
В этой группе 1С
- v7: Как брать в зачет только авансы прошлого года?
- Запись в регистр сведений...
- Как всех быстро выгнать из 1С.
- Ошибка выполнения запроса ADO
- Журнал регистрации полсе восстановления базы
- Бюджет: ОКОФ пластиковых окон
- ПрисоединитьФорму
- Подскажите код символа типа [] в тхт - переход на следующую строку
- Технологическая платформа 1С:Предприятия 8.0. Версия 8.0.17.25
- Пиктограммы в табличной части документа
- есть в 1С функция задержки, аналог sleep(мс) в др языках?
- Нормы времени
- SQL запросом хочу получить родителя 1 уровня справочника
- Сохранение и Восстановление настроек!
- Установить подчиненность справочника прямо в DBF
- Как распечатать многостраничный TIFF при помощи 1С ?
- почему долго завершаются терминальные сессии?
- SQL в домашних условиях.
- Как в "Ведомость по партиям товаров на складах" убрать перемещения товаров
- Астор vs Супермаг