AS/400上发送短信命令的简单封装[clp]

时间:2016-10-28 ┊ 阅读:6,103 次 ┊ 标签: 编程 , 命令 , 短信

机器上一直用一个很复杂的命令来发送短信到手机上,真心不容易记。近来有空就自己改写了一翻重新封装起来,很方便的用上了。

现在只需要下面一句简单的命令就可以发送短信到我们手机上了。哈哈。原谅我用xxx替换了隐私信息。

SNDSMS SENDTO(xxxxxx) MESSAGE('good test pager by Kevin.')

sndsms.png

CLP的源码:

PGM        PARM(&SENDTO &MESSAGE)                        
DCL        VAR(&SENDTO)  TYPE(*CHAR) LEN(17)             
DCL        VAR(&MESSAGE) TYPE(*CHAR) LEN(200)            
DCL        VAR(&MSGID)   TYPE(*CHAR) LEN(7)              
XXXPROD/XXXXXMSG SENDTO(&SENDTO) MESSAGE(&MESSAGE)       
MONMSG     MSGID(HMC0000) EXEC(DO)                       
RCVMSG     MSGID(&MSGID)                                 
IF         COND(&MSGID *EQ 'xxxxxxx') THEN(DO)           
SNDPGMMSG  MSG('Device' |> &SENDTO |> 'not found, short +
             message not sent.')                         
GOTO       CMDLBL(END)                                   
ENDDO                                                    
ELSE DO                                                  
SNDPGMMSG  MSG('Error encountered, the code is' |> +     
             &MSGID || ', please check it in Xxxxxxx.')  
GOTO       CMDLBL(END)                                   
ENDDO                                                    
ENDDO                                                    
RCVMSG     MSGTYPE(*COMP) MSGID(&MSGID)                  
GOTO       CMDLBL(OK)                                 
                                                      
OK:                                                   
SNDPGMMSG  MSG('Send short message to' |> &SENDTO |> +
             'success!') MSGTYPE(*COMP)               
                                                      
END:                                                  
ENDPGM

CMD的源码:

CMD        PROMPT('SEND SHORT MESSAGE')                 
                                                        
PARM       KWD(SENDTO) TYPE(*CHAR) LEN(17) +            
             DFT(AVPRODNITE) PROMPT('TO MESSAGE DEVICE')
                                                        
PARM       KWD(MESSAGE) TYPE(*CHAR) LEN(200) +          
             PROMPT('MESSAGE TEXT')                     

另外我还给命令加了帮助的提示文档:
sndsms_help.png
Member Type Text
SNDSMS UIM Send Short Message
源码太长就不在这添加了,以后有空讲一下命令的帮助面板实现方法。

文章评论

添加新评论

温馨提醒:如果您是第一次在本站留言,需要审核后才能显示哦!

相关文章

ValueError: Error getting directory

ValueError: Error getting directory

ssl证书过期了 明明自动renew的 然后看log已经好久没更新成功了 查半天是当前server不信任远程连接 只能自己改代码 报错: 21-12-17 13:01:11 Generate CSR...amkevin.csr amkevin.csr generated. /home/www...
阅读全文>>
popup.js怎么和content.js通信?[JQuery]

popup.js怎么和content.js通信?[JQuery]

这两天为了实现一个谷歌浏览器插件功能,研究了半天怎么让插件来改特定网页里的特定字段的值,而这个值又来自popup的网页预先设定,下一步实现动态加载,可以让更多组实现便利。 目的很简单,我们有一个list,需要填到网页的某个字段,当然是好几个,这些值是设定好的,网页系统我们没法改,input想...
阅读全文>>
Office 2016 Client Software License Management Tool

Office 2016 Client Software License Management Tool

Office 2016 Client Software License Management Tool Usage cscript ospp.vbs /Option:Value ComputerName User Password ComputerName: Name of remote c...
阅读全文>>
office2016 产品已激活 却同时显示需要激活(解决办法)

office2016 产品已激活 却同时显示需要激活(解决办法)

直接上命令吧: c:\Program Files\Microsoft Office\Office16>cscript.exe ospp.vbs /dstatus Microsoft (R) Windows Script Host Version 5.812 版权所有(C) Microso...
阅读全文>>
如何绕过登录抓取js动态加载网页数据[Python]

如何绕过登录抓取js动态加载网页数据[Python]

今天经历了一翻折腾,把一个需要登录网站并js动态加载的数据一一给抓下来了。 首先,登录时有cookie,我们需要把cookie保存下来,用urllib2构建request时加入header信息,这时还多了一点,虚构了浏览器信息,让服务器以为是正常的浏览器发起的请求,这样可以绕过简单的反爬虫策略...
阅读全文>>