zoukankan      html  css  js  c++  java
  • 把MSGF变成SPLF 把SPLF变成MEMBER(源文件)转载

    WRKACTJOB
    这个使用的频率应该是最高的吧,在这里只提一个比较有用的用法:Coding的时候断线异常退出时,再登录之后,用2进入刚才编辑的程序,不是会报错“正在被使用”嘛。除了等一会,一直等到它自动退出之外,还可以用WRKACTJOB + 10,来查找刚才自己的那个进程(显示出来的命令应该是STRSEU),然后把它KILL掉就行了。
    DSPFD
    DSPFD + PF名,查看文件的信息,包括文件的MEMBER数,总记录数,被删除的记录数,CCSID等等。
    DSPFD + LF名,查看逻辑文件的键值,结合DSPDBR,可以找出一个PF文件对应的所有LF文件的键值。
    DSPFD + 库名 + *MBRLIST,可以看到该库之下所有的文件名。
    这个命令可以使用*OUTFILE,将输出变成一个文件。灵活运用,将会是很多自行编写的工具的基础之一。
    DSPFFD
    注意,和上面的命令相差一个“F”,表示查看PF文件的字段信息。比如该PF文件共有多少个字段,每个字段的类型如何。
    与DSPFD相似,DSPFFD也可以使用*OUTFILE,将输出变成一个文件。同理,灵活运用,也是众多自行编写工具的基础。
    MRGSRC
    比较两个程序的差异。按照A、B、A的顺序,MRGSRC时,A程序在上面,B程序在下面,白色的地方,即表示两个程序的差异。
    F13表示接受当前差异,F17表示接受所有差异,F16表示继续查找下一处差异。
    在接受差异时,表示按照B程序,更改A程序。(即B程序不变)
    把SPLF变成MEMBER(源文件)
    必须知道SPLF名,以及生成SPLF的JOB、USR、NUMBER名
    CRTSRCPF FILE(库名/SRCPF) RCDLEN(212) IGCDTA(*YES)
    CHGPF FILE(库名/SRCPF) CCSID(935)
    CRTPF FILE(库名/PF) RCDLEN(200) IGCDTA(*YES)
    CPYSPLF FILE(SPLF名) TOFILE(库名/PF) +
    JOB(NUMBER名 / USER名 / JOB名) SPLNBR(*LAST)
    CPYF FROMFILE(库名/PF) TOFILE(库名/SRCPF) +
    TOMBR(MBR0001) MBROPT(*ADD) FMTOPT(*CVTSRC)
    最后,SRCPF下的MBR001就是SPLF转成的MEMBER
    当然,做为中间转换的临时文件,PF文件会保留SPLF的信息。
    把MSGF变成SPLF
    CHGSYSLIBL LIB(QSYS2989)
    DSPMSGD RANGE(*FIRST *LAST) MSGF(MSGF所在库名/MSGF名) +
    DETAIL(*BASIC) OUTPUT(*PRINT)
    CHGSYSLIBL LIB(QSYS2989) OPTION(*REMOVE)
    这个命令,再结合上面的“把SPLF变成MEMBER”,就可以把MSGF搞成MEMBER,然后再FTP到WINDOWS上,就可以很方便地查找已定义的MSG信息了。
    不过必须要有权限执行CHGSYSLIBL这个命令。
    DSPOBJD
    根据程序名,查找编译时源代码所在的库名、SRCFILE名。
    DETAIL参数用“*SERVICE”,OBJTYPE选项用“*PGM”
    不过好象RPGLE的程序用这个命令查不出来,要用DSPPGM命令。
    DSPPGM
    根据目标
    DSPPGM + RPGLE程序名,参数用“*MODULE”,然后再选择5,就可以看到编译时RPGLE程序时,源代码所在的库名,SRCFILE名。
    DSPDBR
    根据物理文件查其对应的所有逻辑文件
    DSPPGMREF
    查找程序与PF、LF的关系。
    PGM参数用“*ALL”,OUTPUT参数用“*OUTFILE”,OBJTYPE参数用“*ALL”,然后执行,再输入输出文件名与所在库就可以了。然之后,就可以SQL在这个生成的文件中查找(生成的过程可能会有点慢,要耐心)。
    在生成的文件中,字段WHRFNM,表示记录格式名。举例来说,如果物理文件更改过,那么物理文件与逻辑文件就都重新编译过了,所以它们对应的的所有的程序都要重新编译,通常物理文件与逻辑文件使用相同的记录格式名(当然,如果不同就算了)这时就需要按记录格式名来查找。比如SELECT * FROM 刚生成的文件 WHERE WHRFNM = “记录格式名”,找出所有涉及到这个记录格式名的程序。
    在生成的文件中,字段WHFNAM,表示文件名,包括物理文件与逻辑文件。比如说当我们只修改了某个逻辑文件时,那么当然是只需要重新编译与该逻辑文件有关的程序,也就是说只根据文件名来查找就足够了。
    RTVCLSRC
    如果编译CL程序时,不是刻意带*NONE参数,那么一般来说CL程序都可以使用这个命令来反编译。具体用途试试便知
    RGZPFM
    重整文件,即回收已删除记录的空间。不过这个命令我没实际用过。
    WRKMSGQ QSYSOPR
    显示错误信息
    CHGCMGDFT
    更改某些命令的默认参数,如更改CRTPF的WAITRCD参数:
    CHGCMDDFT CMD(QSYS/CRTPF) NEWDFT(‘WAITRCD(*IMMED)’)

     

    DSPDBR + 物理文件名,查看该物理文件对应的逻辑文件

    CLRPFM  清空文件

    wrksplf     显示工作池

    StrDBG  进入调试状态

    EndDBG  终止调试

      

    Go LICPGM      安装程序菜单

    Go ASSIST      辅助菜单

    DspWSUsr       显示用户信息

    Go CMDFile     命令菜单

    Go Major       主菜单

     
    SNDMSG          发送消息
    SNDBRKMSG       发送中断消息
    DSPMSG          显示消息
    WRKMSG          处理消息
    WRKMSGQ         处理消息队列
    CRTMSGQ         创建消息队列
    DLTMSGQ         删除消息队列
    CHGMSGQ         修改消息队列
    CLRMSGQ         清除消息队列
     
    DSPOBJD         显示对象描述符
    WRKOBJ          管理对象
    MOVOBJ          移动对象
    RNMOBJ          重命名对象
    CRTDUPOBJ       创建对象副本
    WRKOBJPDM       进入程序开发对象管理器
    CPYF            复制文件
    CHKOBJ          检查对象
    ALCOBJ          分配对象
    DLCOBJ          收回对象
    WRKOBJLCK       进入锁定对象
     
    CLRLIB          清除库
    CRTLIB          创建库
    CPYLIB          复制库
    DLTLIB          删除库
    DSPLIB          显示库
    DSPLIBD         显示库描述符
    WRKLIB          管理库
    CHGCURLIB       改变当前库
    ADDLIBLE        加入库列表节点
    CHGLIBL         改变库列表
    RMVLIBLE        删除库列表节点
    EDTLIBL         编辑库列表
    CHGSYSLIBL      改变系统库列表
     
    WRKFLR     管理文件夹
    WRKLNK     管理对象链接
     
    与子系统描述相关的命令:
    STRSBS                启动子系统
    ENDSBS                终止子系统
    WRKSBS        管理子系统
    WRKSBSJOB     管理子系统作业
    CHGSBSD       改变子系统描述
    CRTSBSD    创建子系统描述
    DLTSBSD    删除子系统描述
    DSPSBSD    查看子系统描述
    PRTSBSDAUT  打印子系统描述
    WRKSBSD     可对子系统描述进行创建、修改、删除等操作
  • 相关阅读:
    linux socket c : send data when socket close—SIGPIPE, Broken pipe
    (OK) server-client-pthread-c language
    (OK) Linux epoll模型—socket epoll server client chat—pthread
    (OK) pthread—epoll-loops-on-disconnection-of-a-client—server
    (OK) Linux epoll模型—socket epoll server client chat
    (OK) 刘姐实验中的大数据分析—awk—paste—system
    (OK) cBPM-CentOS—wrapped by fastcgi—files—executing commands
    (Not OK) 在CentOS7—编译nginx—for—Android—Makefile
    (Not OK) 在CentOS7—编译nginx—for—Android
    (OK) 在CentOS7—编译OpenSSL 静态库—for—Android
  • 原文地址:https://www.cnblogs.com/lane_yang/p/1977190.html
Copyright © 2011-2022 走看看