Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / job-процесс в csp / 16 сообщений из 16, страница 1 из 1
10.02.2009, 08:58
    #35807238
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Можно ли запустить программу из csp-странички джобом?
Пример. Страничка
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<head>
<title> Cache Server Page </title>
</head>
<body>
<input type=BUTTON id="START" value="ok" onClick="#call(..start(2))#"><BR> 
<script language="Cache" Method="start" Arguments="FILE:%String">
	J ^A
</script>
</body>
</html>
Программа
Код: plaintext
1.
2.
A	S ^A= 12345 
	Q
Вызываемая программа не запускается :(
...
Рейтинг: 0 / 0
10.02.2009, 09:04
    #35807243
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Много чего запускаем именно джобом...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<csp:method name="cLoadData" arguments="Del:%String,JrnOff:%String" returntype="%String">  
   // Загрузка даных из СОИ СЗН
   n err
   l +^reg: 0 
   if '$t {
	   q $$NoStart^rgSYS
   }
   j START^rgDATA(Del,JrnOff)
   l -^reg
   q  1 
</csp:method>

Т.ч. странно что у тебя не работает... А Кащей у тебя с кащекеем? Или без него пробуете? Версия какая (w $zv)?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
10.02.2009, 09:12
    #35807253
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Однопользовательская демо
Cache for Windows (Intel/P4) 5.1 (Build 826su) Thu Dec 22 2005 19:27:56 EST
У нас похожая задача - загрузка из dbf. dbf читается как текст. Как раз закачку хочу запускать процессом, т.к. идет очень долго. А в твоем примере l +^reg:0 - это что?
...
Рейтинг: 0 / 0
10.02.2009, 09:23
    #35807262
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
iypОднопользовательская демо
Ну вот наверное и ответ...
iypУ нас похожая задача - загрузка из dbf. dbf читается как текст.
Это так нужно? Именно как текст?
iypА в твоем примере l +^reg:0 - это что?
Это блокирока глобальной переменой с временем ожидания 0...
...
Рейтинг: 0 / 0
10.02.2009, 12:43
    #35807874
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
krvsaiyp
Однопользовательская демо

Ну вот наверное и ответ...

Это предположение или где-то задокументировано? А то, может, я просто что-то не так делаю?
krvsaЭто так нужно? Именно как текст?

Унаследованная система с прямым доступом, реляционный доступ не используется. Пока такой способ закачки данных из dbf в глобалы нас устраивает как проверенный и простой.
...
Рейтинг: 0 / 0
10.02.2009, 12:46
    #35807883
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
iypЭто предположение или где-то задокументировано?
Предположение. Поскольку "однопользовательские" варианты Кащея тоже разные бывают...
iypА то, может, я просто что-то не так делаю?
А что там делать-то!

Код: plaintext
J <имя_программки>

Проще некуда...
...
Рейтинг: 0 / 0
10.02.2009, 12:57
    #35807925
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Ясно. Спасибо!
...
Рейтинг: 0 / 0
10.02.2009, 23:32
    #35809446
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
А, может, кто-нибудь из Интерсистемс объяснит, могут ли быть проблемы с сабжем особенностью однопользовательской версии? Из терминала J отлично работает :-/
...
Рейтинг: 0 / 0
11.02.2009, 04:59
    #35809574
=Dimon=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
iyp,

Проблема именно в однопользовательской версии, так как запуск отдельного task'а требует отдельную лицензию. Если у вас будет не будет подключений к БД (закрыт терминал или студия), то задача выполнится. В терминале все работает из-за того, что это не task, а просто процесс. В 5.х вроде как было 12 процессов на одну лицензию.
...
Рейтинг: 0 / 0
11.02.2009, 11:46
    #35810162
Turk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Как уже было сказано выше, проблема скорее всего кроется в отсутствии свободных лицензий.

Информация по лицензии доступна через класс %SYSTEM.License (см. документацию класса).
Например, можно воспользоваться следующей командой в терминале для просмотра списка лицензий с текущими соединениями к ним:
d ##class(%SYSTEM.License).DumpLocalAll()
(сформируется файл all.dmp, который будет сохранен в директории текущей базы)

К тому же, если не ошибаюсь, в Cache с лицензией без "Web Add-On"-а каждое CSP-подключение ложится на отдельную лицензию.
...
Рейтинг: 0 / 0
11.02.2009, 12:38
    #35810397
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Turkесли не ошибаюсь
Нет, не ошибаетесь. Так оно и есть...
...
Рейтинг: 0 / 0
11.02.2009, 12:47
    #35810442
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
=Dimon= Если у вас будет не будет подключений к БД (закрыт терминал или студия), то задача выполнится. Тоже не выполнятся

Дамп:
Код: plaintext
1.
2.
UserId    Type      Connects  MaxCon    CSPCon    LU        Active    Grace

 127 . 0 . 0 . 1  User       1           1           0           1           30          0 
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
19.01.2011, 09:36
    #37065940
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Подскажите, плиз, можно ли прервать из csp запущенный из этой же csp job-процесс? Если да, то какими средствами?
...
Рейтинг: 0 / 0
19.01.2011, 10:30
    #37066050
neznau
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
iypПодскажите, плиз, можно ли прервать из csp запущенный из этой же csp job-процесс? Если да, то какими средствами?

Я, обычно, использовал для этого флаг в глобале.
Внутри запущенного процесса проверяю этот глобал, если он установлен, то делаю halt внутри процесса, иначе продолжаю работать.
Т.о. можно, при необходимости, установить этот флаг "из csp", и процесс завершится.
Единственное, надо следить, чтобы этот глобал никто не использовал...

Как то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
testjob() public {
   write "type ""set ^stop=1"" for termination"
   while '$g(^stop) {
      write $h,!
      hang  1  ;висим секунду
   }
   halt
}
а в терминале с разницей в несколько секунд введите следующее
Код: plaintext
1.
2.
3.
j testjob^routine() //должно выводится время на экран
и
s ^stop =  1  //процесс завершится и время перестанет выводиться

ps: за синтаксис не ручаюсь, негде проверить, давно не писал на cos
...
Рейтинг: 0 / 0
19.01.2011, 11:45
    #37066284
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
iypможно ли прервать из csp запущенный из этой же csp job-процесс? Если да, то какими средствами?
Можно вообще прервать любой процесс в каше зная номер джоба. Как например это делается в портале управления...
...
Рейтинг: 0 / 0
25.01.2011, 15:31
    #37077730
iyp
iyp
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
job-процесс в csp
Спасибо!
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / job-процесс в csp / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]