Smart/400开发上手2: COBOL批处理程序处理过程
开发目的:
1、建立DB2数据库表;
2、建立逻辑视图;
3、通过Cobol程序将一个源数据表的数据通过一定公式计算后导出到另一个目的数据库表
源数据表:TIM3PF
目的数据表:TIM4PF
4、在AS400中建立批处理,处理Cobol程序
预先准备:建立Workunit、为用户建立权限 (略)
登陆400环境,开发需要更换company,比如开发是0,按F5刷新。
Create DataSet
注意:
smart work unti 的severity control输入9
DataSet subsystem:lifeacs
选field的快捷键:F4 ,选中用*
1、第一步,建立2个物理文件PF
TIM3PF、TIM4PF
选择字段(可以用快捷键F4),比如AGNTNUM, ADDRESS
编译物理文件:
> CB MEMBER(TIM3PF) TYPE(*PF) WORKU(TIM003)
> CB MEMBER(TIM4PF) TYPE(*PF) WORKU(TIM003)
2、第二步,建立2个逻辑视图LF
TIM3、TIM4
编译逻辑视图:
> CB MEMBER(TIM3) TYPE(*LF) WORKU(TIM003)
> CB MEMBER(TIM4) TYPE(*LF) WORKU(TIM003)
编译完毕后可以看看逻辑文件的结构:
命令:
BR TIM3SKM *cpy
结果:
Columns . . . : Browse CL4DEVCPY/QLBLSRC
SEU==> TIM3SKM
FMT ** ...+... ...+... ...+... ...+... ...+... ...+... ...+...
*************** Beginning of data *************************************
. *
. *(c) Copyright CSC Corporation Limited .....
. * All rights reserved. CSC Confidential.
. *
. TIM3-PARAMS.
. TIM3-FUNCTION PIC X().
. TIM3-STATUZ PIC X().
. TIM3-LEVEL-ID.
. TIM3-GEN-DATE PIC ().
. TIM3-GEN-TIME PIC ().
. TIM3-VN PIC X().
. TIM3-DATA-LOCATION PIC X().
. TIM3IO PIC X().
. TIM3-RRN PIC () COMP-.
. TIM3-FORMAT PIC X().
. *
. TIM3-DATA-AREA.
. TIM3-DATA-KEY PIC X().
. TIM3REC-KEY-DATA REDEFINES TIM3-DATA-KEY.
. FILLER PIC X().
. *
. TIM3-NON-KEY PIC X().
. TIM3REC-NON-KEY-DATA REDEFINES TIM3-NON-KEY.
. TIM3-JOB-NAME PIC X().
. TIM3-USER-PROFILE PIC X().
. TIM3-DATIME PIC X().
. TIM3-AGNTNUM PIC X().
. TIM3-ADDRESS PIC X().
. *
****************** End of data ****************************************
3、为DB2源数据库TIM3PF表灌数据
insert into "CL4DEVDTA"."TIM3PF"
(AGNTNUM, ADDRESS, USER_PROFILE, JOB_NAME, DATIME)
values ('003','珠海市', 'CHN0011484', 'J_ACSAG109', CURRENT DATE)
结果:

