首页 AS400中文培训QUERY-7

AS400中文培训QUERY-7

举报
开通vip

AS400中文培训QUERY-7AS400中文培训QUERY-7 第三部分 关于查询的高级信息 第十七章 为程序员提供的附加信息 本章提供的是程序员感兴趣的附加信息。 3.1.1 有不同记录格式的文件 可以使用有多个记录格式的文件,一次只使用一种记录格式。如果正在设计的应用程序要同时处理在同一文件中的不同记录格式,那么就应考虑使用RPG/400或COBOL/400*程序语言。 例如,顾客名字为一个记录格式,而每个顾客所拥有的现金数为同一文件的另一个记录格式,那么一个简单查询是无法把所有现金数超过$500的顾客名字打印出来的。可见若查询...

AS400中文培训QUERY-7
AS400中文培训QUERY-7 第三部分 关于查询的高级信息 第十七章 为程序员提供的附加信息 本章提供的是程序员感兴趣的附加信息。 3.1.1 有不同 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 格式的文件 可以使用有多个记录格式的文件,一次只使用一种记录格式。如果正在 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的应用程序要同时处理在同一文件中的不同记录格式,那么就应考虑使用RPG/400或COBOL/400*程序语言。 例如,顾客名字为一个记录格式,而每个顾客所拥有的现金数为同一文件的另一个记录格式,那么一个简单查询是无法把所有现金数超过$500的顾客名字打印出来的。可见若查询要从两个记录格式中选择记录,那么选择顾客名字和拥有的现金数必须存在于一个记录格式中(也就是说,物理磁盘记录必须同时反映顾客名字字段和拥有现金额字段。) 注:这可以用一个简单的查询由文件自身连接来完成,但记录的格式必须都包含一个公共字段。有关连接文件的详细内容,请参看2.2.6。 3.1.2 文件共享的考虑 其它应用程序可以在读和更新文件的同时生成使用这个文件做报表的查询,查询定义两个或多个查询定义能够在同时引用同一文件。 3.1.3 替换数据库文件 如果使用OVRDBF命令替换一个数据库文件,那么查询执行结果就无法预测。查询虽然允许使用这个命令,但由于选择替换的记录格式和文件成员可能不适合新的文件,因此会出现问题。 3.1.4 定义结果字段时DBCS的考虑 如果对DBCS_Only和DBCS_either 字段使用了SUBSTR函数,结果字段是SBCS字段。对一个DBCS图型字段使用了SUBSTR函数,结果字段就是一个DBCS的图型字段。若对DBCS_open字段使用SUBSTR函数,结果字段也是一个DBCS_open字段。 如果连结DBCS-only字段或常量(或二者),那么结果字段就是一个变长的DBCS-only字段。 如果连结的是DBCS_only字段,那么结果字段就是一个变长的DBCS-open字段。 如果把一个DBCS_only、DBCS_open、DBCS_either字段与SBCS字符字段或常量连接,结果字段就是一个变长度DBCS_open字段。 如果在连结操作中使用DBCS图形字段或常量,那么所有的字段及常量均必须为DBCS图形字段。 如果在连接操作中使用USC2图形字段,所有字段必须是UCS2图形字。 3.1.5 连接文件 对于连接文件(连接类型): 第一种类型的连接是与查询/36(在系统/36上)相同; 第二种类型的连接是选择所有主文件中与次文件记录有匹配的记录(选择匹配 的); 第三种类型的连接是仅选择主文件中在次文件不匹配的那些记录(选择其余的)。 有关每种类型的连接更详细的描述和 例子 48个音标大全附带例子子程序调用编程序例子方差分析的例子空间拓扑关系例子方差不存在的例子 ,可查阅2.2.6。 3.1.5.1 使用*ALL连接 应该谨慎地使用*ALL连接,因为它可返回大量记录。如果用一个记录缓冲文件建立有字段扩展的数据库文件或在被连接的文件中有少量记录,且想把所有的格式合并在一起,可以用*ALL命令来做连接。 3.1.6 使用非分类字段做报表中断 使用的分类字段可能在记录中无意义,因此想用非分类字段做中断字段。例如,含有用户部分姓名的邮件标号可以用来中断,而一个特别分配的(唯一的)顾客ID则被用来分类。由于顾客名是中断字段,因此可将其插入到中断正文中或放在一个仅汇总数据库文件中。 3.1.7 结果字段的长度及小数位 在查询生成的报表中有结果字段时,查询可以决定记录中结果字段的表达式长度和小数位,这些值是大多数用户需要的。下面介绍用户应在什么时候,采用何种方法来决定它的长度和小数位置。有关内容参看2.8.1.3和2.3.7。 3.1.7.1 分配表达式长度和小数位方法 在一定的条件下,查询为结果字段决定的长度应比实际需要的大一些。例如,对结果字段RESULT10: 结果字段 值和操作数 打印布局 RESULT10 9 + 9 + 9 + 9 + 9 99999 查询分配的长度是6,但由于RESULT10的结果是45,仅需2位长度,因此对这个结果字段可在‘定义结果字段’长度显示中的Len列写2,在Dec列写0。 同样,对于结果字段RESULT11: 结果字段 值和操作数 打印布局 RESULT11 N1 + N2 + N3 + N5 + N5 99999 如果字段N1到N5,每个字段长为1,那么查询分配给RESUL11的长度为5,但实际只需2就够用了。 在计算中会遇到许多长字段,可以用如下方法将结果处理的更好一些:把表达式分成几部分,分别计算每一部分的值,然后把这些结果字段放在一个表达式中来计算想要结果字段。也可 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 中间结果字段的长度及小数位来减少最终结果字段的长度。 如: X12 = (1.2998 - P - Q)/((R + S) * (T - U)) + 6 可以分成下面三步做: X12PART1 = 1.2998 - P - Q X12PART2 = (R + S) * (T - U) X12 = X12PART1/X12PART2 + 6 若用户知道X12PART1的取值范围在0至1.2998之间,那用户就可规定X12PART1长度为5,小数位为4。这样就减小了X12的长度。 3.1.7.2 内部数值计算使用的长度及小数位 下面的公式定义了查询用于内部数值结果字段小数计算的最大长度及小数位。最大长度和小数位并不一定要与查询的表达式长度和小数位一致。我们用符号P和d分别代表第一个操作数的长度和小数位,用符号P(1)和d(1)代表第二个操作数的长度和小数位。 加法和减法中结果字段的最大长度为: min(31,max(p-d,p(1)-d(1))+max(d,d(1))+1). 其最大小数位为: max(d,d(1)). 乘法中结果字段最大长度为: min(31,p+p(1)) 其最大小数位为: min(31,d+d(1)). 除法中结果字段最大长度为: 31 其最大小数位为: 31-p+d-d(1). 3.1.7.3 增加结果字段十进精度的例子 图17,1有一个结果字段,它的最大精度为长31,2位小数,十进精度由公式31,29,9,9得来。 * * * Define Result Fields * * * * Type definitions using field names or constants and operators, press Enter. * * Operators: +, -, *, /, SUBSTR, ||, DATE... * * * * Field Expression Column Heading Len Dec * * RESULTA___ PRN299A/PRN299B__________________ ____________________ __ __ * * _________________________________ ____________________ * * _________________________________ ____________________ * * * * __________ _________________________________ ____________________ __ __ * * _________________________________ ____________________ * * _________________________________ ____________________ * * * * __________ _________________________________ ____________________ __ __ * * _________________________________ ____________________ * * _________________________________ ____________________ * * Bottom * * _______________________________________________________________________________ * * Field Text Len Dec * * PRN299A Field with precision of 29,9 29 9 * * PRN299B Field with precision of 29,9 29 9 * * Bottom * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * 图17-1 使用缺省的十进精度 注:RESULTA的表达式长度为31,9,可按F13键看到。 为了提高结果字段(RESULTA)中十进精度: 1.直接分配每个输入字段(PRN299A,PRN299B)为一个结果字段; 2.用新的结果字段(RESULT269,RESULT295)来替换原结果字段中的输入字段; 3.修改新结果字段的长度(LEN)和小数位(DEC)以便使原结果字段(RESULTA)的十 进精度明显增加(请参看前面列出的公式)。 图17,2的RESULTA小数精度由2改为9,新的小数精度是由公式31,26,9,5计算 得出的。 * * * Define Result Fields * * * * Type definitions using field names or constants and operators, press Enter. * * Operators: +, -, *, /, SUBSTR, ||, DATE... * * * * Field Expression Column Heading Len Dec * * RESULT269_ PRN299A__________________________ ____________________ 26 _9 * * _________________________________ ____________________ * * _________________________________ ____________________ * * * * RESULT295_ PRN299B__________________________ ____________________ 29 _5 * * _________________________________ ____________________ * * _________________________________ ____________________ * * * * RESULTA___ RESULT269/RESULT295______________ ____________________ __ __ * * _________________________________ ____________________ * * _________________________________ ____________________ * * Bottom * * _______________________________________________________________________________ * * Field Text Len Dec * * PRN299A Field with precision of 29,9 29 9 * * PRN299B Field with precision of 29,9 29 9 * * Bottom * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * 3.1.8 选择记录(忽略字段大小写) 为了选择记录而不考虑字段大小写,做下列之一: 定义自已的整理顺序,使大小写字母有相同权值。 使用系统自已的整理顺序,使用共享整理权。 在‘选择处理选项’中的对所有字符比较使用整理顺序选项必须设为YES,如由于某种 原因不能设置这个选项,那么必须用EQ测试代替RANGE或LE和GE组合。(这种方法只有当 不包括DBCS数据时才可使用)。 注:修改整理,会影响分类、最小值、最大值和记录中断。请参看本书原文E.3。 附录 查询的实际练习 若想做一个查询练习,首先必须有一个文件并录入一些数据。这个练习让你在建立一个 查询前,通过如下几步: 生成IDDU的定义 生成一个数据库文件 录入数据 如果系统中已经有一个你能使用的数据文件,那便可以直接开始建立查询。如果没注意 到使用的数据类型,那么可以生成查询去使用QGPL库中的数据。 1、生成IDDU定义 在下面的例子中,给出如何生成姓名和地址文件的定义。定义完成后,可用DFU来处理 数据。 1.在命令行中用STRIDD或者从文件菜单或决定支持菜单中选择IDDU选项来进入 IDDU主菜单。 2.在IDDU菜单选择选项2,生成数据字典,如果已有你可用的数据字典,走到6。 3.在此显示中选择选项1(建立),键入含有上述字典的库名,按执行键。 若想生成数据字典但命名的库中不存在,那么会显示一条信息,告诉库没找到。按执 行键建立,将看见建库信息,从这个显示可以生成放数据字典的库,完成这一操作后, 回到‘生成数据字典’显示。 4.在‘生成数据字典’的提示中,库名即作为字典名出现。在本例中,我们使用SYSDIC 作字典名。 5.接受系统提供的值,按执行键确定。也可以在Text提示中给出一个简短的说明,且 选择一个长注释。如果在长注释的提示中键入1(选择),那么就可以在‘编辑长注 释’提示里写上字典的详细说明。当完成上述工作之后,按执行键字典建完。 在AS/400系统中建立字典要花费一些时间。建完后,会显示信息,在‘处理数据字典’ 显示中按F12键,返回IDDU主菜单。 6.在IDDU主菜单中选择选项1(处理数据定义) * * * IDDU Interactive Data Definition Utility (IDDU) * * * * Select one of the following: * * * * 1. Work with data definitions * * * * * * * 按执行键。 7.首先要定义文件名,所以选择选项3(文件),(在下面显示中,在数据字典提示中出 现的SYSDIC这是刚建立的数据字典的名字,或是最后一次使用的字典名。可以修 改这个数据字典名)。 * * * Select Definition Type * * * * Type choices, press Enter. * * * * Definition type . . . . . . . 3 1=Field * * 2=Record format * * 3=File * * * * Data dictionary . . . . . . . SYSDIC Name, F4 for list * * * * * 按执行键。 8.当看到‘处理文件定义’的显示时,选择选项1(建立),为新文件定义命名。(在本 例中文件名为NAMEADDR)。 * * * Work with File Definitions * * * * Dictionary. . . . . . . : SYSDIC * * * * Position to . . . . . . . _____________ Starting characters * * * * Type options (and File Definition), press Enter. * * 1=Create 2=Change 3=Copy 4=Delete * * 6=Print 7=Rename 8=Display where used * * * * File * * Opt Definition * * * * * 按执行键。 9.在看到‘生成文件定义’显示时,选择选项2(生成单格式),并接受系统提供的记 录格式名(系统使用文件定义名在末尾加R),可在Text提示中写一简短说明,不要 在长信息提示中写内容。 * * * Create File Definition * * * * Definition. . . . . . . : NAMEADDR Dictionary. . . . . . : SYSDIC * * * * Type choices, press Enter. * * * * Record formats * * option . . . . . . . 2 1=Create and/or select formats * * 2=Create default format * * and select fields * * * * For choice 2=Create default format: * * Format . . . . . . . default____ Name * * * * Select key field * * sequence . . . . . . N Y=Yes, N=No * * * * Long comment . . . . . _ 1=Select, 4=Remove * * * * Text . . . . . . . . . practice definition for DFU and Query * * * * * 按执行键。 10.现在已准备好在刚命名的记录格式定义中生成所用的字段定义。在字段提示中键入 LASTNAME作为第一个字段定义的名字,使用自动显示的数字10,不要按执行键。 * * * Create and Select Field Definitions * * * * Definition. . . . . . : NAMEADDRR Dictionary. . . . . . : SYSDIC * * * * * * * * Position to . . . . . . . __________ Field, sequence (0-99999) * * * * Type sequence numbers (0-99999), (and Field), press Enter. * * Type field, press F6 to create. * * * * * * Seq Field End Seq Field End Seq Field End * * * * 10 LASTNAME * * * * * 现在按F6键,显示下一屏信息,在那里要完成对LASTNAME字段定义的描述。 11.根据下表给出的内容,完成对LASTNAME字段的类型、长度及其它一些描述,然 后用同样方法对其它字段进行描述。 字段名 字段类型 长度 说明 LASTNAME Character 15 Last name FIRSTNAME Character 10 First name ADDRESS1 Character 20 Address line 1 ADDRESS2 Character 20 Address line 2 CITY Character 15 City STATE Character 2 State ZIP Character 9 Zip code AMOUNT Numeric,2 decimal positions 6 Amount * * * Create Field Definitions * * * * Type information, press Enter to create. * * Field type (size) . . : 1=Character (1-32766) * * 2=Numeric (1-31, decimal positions 0-31) * * 3=DBCS (4-32766, mixed; 1-16383, graphic) * * 4=Date/Time (no size) * * More options. . . . . : Y=Yes * * * * -------Field--------- Dec More * * Name Type Size Pos Opt Text * * * * LASTNAME 1 15 __ _ Last name * * FIRSTNAME 1 10 __ _ First name * * ADDRESS1 1 20 __ _ Address line 1 * * ADDRESS2 1 20 __ _ Address line 2 * * CITY 1 15 __ _ City * * STATE 1 2 __ _ State * * ZIP 1 9 __ _ Zip code * * AMOUNT 2 6 2 _ Amount * * * * * 12.完成了对字段的定义后,按执行键,出现下面的显示,此时,已经生成了字段定义。 * * * Create Field Definitions * * * * Type information, press Enter to create. * * Field type (size) . . : 1=Character (1-32766) * * 2=Numeric (1-31, decimal positions 0-31) * * 3=DBCS (4-32766, mixed; 1-16383, graphic) * * 4=Date/Time (no size) * * More options. . . . . : Y=Yes * * * * -------Field--------- Dec More * * Name Type Size Pos Opt Text * * * * __________ _ _____ __ _ _____________________________________________ * * __________ _ _____ __ _ _____________________________________________ * * __________ _ _____ __ _ _____________________________________________ * * * * * * * 不做改动,按执行键。 13.出现下面的显示。 * * * Create and Select Field Definitions * * * * Definition............: NAMEADDRR Dictionary............: SYSDIC * * * * Position to . . . . . . . __________ Field, sequence (0-99999) * * * * Type sequence numbers (0-99999), (and Field), press Enter. * * Type field, press F6 to create. * * * * * * Seq Field End Seq Field End Seq Field End * * * * * * Seq Field End * * 10 LASTNAME 15 * * 10 FIRSTNAME 25 * * 10 ADDRESS1 45 * * 10 ADDRESS2 65 * * 10 CITY 80 * * 10 STATE 82 * * 10 ZIP 91 * * 10 AMOUNT 95 * * * 确认一下字段名是否按正确顺序排列。(当顺序号相同时,在此显示中字段名的安排决 定在记录中的使用顺序),如果字段排列有误,要输入正确的序号,按执行键。当字段排列 顺序正确时,按执行键,不要对显示信息做任何修改。 14. 出现下列显示。 * * * Work with File Definitions * * * * * * Dictionary. . . . . . . : SYSDIC * * * * Position to . . . . . . . _____________ Starting characters * * * * Type options (and File Definition), press Enter. * * 1=Create 2=Change 3=Copy 4=Delete * * 6=Print 7=Rename 8=Display where used * * * * File * * Opt Definition * * * * * * * 按F3键(退出),不要对其进行任何修改。 现在完成了生成数据库文件定义这一步。 2、建立一个数据库文件 在完成了必要的文件定义后,可以用‘处理数据库文件’显示生成数据库文件。可用 IDDU主菜单或由IDDU命令(WRKDBFIDD),直接看到这个显示。 在每次返回到这个显示时可键入一个新文件名,来生成多个需要的文件。这些文件名也 许有一个事先分配给它们的权限,这会影响你能分配什么样的权限。 按以下步骤来生成数据库文件: 1.在IDDU主菜单选择选项3(处理数据库文件),(用命令WRKDBFIDD)。 2.在下列显示中,选择选项1(建立),给出新文件名,规定它所在的库名。 * * * Work with Database Files * * * * Library . . . . . . . default___ Name,F4 for list * * Position to . . . . . __________ Starting characters * * * * Type options (and Database file), press Enter. * * 1=Create 2=Enter data * * * * Database Database Database Database * * Opt File Opt File Opt File Opt File * * * * * 3.按执行键。出现下面的显示。 在这个显示中,文件定义名为NAMEADDR,字典名为SYSDIC,*CHANGE为其权限。 * * * Create Database File * * * * File . . . : NAMEADDR Library . . . . : YOURLIB * * * * Type choices, press Enter. * * * * Related definition information: * * * * File definition . . . . . . NAMEADDR Name, F4 for list * * * * Dictionary . . . . . . . . . SYSDIC Name, F4 for list * * * * Authority . . . . . . . . . *CHANGE *LIBCRTAUT, *ALL, *CHANGE * * *USE, *EXCLUDE * * Authorization list name * * * 4.按执行键生成文件,文件生成后,系统会自动将文件的定义与文件连接。 按F3键返回到IDDU主菜单。 3、录入数据 按下述步骤,往文件输入数据: 1.在IDDU主菜单选择选项3(或用命令WRKDBFIDD)。 2.出现下面的显示,选择选项2(输入数据),文件名NAMEADDR及它所在的库名。 * * * Work with Database Files * * * * Library . . . . . . . default___ Name,F4 for list * * Position to . . . . . __________ Starting characters * * * * Type options (and Database file), press Enter. * * 1=Create 2=Enter data * * * * Database Database Database Database * * Opt File Opt File Opt File Opt File * * * * * 3.按执行键后,出现下面的显示: * * * WORK WITH DATA IN A FILE Mode . . . . : ENTRY * * Format . . . . : NAMEADDR File . . . . : NAMEADDR * * * * * * LASTNAME: * * FIRSTNAME: * * ADDRESS1: * * ADDRESS2: * * CITY: * * STATE: * * ZIP: * * AMOUNT: * * * * * * * * * * * * * * * * * * * * * * F3=Exit F5=Refresh F6=Select format * * F9=Insert F10=Entry F11=Change * * * 4.键入相应信息后,不按执行键,在输入了一屏字段之后,先按换行键,然后再按执 行键。 * * * WORK WITH DATA IN A FILE Mode . . . . : ENTRY * * Format . . . . : NAMEADDR File . . . . : NAMEADDR * * * * * * LASTNAME: SIMPSON * * FIRSTNAME: FRANK * * ADDRESS1: 1722 ORANGE STREET * * ADDRESS2: * * CITY: RIDGEWAY * * STATE: CA * * ZIP: 72430 * * AMOUNT: 9998 * * * * * * * * * * * * * * * * * * * * * * F3=Exit F5=Refresh F6=Select format * * F9=Insert F10=Entry F11=Change * * * 5.再次出现处理文件数据的显示,但字段处为空白,已准备好继续输入数据。 6.继续输入下列数据: LASTNAME FIRSTNAME ADDRESS1 ADDRESS2 CITY STATE ZIP AMOUNT Daye Ben 1312 Elm Street Apt C Marshill AK 77901 456 Patterson Tammy 4 Ridgeview Court Marshill AK 77901 501 Barker Rick 1432 Le Grand Blvd Emmerson LA 71282 938 Sedgewick Lillian 200 Park Lane Emmerson LA 71282 25 Skoggen Linda Circle Court NE Truman NC 57432 764 Golinero Sebastin 7196 Thomas Street Highpoint MN 55909 00 Lien Sue 469 Jackson Street Ridgeway CA 72430 00 Sedgewick Leona 21st Cannery Row Apt 43 Emmerson LA 71282 45 Skoggen Charles 401 Abbey Road Truman NC 57432 629 7.将全部数据录入完后,将继续显示空字段,按F3键(退出),出现下面的显示: * * * End Data Entry * * * * Number of records processed * * * * Added . . . . . : 10 * * Changed . . . . : 0 * * Deleted . . . . : 0 * * * * * * * * Type choice, press Enter. * * * * End data entry . . . . . . . Y Y=Yes, N=No * * * 不须改动屏幕上的任何信息,按执行键即可。 8.出现下面的显示: * * * Work with Database Files * * * * Library . . . . . . . default__ Name,F4 for list * * Position to . . . . . __________ Starting characters * * * * Type options (and Database file), press Enter. * * 1=Create 2=Enter data * * * * Database Database Database Database * * Opt File Opt File Opt File Opt File * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F11=Display text * * F12=Cancel F21=Work with definitions F22=Work with data dictionaries * * Data for file NAMEADDR in YOURLIB was changed. * * * 屏幕底部显示的信息告诉你文件中数据已更改。 9.按F3键(退出),回到开始的菜单,自动打印出输入所有数据的统计记录。 4、生成并运行一个查询 在下面的练习中,生成并修改一个查询,它产生一个列出文件NAMEADDR的全部信息或 在你系统中文件的报表。 NAMEADDR包含名字、地址及下列信息: Last name First name Address 1 Address 2 City State Zip code Amount 在生成且保存查询后,运行它,然后修改查询,再运行一次。 4.1 生成一个查询 在这个练习中,生成一个查询,它在显示上列出在文件NAMEADDR中的所有信息且按它 们在文件中的顺序给出。 这个练习要求你把建立的查询放入库中,可以使用自己的库。 1.首先用WRKQRY命令进入‘处理查询’显示。 2.在选项提示中,写1(建立),在查询提示中写XXXQRY(XXX为自已选的字符) * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . 1 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch, 9=Run * * Query . . . . . . . KJOQRY Name, F4 for list * * Library . . . . . . YOURLIB Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * * 3.按执行键。出现下面的显示: * * * Define the Query * * * * Query . . . . . . : KJOQRY Option . . . . . : CREATE * * Library . . . . . : YOURLIB CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * 1 Specify file selections * * _ Define result fields * * _ Select and sequence fields * * _ Select records * * _ Select sort fields * * _ Select collating sequence * * _ Specify report column formatting * * _ Select report summary functions * * _ Define report breaks * * _ Select output type and output form * * _ Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * * * * 注:在此显示中,查询在规定文件选择选项中自动给出了1,这是由于不论何时建立查 询必须用一个文件。在这个显示中选择其它选项。 4.按执行键,则出现下面的显示: * * * Specify File Selections * * * * Type choices, press Enter. Press F9 to specify an additional * * file selection. * * * * File . . . . . . . . . . __________ Name, F4 for list * * Library . . . . . . . QGPL Name, *LIBL, F4 for list * * Member . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * Format . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * BOTTOM * * F3=Exit F4=Prompt F5=Report F9=Add file * * F12=Cancel F13=Layout F24=More keys * * * 这一信息说明查询生成记录所用的数据库文件。 5.在文件提示中键入NAMEADDR,在库提示中键入包含这一文件的库名,格式和成 员提示中的内容不动。 * * * Specify File Selections * * * * Type choices, press Enter. Press F9 to specify an additional * * file selection. * * * * File . . . . . . . . . . NAMEADDR Name, F4 for list * * Library . . . . . . . YOURLIB Name, *LIBL, F4 for list * * Member . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * Format . . . . . . . . . NAMEADDRR Name, *FIRST, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Report F9=Add file * * F12=Cancel F13=Layout F24=More keys * * * * * 6.按执行键,再次出现下面的显示,屏幕底部有信息提示可选择文件,也可按执行键 确定已选文件。 * * * Specify File Selections * * * * Type choices, press Enter. Press F9 to specify an additional * * file selection. * * * * File . . . . . . . . . . NAMEADDR Name, F4 for list * * Library . . . . . . . YOURLIB Name, *LIBL, F4 for list * * Member . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * Format . . . . . . . . . NAMEADDRR Name, *FIRST, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Report F9=Add file * * F12=Cancel F13=Layout F24=More keys * * Select file(s), or press Enter to confirm. * * * 7.按执行键,出现下面的显示,在屏幕底部有信息提示可选择任一选项或按F3键保存 或运行查询。 * * * Define the Query * * * * Query . . . . . . : KJOQRY Option . . . . . : CREATE * * Library . . . . . : YOURLIB CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * _ > Specify file selections * * _ Define result fields * * _ Select and sequence fields * * _ Select records * * _ Select sort fields * * _ Select collating sequence * * _ Specify report column formatting * * _ Select report summary functions * * _ Define report breaks * * _ Select output type and output form * * _ Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * Select options, or press F3 to save or run the query. * * * 已定义了的选项——文件选项后有一个>,它表明这一项已被定义。 8.按F3键(退出)出现下面的显示,在保存定义的提示中有Y(是),在运行选项提示 中为1(运行),这是由于假定你既要保存又要运行此查询,保留这两项。 9.在Text提示处键入Lists customer name and addresses。 10.在权限提示中键入*CHANGE。 * * * Exit This Query * * * * Type choices, press Enter. * * * * Save definition . . . Y Y=Yes, N=No * * * * Run option . . . . . . 1 1=Run interactively * * 2=Run in batch * * 3=Do not run * * * * For a saved definition: * * Query . . . . . . . KJOQRY Name * * Library . . . . . YOURLIB Name, F4 for list * * * * Text . . . . Lists customer names and addresses * * * * Authority . . . . . *CHANGE *LIBCRTAUT, *ALL, *CHANGE, * * *EXCLUDE, *USE * * authorization list name * * * * * * * * F4=Prompt F5=Report F13=Layout F14=Define the query * * * * * 11.按执行键,保存查询定义并运行查询,由查询产生的记录显示在屏幕上。 * * * Display Report * * Query . . . : YOURLIB/KJOQRY Report width . . . . . : 117 * * Position to (Line) . . . . ______ Shift to column . . . . . . _____ * * Line ....+....1....+....2....+....3....+....4....+....5....+....6....+....7...* * LASTNAME FIRSTNAME ADDRESS1 ADDRESS2 * * 000001 SIMPSON FRANK 1722 ORANGE STREET * * 000002 DAYE BEN 1312 ELM STREET APT C * * 000003 SEDGEWICK LILLIAN 200 PARK LANE * * 000004 LIEN SUE 469 JACKSON STREET * * 000005 PATTERSON TAMMY 4 RIDGEVIEW COURT * * 000006 SKOGGEN LINDA CIRCLE COURT NE * * 000007 SEDGEWICK LEONA 21ST CANNERY ROW APT 43 * * 000008 BARKER RICK 1432 LE GRAND BLVD * * 000009 GOLINERO SEBASTIN 7196 THOMAS STREET * * 000010 SKOGGEN CHARLES 401 ABBEY ROAD * * ****** ******** End of report ******** * * * * * * * * * * * * Bottom * * F3=Exit F12=Cancel F19=Left F20=Right F21=Split F22=Width * * * * * 报表列出了文件NAMEADDR的全部信息,包括列标题,它是用IDDU定义的。 按F20键(右),即可看到记录右侧内容。 12.按F3键(退出),出现下面的显示,在屏幕底部有一条查询成功执行的信息。 * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . _ 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch 9=Run * * Query . . . . . . . KJOQRY Name, F4 for list * * Library . . . . . . YOURLIB Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * Query option processing completed successfully. * * * 5、修改查询 如果只想要那些住在路易丝安那洲的顾客记录,那么要修改查询,让它只列出那个州的 顾客清单。 1.在‘处理查询’显示中的选项提示中写2。 2.在查询提示处键入XXXQRY。 3.如果没有显示库名,那么在库提示中键入在先前练习时使用的库名。 * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . 2 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch 9=Run * * Query . . . . . . . KJOQRY Name, F4 for list * * Library . . . . . . YOURLIB Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * Query option processing completed successfully. * * * 4.按执行键,出现下面的显示: 5.在选择记录提示键入1: * * * Define the Query * * * * Query . . . . . . : KJOQRY Option . . . . . : CHANGE * * Library . . . . . : YOURLIB CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * > Specify file selections * * _ Define result fields * * _ Select and sequence fields * * 1 Select records * * _ Select sort fields * * _ Select collating sequence * * _ Specify report column formatting * * _ Select report summary functions * * _ Define report breaks * * _ Select output type and output form * * _ Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * * * * 6.按执行键,出现下面的显示: * * * Select Records * * * * Type comparisons, press Enter. Specify OR to start each new group. * * Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... * * * * AND/OR Field Test Value (Field, Number, or 'Characters') * * ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * Bottom * * * * Field Text Len Dec * * LASTNAME Last name 15 * * FIRSTNAME First name 10 * * ADDRESS1 Address line 1 20 * * ADDRESS2 Address line 2 20 * * CITY City 15 * * * * * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * * * 在显示信息底部列出了文件NAMEADDR中的全部字段。(如果显示不是单列格式,即没显 示字段内容、长度及小数位,那么按F11键)。可以将光标移到列表的任何位置,按Pagedown 键来看更多的字段名。 7.按显示中给出的内容,填好字段、测试及权值。 * * * Select Records * * * * Type comparisons, press Enter. Specify OR to start each new group. * * Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... * * * * AND/OR Field Test Value (Field, Number, or 'Characters') * * STATE EQ 'LA' * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * ____ ______________ _____ ______________________________ * * Bottom * * * * Field Text Len Dec * * LASTNAME Last name 15 * * FIRSTNAME First name 10 * * ADDRESS1 Address line 1 20 * * ADDRESS2 Address line 2 20 * * CITY City 15 * * More... * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * * * 这些信息告诉查询/400要测试每个记录中STATE字段的值LA,只有这个值的记录才包 括在记录中。(如果使用唯一权值的系统分类顺序表或*HEX,那么要确认输入的是‘LA’其 中的引号告诉程序,LA是字段值而不是字段名,此值必须大写,如果在数据库中大小写有 同样值,要用共享权值表。) 8.按F5键(报表),运行查询并显示记录,F5键会让您看到所做修改的作用。 报表仅列出了住在路易丝安那洲的顾客(在下列显示中仅给出报表的左部分): * * * Display Report * * Report width . . . . . : 117 * * Position to line . . . . . ______ Shift to column . . . . . . _____ * * Line ....+....1....+....2....+....3....+....4....+....5....+....6....+....7...* * LASTNAME FIRSTNAME ADDRESS1 ADDRESS2 * * 000001 SEDGEWICK LILLIAN 200 PARK LANE * * 000002 SEDGEWICK LEONA 21ST CANNERY ROW APT 43 * * 000003 BARKER RICK 1432 LE GRAND BLVD * * ****** ******** End of Report ******** * * * * * * * * * * * * * * * * * * * * * * * * * * Bottom * * F3=Exit F12=Cancel F19=Left F20=Right F21=Split F22=Width 80 * * * * * 9.按F20键即可显示出记录的右部分。 * * * Display Report * * Report width . . . . . : 117 * * Position to line . . . . . ______ Shift to column . . . . . . _____ * * Line ....+....1....+....2....+....3....+....4....+....5....+....6....+....7...* * ADDRESS2 CITY STATE ZIP AMOUNT * * 000001 EMMERSON LA 71282 .25 * * 000002 APT 43 EMMERSON LA 71282 .45 * * 000003 VD EMMERSON LA 71282 9.38 * * ****** ******** End of Report ******** * * * * * * * * * * * * * * * * * * * * * * * * * * Bottom * * F3=Exit F12=Cancel F19=Left F20=Right F21=Split F22=Width 80 * * Last column of report. * * * 10.接下来可按F3键(退出),F12键(取消)或按执行键,均可返回到‘选择记录’ 显示中,然后再按F3键(退出),出现下面的显示: * * * Exit This Query * * * * Type choices, press Enter. * * * * Save definition . . . Y Y=Yes, N=No * * * * Run option . . . . . . 1 1=Run interactively * * 2=Run in batch * * 3=Do not run * * * * For a saved definition: * * * * Query . . . . . . . KJOQRY Name * * Library . . . . . YOURLIB Name, F4 for list * * * * Text . . . . . . Lists customer names and addresses * * * * Authority . . . . . *CHANGE *LIBCRTAUT, *CHANGE, *ALL * * *EXCLUDE, *USE * * authorization list name * * * * * * F4=Prompt F5=Report F13=Layout F14=Define the query * * * * * 可用此显示运行修改的查询,也可以选择让修改过的查询成为永久的还是仅改变这一 次。 11.如下图填好退出查询信息: * * * Exit This Query * * * * Type choices, press Enter. * * * * Save definition . . . N Y=Yes, N=No * * * * Run option . . . . . . 3 1=Run interactively * * 2=Run in batch * * 3=Do not run * * * * For a saved definition: * * * * Query . . . . . . . CEBQRY Name * * Library . . . . . YOURLIB Name, F4 for list * * * * Text . . . . . Lists customer names and addresses * * * * Authority . . . . . *CHANGE *LIBCRTAUT, *CHANGE, *ALL * * *EXCLUDE, *USE * * authorization list name * * * * * * F4=Prompt F5=Report F13=Layout F14=Define the query * * * * * 12.按执行键,出现下面的显示: * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch 9=Run * * Query . . . . . . . CEBQRY Name, F4 for list * * Library . . . . . . YOURLIB Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * Query option processing completed successfully. * * * 若想注销或想做查询以外的工作,按F3键(退出),返回到选择使用查询的菜单。 6、建立一个高级查询 在下面的例子中,用命令DSPOBJD建立一个名为QRYFILE的文件,这个文件包含了当前 在QGPL库中的全部目标的说明。然后,使用几个查询定义选项,生成一个从QRYFILE文件 取得信息的查询定义,并生成一个显示这些信息的记录。 注:本例中没有解释DSPOBJD命令及其参数,有关内容请看控制语言(CL)参考。 1. 在AS/400主菜单的命令行上,键入下面显示中给出的DSPOBJD命令及其参数,按 执行键,便生成了名为QRYFILE文件,将其放入QGPL库中。 注:OBJTYPE参数的值*ALL后必须有空格,否则会出错,要严格按显示中给出的命令输 入。 * * * MAIN AS/400 Main Menu * * System: RCH38342 * * Select one of the following: * * * * 1. User tasks * * 2. Office tasks * * 3. General system tasks * * 4. Files, libraries, and folders * * 5. Programming * * 6. Communications * * 7. Define or change the system * * 8. Problem handling * * 9. Display a menu * * * * 90. Sign off * * * * * * * * Selection or command * * ===> DSPOBJD OBJ(QGPL/*ALL) OBJTYPE(*ALL ) OUTPUT(*OUTFILE) OUTFILE(QGPL/QRYFIL * * E) * * F3=Exit F4=Prompt F9=Retrieve F12=Cancel F13=User support * * F23=Set initial menu * * (C) COPYRIGHT IBM CORP. 1980, 1991. * * * 2.在命令行键入WRKQRY命令,按执行键。 * * * MAIN AS/400 Main Menu * * System: RCH38342 * * Select one of the following: * * * * 1. User tasks * * 2. Office tasks * * 3. General system tasks * * 4. Files, libraries, and folders * * 5. Programming * * 6. Communications * * 7. Define or change the system * * 8. Problem handling * * 9. Display a menu * * * * 90. Sign off * * * * * * * * Selection or command * * ===> WRKQRY * * * * F3=Exit F4=Prompt F9=Retrieve F12=Cancel F13=User support * * F23=Set initial menu * * * * * 3.出现下面的显示,选择选项1(建立),在查询提示中键入一个查询名字,并在库提 示中键入存贮查询的库名,按执行键。 * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . 1 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch 9=Run * * * * Query . . . . . . . . QNAME Name, F4 for list * * Library . . . . . . YOURLIB Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * (C) COPYRIGHT IBM CORP. 1988, 1991 * * * 4.出现下面的显示,按显示中给出的内容,选择列出的选项。(注意,规定文件选项自 动选上),按执行键。 * * * Define the Query * * * * Query . . . . . . : QNAME Option . . . . . : CREATE * * Library . . . . : YOURLIB CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * 1 Specify file selections * * Define result fields * * 1 Select and sequence fields * * 1 Select records * * 1 Select sort fields * * Select collating sequence * * 1 Specify report column formatting * * 1 Select report summary functions * * 1 Define report breaks * * Select output type and output form * * Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * * * * 查询按在此显示中规定的顺序陆续给出选择的定义步骤显示。 5.首先出现下面的显示,在文件提示处键入QRYFILE,在库提示处键入QGPL,成员 及格式的提示处已写好,按执行键。 * * * Specify File Selections * * * * Type choices, press Enter. Press F9 to specify an additional * * file selection. * * * * File . . . . . . . . . . QRYFILE Name, F4 for list * * Library . . . . . . . QGPL Name, *LIBL, F4 for list * * Member . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * Format . . . . . . . . . *FIRST Name, *FIRST, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Report F9=Add file * * F12=Cancel F13=Layout F24=More keys * * * * * 6.出现下面的显示: * * * Select and Sequence Fields * * * * Type sequence number (0-9999) for the names of up to 500 fields to * * appear in the report, press Enter. * * * * Seq Field Seq Field Seq Field * * ODDCEN ODCCEN ODSV02 * * ODDDAT ODCDAT ODSV03 * * ODDTIM ODCTIM ODSV04 * * ODLBNM ODOBOW ODSV05 * * ODOBNM ODSCEN ODSV06 * * ODOBTP ODSDAT ODSV07 * * ODOBAT ODSTIM ODSV08 * * ODOBFR ODSCMD ODSV09 * * ODOBSZ ODSSZE ODSV10 * * ODOBTX ODSSLT ODSVMR * * ODOBLK ODSDEV ODRCEN * * ODOBDM ODSV01 ODRDAT * * More... * * * * * * F3=Exit F5=Report F11=Display text F12=Cancel * * F13=Layout F20=Renumber F21=Select all F24=More keys * * * * * 如果看到的是多列显示(即没显示字段说明、长度及小数位),按F11键(显示说明), 即可显示出列表中各字段的附加信息。按下面显示的内容,选择其中五个字段,它们将按选 择的序号顺序出现在查询记录中, 注:必须选择要用做分类的字段。 * * * Select and Sequence Fields * * * * Type sequence number (0-9999) for the names of up to 500 fields to * * appear in the report, press Enter. * * * * Seq Field Text Len Dec * * ODDCEN DISPLAY CENTURY 1 * * ODDDAT Display date: Format- MMDDYY 6 x * * ODDTIM DISPLAY TIME 6 * * 1 ODLBNM LIBRARY 10 * * ODOBNM OBJECT 10 * * 2 ODOBTP OBJECT TYPE 8 * * 3 ODOBAT OBJECT ATTRIBUTE 10 * * ODOBFR Storage freed: 0-Not freed,1-Freed 1 * * 4 ODOBSZ OBJECT SIZE 10 0 * * 5 ODOBTX TEXT DESCRIPTION 50 * * ODOBLK Object locked: 0-Not locked,1-Locked 1 * * ODOBDM Object damaged: 0-Not damaged,1-Damaged 1 * * More... * * * * * * F3=Exit F5=Report F11=Display names only F12=Cancel * * F13=Layout F20=Renumber F21=Select all F24=More keys * * * * * 按执行键,选中的五个字段即按先后顺序排在了列表前部,同时也给出信息――‘按执 行键确认’。 * * * Select and Sequence Fields * * * * Type sequence number (0-9999) for the names of up to 500 fields to * * appear in the report, press Enter. * * * * Seq Field Text Len Dec * * 1 ODLBNM LIBRARY 10 * * 2 ODOBTP OBJECT TYPE 8 * * 3 ODOBAT OBJECT ATTRIBUTE 10 * * 4 ODOBSZ OBJECT SIZE 10 0 * * 5 ODOBTX TEXT DESCRIPTION 50 * * ODDCEN DISPLAY CENTURY 1 * * ODDDAT Display date: Format- MMDDYY 6 * * ODDTIM DISPLAY TIME 6 * * ODOBNM OBJECT 10 * * ODOBFR Storage freed: 0-Not freed,1-Freed 1 * * ODOBLK Object locked: 0-Not locked,1-Locked 1 * * ODOBDM Object damaged: 0-Not damaged,1-Damaged 1 * * More... * * * * * * F3=Exit F5=Report F11=Display names only F12=Cancel * * F13=Layout F20=Renumber F21=Select all F24=More keys * * Press Enter to confirm. * * * 再一次按执行键。 7. 出现下面的显示,在此规定报表中包括的记录: * * * Select Records * * * * Type comparisons, press Enter. Specify OR to start each new group. * * Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... * * * * AND/OR Field Test Value (Field, Number, or 'Characters') * * * * * * * * * * * * * * Bottom * * * * Field Text Len Dec * * ODLBNM LIBRARY 10 * * ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * More... * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * * * 要在报表中包括类型为*FILE或*PGM的目标,按显示中给出的内容填好字段名、测试及 值,但不要按执行键。 * * * Select Records * * * * Type comparisons, press Enter. Specify OR to start each new group. * * Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... * * * * AND/OR Field Test Value (Field, Number, or 'Characters') * * ODOBTP LIST '*FILE' '*PGM' * * * * * * * * * * * * Bottom * * * * Field Text Len Dec * * ODLBNM LIBRARY 10 * * ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * More... * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * * * 8.按F5键(报表),显示报表,这是根据你定义的查询已到达这点(在显示中看到的信 息依据当前在OGPL库中的目标,你实际需到的可与此不同)。 * * * Display Report * * Report width . . . . . : 100 * * Position to line . . . . . Shift to column . . . . . . * * Line ....+....1....+....2....+....3....+....4....+....5....+....6....+....7...* * LIBRARY OBJECT OBJECT OBJECT TEXT DESCRIPTION * * TYPE ATTRIBUTE SIZE * * 000001 QGPL *PGM CLP 14,336 B & R Example - Page 2 * * 000002 QGPL *PGM CLP 16,384 B & R Example - page 2 * * 000003 QGPL *FILE PF 8,192 * * 000004 QGPL *FILE PF 1,024 Default source data ba * * 000005 QGPL *FILE PF 1,024 Default source data ba * * 000006 QGPL *FILE PF 16,384 Default source data ba * * 000007 QGPL *FILE DKTF 2,560 Default diskette data * * 000008 QGPL *FILE DKTF 2,560 Default source diskett * * 000009 QGPL *FILE PF 1,024 Default source data ba * * 000010 QGPL *FILE PF 140,288 RSTS36FLR COMMAND * * 000011 QGPL *FILE PRTF 2,048 Default spool output p * * 000012 QGPL *FILE PRTF 2,048 Default spool print fi * * 000013 QGPL *FILE PRTF 2,048 Default spool print fi * * 000014 QGPL *FILE PF 38,912 Outfile for DSPOBJD * * 000015 QGPL *FILE PF 16,384 * * More... * * F3=Exit F12=Cancel F19=Left F20=Right F21=Split F22=Width 80 * * * * * 在屏幕右下角有more…,这表示报表内容没完,可用翻页键往后翻,也可用F19键或 F20键左、右移屏,在看完报表后,用F3键返回到‘选择记录’显示。 * Select Records * * * * Type comparisons, press Enter. Specify OR to start each new group. * * Tests: EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISNOT... * * * * AND/OR Field Test Value (Field, Number, or 'Characters') * * ODOBTP LIST '*FILE' '*PGM' * * * * * * * * * * Bottom * * * * Field Text Len Dec * * ODLBNM LIBRARY 10 * * ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * * * More... * * F3=Exit F5=Report F9=Insert F11=Display names only * * F12=Cancel F13=Layout F20=Reorganize F24=More keys * * * * * 按执行键。 9.出现下面的显示,在此规定用哪些字段对报表选择的记录进行分类,如果想选先用 目标类型分类,然后再用目标对象大小分类,那么就在ODOBTP字段前键入1,在ODOBSZ 前键入2。 * * * Select Sort Fields * * * * Type sort priority (0-999) and A (Ascending) or D (Descending) for * * the names of up to 32 fields, press Enter. * * * * Sort * * Prty A/D Field Text Len Dec * * ODLBNM LIBRARY 10 * * 1 ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * 2 ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * Bottom * * * * F3=Exit F5=Report F11=Display names only F12=Cancel * * F13=Layout F18=Files F20=Renumber F24=More keys * * * * * 按执行键,查询重新排列显示中的字段,这样选中的两个分类字段排在列表头,并显示 信息――‘按执行键确认’。 * * * Select Sort Fields * * * * Type sort priority (0-999) and A (Ascending) or D (Descending) for * * the names of up to 32 fields, press Enter. * * * * Sort * * Prty A/D Field Text Len Dec * * 1 A ODOBTP OBJECT TYPE 8 * * 2 A ODOBSZ OBJECT SIZE 10 0 * * ODLBNM LIBRARY 10 * * ODOBAT OBJECT ATTRIBUTE 10 * * ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * * * Bottom * * * * F3=Exit F5=Report F11=Display names only F12=Cancel * * F13=Layout F18=Files F20=Renumber F24=More keys * * Press Enter to confirm. * * * 再按一次执行键。 10.出现下面的显示,在这里规定列间距、列标题及其它记录格式选项。 * * * Specify Report Column Formatting * * * * Type information, press Enter. * * Column headings: *NONE, aligned text lines * * * * Column * * Field Spacing Column Headings Len Dec Edit * * ODLBNM 0 LIBRARY 10 * * * * * * * * ODOBTP 2 OBJECT 8 * * TYPE * * * * * * ODOBAT 2 OBJECT 10 * * ATTRIBUTE * * * * More... * * * * * * F3=Exit F5=Report F10=Process/previous F12=Cancel * * F13=Layout F16=Edit F18=Files F23=Long comment * * * * * 查询提供许多这样的信息,可以将ODLBNM字段行的列标题由LIBRARY改为NAME OF LIBRARY。 * * * Specify Report Column Formatting * * * * Type information, press Enter. * * Column headings: *NONE, aligned text lines * * * * Column * * Field Spacing Column Headings Len Dec Edit * * ODLBNM 0 NAME OF 10 * * LIBRARY * * * * * * ODOBTP 2 OBJECT 8 * * TYPE * * * * * * ODOBAT 2 OBJECT 10 * * ATTRIBUTE * * * * More... * * * * * * F3=Exit F5=Report F10=Process/previous F12=Cancel * * F13=Layout F16=Edit F18=Files F23=Long comment * * * * * 按执行键。 11.出现下面的显示,由规定显示中的选项,可以选择报表中的汇总字段名――也就是 说,对于一个选择的字段,可以规定总计,平均值,最小值,最大值或计数。 * * * Select Report Summary Functions * * * * Type options, press Enter. * * 1=Total 2=Average 3=Minimum 4=Maximum 5=Count * * * * ---Options--- Field Text Len Dec * * _ _ _ _ _ ODLBNM LIBRARY 10 * * _ _ _ _ _ ODOBTP OBJECT TYPE 8 * * _ _ _ _ _ ODOBAT OBJECT ATTRIBUTE 10 * * _ _ _ _ _ ODOBSZ OBJECT SIZE 10 0 * * _ _ _ _ _ ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * * * Bottom * * * * * * F3=Exit F5=Report F10=Process/previous F11=Display text only * * F12=Cancel F13=Layout F18=Files F23=Long comment * * * * * 如下所示,对字段ODOBSZ规定全部汇总函数。 * * * Select Report Summary Functions * * * * Type options, press Enter. * * 1=Total 2=Average 3=Minimum 4=Maximum 5=Count * * * * ---Options--- Field Text Len Dec * * ODLBNM LIBRARY 10 * * ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * 1 2 3 4 5 ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * * * Bottom * * * * * * F3=Exit F5=Report F10=Process/previous F11=Display text only* * F12=Cancel F13=Layout F18=Files F23=Long comment * * * * * 按执行键。 12.出现下面的显示,在这里规定哪些字段作为中断字段,报表中断用来把报表中记录 分组。 * * * Define Report Breaks * * * * Type break level (1-6) for up to 9 field names, press Enter. * * (Use as many fields as needed for each break level.) * * * * Break Sort * * Level Prty Field Text Len Dec * * ODLBNM LIBRARY 10 * * 10 ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * 20 ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * * * * * Bottom * * * * F3=Exit F5=Report F10=Process/previous F11=Display names only * * F12=Cancel F13=Layout F18=Files F23=Long comment * * * * * 在字段ODOBTP左侧的中断级列中键入1,即它的中断级为1。 * * * Define Report Breaks * * * * Type break level (1-6) for up to 9 field names, press Enter. * * (Use as many fields as needed for each break level.) * * * * Break Sort * * Level Prty Field Text Len Dec * * ODLBNM LIBRARY 10 * * 1 10 ODOBTP OBJECT TYPE 8 * * ODOBAT OBJECT ATTRIBUTE 10 * * 20 ODOBSZ OBJECT SIZE 10 0 * * ODOBTX TEXT DESCRIPTION 50 * * * * * * * * * * * * * * * * Bottom * * * * F3=Exit F5=Report F10=Process/previous F11=Display names only* * F12=Cancel F13=Layout F18=Files F23=Long comment * * * 按执行键。 13.出现下列显示,规定定义的报表中断格式。注意,在中断级列中值为0,这表示可 以使用0级中断对所有规定的汇总函数在报表末尾处打印最终汇总。 在本例中,不要改动屏幕上的任何内容,按执行键就行。 * * * Format Report Break * * * * Break level . . . . . . . : 0 * * * * Type choices, press Enter. * * (Type &field in text to have break values inserted.) * * * * * * * * Suppress summaries . . . . N Y=Yes, N=No * * * * Break text . . . . . . . . FINAL TOTALS * * * * * * * * Level Field * * 1 ODOBTP * * * * * * * * * * F3=Exit F5=Report F10=Process/previous F12=Cancel * * F13=Layout F18=Files F23=Long comment * * * * * 出现下面的显示,这时,会发现中断级处的值变成1,即记录中断格式为中断1。在中 断说明提示中,键入相应的中断说明,每当记录出现这个级别的中断时,便会出现此处的内 容。 * * * Format Report Break * * * * Break level . . . . . . . : 1 * * * * Type choices, press Enter. * * (Type &field in text to have break values inserted.) * * * * Skip to new page . . . . . N Y=Yes, N=No * * * * Suppress summaries . . . . N Y=Yes, N=No * * * * Break text . . . . . . . . Break text for object type * * * * * * * * Level Field * * 1 ODOBTP * * * * * * * * * * F3=Exit F5=Report F10=Process/previous F12=Cancel * * F13=Layout F18=Files F23=Long comment * * * * * 按执行键。 现在已经完成了开始所选择的全部定义步骤,因此再一次出现‘定义查询’显示。(开 始所选的定义步骤的左侧均显示>号) * * * Define the Query * * * * Query . . . . . . : QNAME Option . . . . . : CREATE * * Library . . . . : YOURLIB CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * > Specify file selections * * Define result fields * * > Select and sequence fields * * > Select records * * > Select sort fields * * Select collating sequence * * > Specify report column formatting * * > Select report summary functions * * > Define report breaks * * Select output type and output form * * Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * Select options, or press F3 to save or run the query. * * * 14.按F5键(报表)显示记录,此时的记录即是最终的查询记录。 * * * Display Report * * Report width . . . . . : 104 * * Position to line . . . . . Shift to column . . . . . . * * Line ....+....1....+....2....+....3....+....4....+....5....+....6....+....7...* * NAME OF OBJECT OBJECT OBJECT TEXT DESCRIPTION * * OBJECT TYPE ATTRIBUTE SIZE * * 000001 QGPL *FILE PF 1,024 Default source dat * * 000002 QGPL *FILE PF 1,024 Default source dat * * 000003 QGPL *FILE PF 1,024 Default source dat * * 000004 QGPL *FILE PF 1,024 Default source dat * * 000005 QGPL *FILE PF 1,024 * * 000006 QGPL *FILE DSPF 1,536 * * 000007 QGPL *FILE PRTF 2,048 Default spool outp * * 000008 QGPL *FILE PRTF 2,048 Default spool prin * * 000009 QGPL *FILE PRTF 2,048 Default spool prin * * 000010 QGPL *FILE TAPF 2,048 Default tape data * * 000011 QGPL *FILE TAPF 2,048 Default source tap * * 000012 QGPL *FILE DKTF 2,560 Default diskette d * * 000013 QGPL *FILE DKTF 2,560 Default source dis * * 000014 QGPL *FILE PF 8,192 * * 000015 QGPL *FILE PF 8,192 * * More... * * F3=Exit F12=Cancel F19=Left F20=Right F21=Split F22=Width 80 * * * * * 可用翻页键或F20键和F19键把报表看全,也能看到报表的中断和汇总函数。 浏览完记录后,按F3键(退出),返回到‘定义查询’显示。 * * * Define the Query * * * * Query . . . . . . : QNAME Option . . . . . : CREATE * * Library . . . . : QGPL CCSID . . . . . . : 37 * * * * Type options, press Enter. Press F21 to select all. * * 1=Select * * * * Opt Query Definition Option * * > Specify file selections * * Define result fields * * > Select and sequence fields * * > Select records * * > Select sort fields * * Select collating sequence * * > Specify report column formatting * * > Select report summary functions * * > Define report breaks * * Select output type and output form * * Specify processing options * * * * F3=Exit F5=Report F12=Cancel * * F13=Layout F18=Files F21=Select all * * Select options, or press F3 to save or run the query. * * * 按F3键(退出)。 15.出现下面的显示,如果不想保存查询或再运行,在保存定义提示中写N(不),在运 行选项提示中写3(不运行)。 * * * Exit This Query * * * * Type choices, press Enter. * * * * Save definition . . . N Y=Yes, N=No * * * * * * * * Run option . . . . . . 3 1=Run interactively * * 2=Run in batch * * 3=Do not run * * * * For a saved definition: * * Query . . . . . . . QNAME Name * * Library . . . . . QGPL Name, F4 for list * * * * Text . . . . . . . * * * * Authority . . . . . *CHANGE *LIBCRTAUT, *CHANGE, *ALL * * *EXCLUDE, *USE * * authorization list name * * * * F4=Prompt F5=Report F13=Layout F14=Define the query * * * * * 按执行键。 16.出现下面的显示,给出查询已成功执行的信息。 * * * Work with Queries * * * * Type choices, press Enter. * * * * Option . . . . . . . 1=Create, 2=Change, 3=Copy, 4=Delete * * 5=Display, 6=Print definition * * 8=Run in batch 9=Run * * Query . . . . . . . . QNAME Name, F4 for list * * Library . . . . . . QGPL Name, *LIBL, F4 for list * * * * * * * * * * * * * * * * * * * * * * * * * * * * F3=Exit F4=Prompt F5=Refresh F12=Cancel * * Query option processing completed successfully. * * * 可用F3键(退出),返回到AS/400主菜单,完成这次练习。
本文档为【AS400中文培训QUERY-7】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_842972
暂无简介~
格式:doc
大小:158KB
软件:Word
页数:83
分类:互联网
上传时间:2017-09-01
浏览量:43