Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZZM Command - как заменить в Cache' ??? / 16 сообщений из 16, страница 1 из 1
07.04.2006, 12:01
    #33651567
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Господа, здравствуйте !!!

На MSM-e , когда-то при переходе с DSM
вместо команды ZM (ZMARKER) была создана
пользовательская команда ZZM .
Как ее можно воспроизвести на Cache' ???
На MSM она выглядит так:

Код: plaintext
1.
2.
3.
4.
5.
%ZZCMNDS
%ZZCMNDS ;; ZM Command
M  N PAR 
   S PAR=$ 1 
   W /CUP($P(PAR,",", 2 )+ 1 ,$P(PAR,",", 1 )+ 1 ) Q
   Q	

Спасибо.
...
Рейтинг: 0 / 0
07.04.2006, 12:44
    #33651783
Maksim UM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Попробуйте посмотреть в документации "MSM Language Compatibility Mode".
Там есть описание создания переменных, команд...
...
Рейтинг: 0 / 0
07.04.2006, 13:20
    #33651952
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Там очень скудная информация, а тем более про специальных
внутренних перемен типа от $0 до $9 ....
Чем их заменить в Cache' непонятно и есть ли вообще замена ?
...
Рейтинг: 0 / 0
07.04.2006, 14:13
    #33652173
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
ValeriuТам очень скудная информация, а тем более про специальных
внутренних перемен типа от $0 до $9 ....
Чем их заменить в Cache' непонятно и есть ли вообще замена ?
$1, $2 - это взятие параметров по номеру. В каше такого нет, в z команды они передаются как обычные параметры.
Код: plaintext
1.
2.
3.
M(PAR)
   W /CUP($P(PAR,",", 2 )+ 1 ,$P(PAR,",", 1 )+ 1 ) Q
   Q
...
Рейтинг: 0 / 0
07.04.2006, 14:14
    #33652176
Maksim UM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Добавлю, что код от "ну я"
нужно просто записать в программу %ZLANGC00
в разделе %SYS
...
Рейтинг: 0 / 0
07.04.2006, 15:15
    #33652445
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Согласен, например:
USER>ZSS - O' Key !!!
USER>ZZM 24,24 - не хочет

Что я делаю не так ?


Код: plaintext
1.
2.
3.
4.
5.
ZZM(PAR)
   W /CUP($P(PAR,",", 2 )+ 1 ,$P(PAR,",", 1 )+ 1 )
   Q
ZSS ; do a System Status
   d ^%SS
   q
...
Рейтинг: 0 / 0
07.04.2006, 16:02
    #33652647
Maksim UM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
а если попробовать?
Код: plaintext
1.
ZZM "24,24"
...
Рейтинг: 0 / 0
07.04.2006, 16:24
    #33652758
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Работает.
Но возникает другой вопрос.
Везде в программах ZZM XX,XX !!!
Заменить все в один проход на ZZM "XX,XX" (%RCHANGE например)
не получится - опять надо что-то придумать нестандартно...
...
Рейтинг: 0 / 0
07.04.2006, 17:31
    #33653019
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Если надо два параметра - то сделайте два.
Код: plaintext
1.
2.
3.
ZZM(P1,P2)
   W /CUP($g(P2, 0 )+ 1 ,$g(P1, 0 )+ 1 ) ; или в нужном порядке
   Q
...
Рейтинг: 0 / 0
07.04.2006, 17:44
    #33653042
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
ну яЕсли надо два параметра - то сделайте два.
Виноват, это для z функций. Для z команд не проходит.
...
Рейтинг: 0 / 0
07.04.2006, 17:50
    #33653061
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Полностью согласен !!!
...
Рейтинг: 0 / 0
07.04.2006, 17:58
    #33653075
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Но не все потеряно. Поскольку команда zzm X,Y синтаксически эквивалентна двум командам zzm X zzm Y то используем этот факт:
Код: plaintext
1.
2.
3.
4.
ZZM(P)
   i '$g(%zzm) s %zzm=P q
   w /CUP(%zzm+ 1 ,P+ 1 )
   k %zzm
   q
В переменной %zzm запоминаем аргумент первого прохождения zzm. Но тогда команде придется закладываться на то что она будет вызываться всегда дважды.
...
Рейтинг: 0 / 0
07.04.2006, 21:20
    #33653400
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Спасибо, действительно не ВСЕ потеряно !!!
Заработала:

This Command is good !!
USER>w /ED(2) ZZM 12,12 w "This Command is good !!"
...
Рейтинг: 0 / 0
10.04.2006, 18:02
    #33656737
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Проблема:
USER>w /ED(2) ZZM 0,0 w "This Command is Bad !!!"

В этом случае не удаляется переменная %zzm
Можно как-то решить ?
Спасибо
...
Рейтинг: 0 / 0
10.04.2006, 18:04
    #33656744
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Сделать замену?
$g(%zzm) -> $d(%zzm)
...
Рейтинг: 0 / 0
10.04.2006, 22:16
    #33657089
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ZZM Command - как заменить в Cache' ???
Да, согласен...
Завтра попробую на работе для всех роутин
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / ZZM Command - как заменить в Cache' ??? / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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