返回值:
O-K (****) - Successful completion of database operation
MRNF - Record with key given was not found for read request (or no record is currently
stored)
ENDP - End / beginning of file reached when reading sequentially
HELD - Record required for updating is already held by another user
DUPR - The attempted addition of another record to the data set has failed because the
system has detected that the addition of the record would cause a duplicate key
in an access method that is defined as requiring unique keys
FULL - The attempted addition of another record to the data set has failed because the
current record number limit has been reached
BCTL - The key is blank when a non-sequential read/write has been requested
FUNC - Invalid function parameter passed to I/O module
IVRF - Invalid record format passed to I/O module
?? - An error has been detected when processing the database access request
Smart/400开发上手2: COBOL批处理程序处理过程的更多相关文章
- Smart/400开发上手5: Cobol开发标准
ENVIRONMENT DIVISION. CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-AS400.OBJECT-COMPUTER. IBM-AS400. 这 ...
- Smart/400开发上手3: 练习实践
练习题 在2006年1月1日之前入职且在职的营销员,给予年资补贴2000元: 符合以上条件的,再按以下标准一次性发放职级补贴: 职级代码 简称 补偿金额 A1 AD 6000 B1 SBM 5000 ...
- Smart/400开发上手1:入门
1.介绍 Smart/400是在AS/400之上的开发平台,管理开发.运维的全生命周期. 2.设计基础 Introducing Fields Smart通过字段字典Field Dictionary来存 ...
- Smart/400开发上手4: 调试Cobol代码 (DEBUG with QBATCH)
Step1:Compile Cobol source CB TIM07 using *SRCDBG option例如:CB MEMBER(TIM07) OPTION(*SRCDBG) WORKU(TI ...
- 微信小程序快速开发上手
微信小程序快速开发上手 介绍: 从实战开发角度,完整系统地介绍了小程序的开发环境.小程序的结构.小程序的组件与小程序的API,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...
- 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇)
系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 扫码体验,先睹为快 可以扫描下微信小程序的 ...
- SharePoint使用BCS开发你第一个应用程序(三)
SharePoint使用BCS开发你第一个应用程序(三) 创建外部内容类型. 创建外部内容类型有三种不同方式: 1. 在记事本上手写XML代码(不推荐). 2. 使用SharePoin ...
- 微信小程序的开发:通过微信小程序看前端
前言 2016年9月22日凌晨,微信官方通过"微信公开课"公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真 ...
- 微信小程序开发教程 #043 - 在小程序开发中使用 npm
本文介绍了如何在微信小程序开发中使用 npm 中包的功能,大大提高微信小程序的开发效率,同时也是微信小程序系列教程的视频版更新. 微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发 ...
随机推荐
- 2019.01.13 loj#6515. 贪玩蓝月(线段树分治+01背包)
传送门 题意简述:有一个初始为空的双端队列,每次可以在队首和队尾插入或弹出一个二元组(wi,vi)(w_i,v_i)(wi,vi),支持询问从当前队列中选取若干个元素是的他们的和对 MODMODM ...
- 第11章:MongoDB-CRUD操作--文档--查询
①语法 db.collection.find(query, projection) ②参数 query :可选,使用查询操作符指定查询条件 projection :可选,使用投影操作符指定返回的键.查 ...
- CodeForces 916B Jamie and Binary Sequence (changed after round) (贪心)
题意:给定两个数字n,m,让你把数字 n 拆成一个长度为 m 的序列a1,a2,a3...am,并且∑2^ai = n,如果有多组,要求序列中最大的数最小,然后再相同就要求除了最大数字典序最大. 析: ...
- what is a resolver
resolver [rɪ'zɒlvə] 解析器 ViewResolver The ViewResolver provides a mapping between view names and actu ...
- 一份不太简短的LaTeX模板
编译环境: Ubuntu16.04 texllive2016 sublime text3 + latextools 该模板使用与自己写文档,记笔记,记录代码,写作业等等. %!TEX program ...
- bzoj2938(ac自动机)
刚学了ac自动机,去hzwer上找了道练习题: 串是安全的就说明ac自动机不会找到匹配,考虑ac自动机的匹配过程: 我们把val等于1的点删掉和fail指针指向被删掉的点删掉: 如果剩下的图有环,就有 ...
- XXX is not mapped
这个问题绊了我两次跟头,作为一个3年多开发经验的人,甚是尴尬 java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntax ...
- XA: 事务和两阶段提交
本文原文连接:http://blog.csdn.net/bluishglc/article/details/7612811 ,转载请注明出处! 1.XA XA是由X/Open组织提出的两阶段提交协议, ...
- 【MySQL】死锁问题分析
1.MySQL常用存储引擎的锁机制: MyISAM和MEMORY采用表级锁(table-level locking) BDB采用页面锁(page-level locking)或表级锁,默认为页面锁 ...
- CGLIB介绍
一.什么是CGLIB? CGLIB是一个功能强大,高性能的代码生成包.它为没有实现接口的类提供代理,为JDK的动态代理提供了很好的补充.通常可以使用Java的动态代理创建代理,但当要代理的类没有实现接 ...