AS400遇到的一些问题和解决办法
1.没有权限进入distribution directory
wrklnk 'QDLS\'
>User not enrolled in system distribution directory.
Selection or command
===> ADDDIRE USRID(USERID SYSNAME) USRD(DESCRIPTION) USER(USRPROFILE)
F3=Exit F4=Prompt F9=Retrieve F12=Cancel
User ID and address already exists in the system distribution directory.
创建distribution directory
CRTDIR DIR('/qdls/TEST/BACKUP')
没有权限进入某个distribution directory
Unfortunately (well as far as I know anyway), there is another place to look¡ the iSeries NetServer disabled UserIDs. The images below explain how to access a list of User Profiles that the system has disabled from accessing system resources over TCP/IP using
iSeries Navigator.
1).Connect to your server through iSeries Navigator
2).Expand Network
3).Expand Servers
4).Select TCP/IP
5).Right-Click iSeries NetServer
6).Select the UserIDs that you would like to re-enable
7).Click the [Enable User ID] button
unable to map a drive to the IFS
WIN7有可能是Policy的问题
Local Security Policy -> Security Settings -> Local Policies -> Security Options
Network security:LAN Manager authentication level - Send LM & NTLM - use NTLMv2 session security if negotiated
Microsoft network server:Digitally sign communicatioins(always) - Disabled
2.SQL太长,放文本里执行
RUNSQLSTM SRCFILE(SRCPF/TESTLIB) SRCMBR(TESTSQL) NAMING(*SQL)
3.用jdbc连接AS400的时候会需要用到database name
WRKRDBDIRE
4.查看当前AS400的版本
DSPSFWRSC
(Display Software Resources)
按F11看 5722999 的 Release 版本 VXRXM0 LXX
5.使用CPYFRMIMPF upload数据到iSeries的时候如果是CSV,字段包含:使得导入后数据会错误,可以使用TXT文本
===> CPYFRMIMPF FROMSTMF("/qdls/TEST.CSV") TOFILE(TESTLIB/TESTPF) MBROPT(*ADD) RCDDLM(*CRLF) STRDLM(*NONE) FLDDLM(',')
===> CPYFRMIMPF FROMSTMF('QDLS/TEST.txt') TOFILE(TESTLIB/TESTPF) MBROPT(*ADD) RCDDLM(*CRLF) STRDLM(*NONE) FLDDLM(*TAB) RPLNULL
VAL(*FLDDFT)
6.DUMP的使用
free格式是
dump 'test1';
标准格式是
c 'test1' dump
要确保H上面有DEBUG参数才生效
H DEBUG
7.全部用户的spool file
WRKSPLF SELECT(*all)
全部用户的joblog
WRKSPLF SELECT(*ALL *ALL *ALL *ALL *ALL QPJOBLOG)
某个用户
WRKSPLF SELECT(USER)
某个用户的某个batch job
WRKSPLF SELECT(USER *ALL *ALL USERJOB)
8.查看LF的source位置
DSPOBJD
9.FTP
ftp 'ipaddress'
>BIN
>NAMEFMT 0
>quo site namefmt 1
>GET TESTSRCPF/TESTLIB TESTSRCPF/TESTLIB2 (REPLACE
With FTP you can use the IFS structure in the FTP script.
For example:
Quote site namefmt 1
Cd /tmp
Lcd /localdir
Put something.
10.查看MSGF里面的全部Message
DSPMSGD RANGE(*ALL) MSGF(TESTLIB/MSGF) DETAIL(*BASIC) OUTPUT(*PRINT)
放在PF中
DSPMSGD RANGE(*ALL) MSGF(HR2000/HRMSG) DETAIL(*BASIC) OUTPUT(*PRINT)
CRTPF FILE(TESTLIB/MSGPF) RCDLEN(200)
CPYSPLF FILE(QPMSGD) TOFILE(TESTLIB/MSGPF) SPLNBR(1)
11.Debug submit出来的job
1). 以HOLD(*YES)参数提交JOB 到QBATCH JOB 中,让JOB 暂时挂起;
2). 使用WRKSBMJOB 查看所提交的JOB 的以下3 个参数值:
*Job id
*User Name
*Job Number
3). 执行STRSRVJOB,填入第2 步骤获得的3 个参数进行QBATCH JOB 服务过程;(如果在同一个作业中进行,就不用填这3个参数了,道理和CPYSPLF一样,我自己的理解)
4). 执行STRDBG 开始DEBUG;
5). 利用F21 键切换到命令行,在命令行执行WRKSBMJOB,使用6=Release 释放挂起的
第1 步骤提交的JOB,然后系统允许你按F10 输入DEBUG 命令(注意:不要键入执行,
否则在设立断点之前键入执行,程序就会运行,因而无法进行debug 断点设置);
6). 在OS/400 命令行窗口;执行DSPMODSRC 后,可通过F6 设置断点;然后按F3 退出,
再按F12 退出命令行;
7). 键入执行释放挂起的JOB;程序将在断点中停留;可以使用交互式DEBUG 使用DEBUG
命令进行处理
8). 一旦程序或者JOB 结束,使用ENDDBG 和ENDSRVJOB 结束操作。
HLDJOBQ JOBQ(QGPL/QBATCH)
submit job
STRSRVJOB JOB(012345/USER/USERJOB)
STRDBG PGM(TESTPGM) UPDPROD(*YES)
F21=Command entry
RLSJOBQ JOBQ(QGPL/QBATCH)
F10
dspmodsrc
SET BREAKPOINT...
F3
F12
enter
debug...
ENDDBG
ENDSRVJOB
12.RPG语言
================
Z-ADD :数值型的附值语句(Z-ADD A B相当于 B=A)
MOVEL :移动数据语句 MOVEL A B 是把A的值从左边开始送到B中。
MOVE: 功能于MOVEL类似,区别在于它是从右边开始传送。
MOVEL (P):MOVEL和MOVE的操作在把短的传到长的中时,并不会覆盖其余的部分,因此,
加一个扩展功能用的P来表明操作要覆盖其余的部分。
SUB:数值类型的减操作
ADD:加操作
MULT:乘操作
DIV:除操作
MVR:除之后的取余操作
BEGSR:子过程开始
ENDSR:子过程结束
EXSR: 调用子过程
EXFMT:画面记录的显示操作命令
WRITE:写文件记录的操作
UPDAT:更新文件当前记录
DELET:删除文件当前记录
READ:读文件操作(顺序读)
READE:按键值顺序读文件的下一条
READP:向前读文件的一条记录
REDPE:按键值向前读文件的一条记录
CHAIN:随机检索与键值相同的记录
SETLL:文件指针定位操作,所停的位置在小于等于指定键值的前面。
SETGT:文件指针定位操作,所停的位置在等于大于指定键值的后面。
DOWXX (XX=GT, LT, EQ, LE, GE):当循环(XX=大于,小于,等于,小于等于,大于等于)
DOUXX (XX=GT, LT, EQ, LE, GE):直到循环(XX=大于,小于,等于,小于等于,大于等于)
ITER:跳出本次循环(DO),进行下一次循环
LEAVE:结束整个循环,进行循环下面的语句
IFXX (XX=GT, LT, EQ, LE, GE):条件判断(XX=大于,小于,等于,小于等于,大于等于)
SELEC:分支条件开始语句
WHXX (XX=GT, LT, EQ, LE, GE):各个分支的条件判断语句(XX=大于,小于,等于,小于等 于,大于等于)
OTHER:SELECT部分中所有WHEN条件均不成立时执行的部分(可以省略)
ENDXX (IF, DO, SL):循环和分支结构的结束标志语句。
SETON/OFF:将指示器的值设置为 1或 0
PLIST:参数列表名称的定义
PARM:各个参数的定义
KLIST:键值列表名称的定义
KFLD:键值中的各个键域的定义。
CLEAR:清除某个字段或数据域的值。
TIME:取得系统当前的日期或时间
================
ITER:跳出本次循环(DO),进行下一次循环
LEAVE:结束整个循环,进行循环下面的语句
================
READ:读文件操作(顺序读)
READE:按键值顺序读文件的下一条
READP:向前读文件的一条记录
REDPE:按键值向前读文件的一条记录
CHAIN:随机检索与键值相同的记录
SETLL:文件指针定位操作,所停的位置在小于等于指定键值的前面。
SETGT:文件指针定位操作,所停的位置在等于大于指定键值的后面。
================
WRKJOBQ QGPL/TESTJOBQ
会发现状态是RLS,正常是RLS/SBS,说明这个JOBQ没有attach去SBS
dspsbsd sbsd(qbatch)
6. Job queue entries
可以show出这个subsystem下attach的所有jobq
ADDJOBQE SBSD(QBATCH) JOBQ(QGPL/TESTJOBQ) SEQNBR(17)
这样这个JOBQ挂起的JOB都继续进行,跑完然后是OUTQ status
Adding A Job Queue To A Batch Subsystem
http://www.itjungle.com/fhg/fhg051513-story03.html
Add Job Queue Entry (ADDJOBQE)
http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/cl/addjobqe.htm
14.Submit Job的时候报错No authority to message queue
wrkobj username
发现同时在QSYS和QUSRSYS上有同名的*MSGQ,当submit job的时候优先用QSYS上的,但自己的profile却没有权限
15.do a SQL SELECT on a table that has more than one member and I want do specify the name of the member.
create alias mylib/myalias for testlib/testfile(testmem)
select * from mylib/myalias
drop alias mylib/myalias
Creating and using ALIAS names
http://www.ibm.com/support/knowledgecenter/ssw_i5_54/sqlp/rbafycreatingalias.htm
16.WRKJOBSCDE - Work with Job Schedule Entries
AS400遇到的一些问题和解决办法的更多相关文章
- 懒加载session 无法打开 no session or session was closed 解决办法(完美解决)
首先说明一下,hibernate的延迟加载特性(lazy).所谓的延迟加载就是当真正需要查询数据时才执行数据加载操作.因为hibernate当中支持实体对象,外键会与实体对象关联起来.如 ...
- 使用JSONObject.fromObject的时候出现“There is a cycle in the hierarchy”异常 的解决办法
在使用JSONObject.fromObject的时候,出现“There is a cycle in the hierarchy”异常. 意思是出现了死循环,也就是Model之间有循环包含关系: ...
- logstash file输入,无输出原因与解决办法
1.现象 很多同学在用logstash input 为file的时候,经常会出现如下问题:配置文件无误,logstash有时一直停留在等待输入的界面 2.解释 logstash作为日志分析的管道,在实 ...
- Android权限管理之Android 6.0运行时权限及解决办法
前言: 今天还是围绕着最近面试的一个热门话题Android 6.0权限适配来总结学习,其实Android 6.0权限适配我们公司是在今年5月份才开始做,算是比较晚的吧,不过现在Android 6.0以 ...
- Android性能优化之利用LeakCanary检测内存泄漏及解决办法
前言: 最近公司C轮融资成功了,移动团队准备扩大一下,需要招聘Android开发工程师,陆陆续续面试了几位Android应聘者,面试过程中聊到性能优化中如何避免内存泄漏问题时,很少有人全面的回答上来. ...
- UWP开发之Mvvmlight实践六:MissingMetadataException解决办法(.Net Native下Default.rd.xml配置问题)
最近完成一款UWP应用,在手机端测试发布版(Release)的时候应用莫名奇妙的强行关闭,而同样的应用包在PC端一点问题都没有,而且Debug版在两个平台都没有问题,唯独手机的Release版有问题. ...
- 当web.config文件放置在共享目录下(UNC),启动IIS会提示有错误信息500.19,伴随有错误代码0x80070003和错误代码0x80070005的解决办法
最近遇到一个很有意思的使用环境,操作人员将所有的网站应用内容投放到共享存储里面,并且使用微软的SMB协议将其以CIFS的方式共享出来,使用Windows Server 2008 R2的IIS将其连接起 ...
- Nested Loops join时显示no join predicate原因分析以及解决办法
本文出处:http://www.cnblogs.com/wy123/p/6238844.html 最近遇到一个存储过程在某些特殊的情况下,效率极其低效, 至于底下到什么程度我现在都没有一个确切的数据, ...
- 调用微信退款接口或发红包接口时出现System.Security.Cryptography.CryptographicException: 出现了内部错误 解决办法
我总结了一下出现证书无法加载的原因有以下三个 1.证书密码不正确,微信证书密码就是商户号 解决办法:请检查证书密码是不是和商户号一致 2.IIS设置错误,未加载用户配置文件 解决办法:找到网站使用的应 ...
随机推荐
- 虚拟环境搭建Django项目
下载虚拟环境包 pip install virtualenv 创建虚拟环境 virtualenv env 进入env文件夹 cd env 进入Scripts文件夹 cd Scripts 启动虚拟环 ...
- 编译内核提示mkimage command not found – U-Boot images will not be built
转載與:http://www.mr-wu.cn/u-boot-tools-binary-package-in-ubuntu/ ubuntu 编译linux kernel时提示: “mkimage” ...
- sqlserver 转化函数
--查询系统当前时间select GETDATE() as date;------------------------- 0-14 ------------------select CONVERT(V ...
- vue的mescroll搜索运用以及各种填坑处理
父组件处理: <template> <div class="wrap"> <!-- 搜索框 --> <div class="se ...
- S5PV210 timer
TCFG0, R/W, Address = 0xE250_0000 Timer Input Clock Frequency = PCLK / ( {prescaler value + 1} ) / { ...
- IDEA 中常用快捷键
1.搜索文件(整个项目) ctrl+shift+n 2.最近打开文件 ctrl+e 3.实现接口中方法 ctrl+i 4.跳到上一行 ctrl+alt+enter 5.删除当前行 ctrl+y 6.重 ...
- mysql(函数,存储过程,事务,索引)
函数 MySQL中提供了许多内置函数: 内置函数 一.数学函数 ROUND(x,y) 返回参数x的四舍五入的有y位小数的值 RAND() 返回0到1内的随机值,可以通过提供一个参数(种子)使RAND( ...
- css详解2
1.伪类选择器 1.1.a标签的爱恨准则 LoVe HAte .一个冒号连接 1.2.a标签的示例 给a标签设置个颜色,生效了 <html lang="en"> < ...
- 18.父组件给子组件传值&方法
1.父组件给子组件传值 2.父组件把方法传递给子组件
- Java基本知识点o(1), o(n), o(logn), o(nlogn)的了解
在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义: 这是算法的时空复杂度的表示.不仅仅用于表示时间复杂 ...