首页 > 学技术 > 技术网文 > IBM AS400应用论坛 > 正文

[精彩] AS400的总结,新人发帖,希望有经验的指教


来源 chinaunix.net 酷勤网整理

[u]我的刚刚大学毕业,工作在AS400快大半年了,以下这些是我对这大半年来的总结,希望大家给点意见。
我长话短说[/u]
[font=黑体]1.一些命令[/font]
[color=Red]CRT*    [/color]用来寻找所有Create 开头的命令
[color=Red]STR*    [/color]用来寻找所有Start 开头的命令
[color=Red]SND*   [/color]用来寻找所有Send 开头的命令
[color=Red]GRT*    [/color]用来寻找所有Grant 开头的命令
上面讲了一点 就是要用*这个通配符(还有就是要学会使用F1和F4,个人认为这个是AS400的特色)


[font=黑体]2.实用小工具[/font]
Chinunix上面有个DL400.exe 的小程序可以用来下载Source

对于AS400上面的教程制作 我在论坛当中看到过有这个命令
STRCPYSCN
不过我还要推荐一个屏幕录像工具[color=Red]Hyper Cam[/color]这个工具也比较实用。

AS400的模拟器(IBM个人通信) 这个东西里面的宏很好用可以帮助你作一些重复性的工作 比如自动等如
例子:
[color=Blue]
[PCOMM SCRIPT HEADER]
LANGUAGE=VBSCRIPT
DESCRIPTION=
[PCOMM SCRIPT SOURCE]
OPTION EXPLICIT
autECLSession.SetConnectionByName(ThisSessionName)

REM This line calls the macro subroutine
subSub1_

sub subSub1_()
   autECLSession.autECLOIA.WaitForAppAvailable
   
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "USERNAME"
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "[fldext]"
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "USERPASSWORD"
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "[fldext]"
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "[enter]"
   
   autECLSession.autECLPS.WaitForAttrib 1,1,"20","3c",3,1000

   autECLSession.autECLPS.Wait 1000 

   autECLSession.autECLOIA.WaitForAppAvailable
   
   autECLSession.autECLOIA.WaitForInputReady
   autECLSession.autECLPS.SendKeys "[enter]"
end sub
[/color]
上面这段代码复制到文本文件中 然后修改后缀名.txt为.mac                              
把延时设置为1000差不多了 默认为10000,有时候这个设置会很有用
上面是在我自己电脑上面设置通过测试 不过在你们的电脑上面可能需要微调

关于软件自动化 我还要推荐一个小软件叫做AutoHotKey
这个软件可以在Windows 下面编写脚本帮助我们在AS400上面做一些自动化
比如我们通过IBM个人通信对AS400上面的Source进行Promote(STRACMS)
描述:我们需要对成千上万个Source进行Promote,用人手工去做比较慢,所以考虑自动化
(另外做个Excel 表格作为文件列表,如果想检验完整性,可以用Excel 里面的公式来check A列和B列
A列是文件列表,列是AS400上面复制来的列表,较他们时候正确一致,同的话就手动加工下)
[color=Blue]
WinWait, Program Manager, 
IfWinNotActive, Program Manager, , WinActivate, Program Manager, 
WinWaitActive, Program Manager, 
Send, {ALTDOWN}{TAB}{TAB}{ALTUP}
WinWait, Session A - [24 x 80], 
IfWinNotActive, Session A - [24 x 80], , WinActivate, Session A - [24 x 80], 
WinWaitActive, Session A - [24 x 80], 
Send, 7{RIGHT}{RIGHT}{RIGHT}{SHIFTDOWN}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{SHIFTUP}{CTRLDOWN}c{CTRLUP}{ALTDOWN}{TAB}{ALTUP}
WinWait, Microsoft Excel - promote 1, 
IfWinNotActive, Microsoft Excel - promote 1, , WinActivate, Microsoft Excel - promote 1, 
WinWaitActive, Microsoft Excel - promote 1, 
Send, {RIGHT}{CTRLDOWN}v{CTRLUP}{DOWN}{LEFT}{CTRLDOWN}c{CTRLUP}{ALTDOWN}{TAB}{ALTUP}
WinWait, Session A - [24 x 80], 
IfWinNotActive, Session A - [24 x 80], , WinActivate, Session A - [24 x 80], 
WinWaitActive, Session A - [24 x 80], 
Send, {UP}{SHIFTDOWN}{TAB}{SHIFTUP}{CTRLDOWN}v{CTRLUP}{ENTER}
[/color]
上面这段是Promote一个Source 你们可以对这个进行下加工写一个Loop循环再加上输入输出接口,让USER进行输入。

还有一个比较强大的自动测试工具,就是Winrunner,人家用这个来测试基于OOP的程序的,不过我们也可以用这个来实现AS400的自动测试,把IBM个人通信当作一个程序,对里面的人机接口进行自动化的描述,这方面本人还在研究中

用FTP命令的时候如果遇到Replace的话,那么要写单括号
[color=Blue]
FTP://xx.xx.xx.xx
Username   Password
CD xxxx
LCD xxxxx
BIN
MGET OBJECT.MEMBER (REPLACE
[/color]
这个可以传送PF-Database 和 Source 其他的不能传 希望指教。

这个名利可以帮助你在不同的AS400主机之间传送Spool FIle
[color=Blue]
SNDTCPSPLF RMTSYS(*INTNETADR) PRTQ(OUTQ) FILE(XXXXXXXXXX) JOB(XXXXXX/XXXXXXXXXX/XXXXXXXXXX) SPLNBR(XXXXXXXXXXX) JOBSYSNAME(XXXXXXXX) DESTTYP(*AS400) TRANSFORM(*NO) INTNETADR('XXX.XXX.XXX.XXX') 
[/color]

[font=黑体]以上是我这些时间来的总结,如果有不正确的地方,希望大家帮我指正,我希望能和大家一起交流互相提高。[/font]

[ 本帖最后由 audiotech 于 2007-1-18 23:34 编辑 ]



 fairyboy 回复于:2007-01-18 15:25:00

呵呵,不错哈


 kylekai 回复于:2007-01-20 19:22:52

我也刚入行半年啊~~~~公司的服务器是830~~~支持一下~~~


 handmatrix 回复于:2007-01-20 20:20:42

好贴, 支持!




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=887874
转载请注明作者名及原文出处



收藏本页到: