开发目的:
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批处理程序处理过程的更多相关文章

  1. Smart/400开发上手5: Cobol开发标准

    ENVIRONMENT DIVISION. CONFIGURATION SECTION.SOURCE-COMPUTER. IBM-AS400.OBJECT-COMPUTER. IBM-AS400. 这 ...

  2. Smart/400开发上手3: 练习实践

    练习题 在2006年1月1日之前入职且在职的营销员,给予年资补贴2000元: 符合以上条件的,再按以下标准一次性发放职级补贴: 职级代码 简称 补偿金额 A1 AD 6000 B1 SBM 5000 ...

  3. Smart/400开发上手1:入门

    1.介绍 Smart/400是在AS/400之上的开发平台,管理开发.运维的全生命周期. 2.设计基础 Introducing Fields Smart通过字段字典Field Dictionary来存 ...

  4. Smart/400开发上手4: 调试Cobol代码 (DEBUG with QBATCH)

    Step1:Compile Cobol source CB TIM07 using *SRCDBG option例如:CB MEMBER(TIM07) OPTION(*SRCDBG) WORKU(TI ...

  5. 微信小程序快速开发上手

    微信小程序快速开发上手 介绍: 从实战开发角度,完整系统地介绍了小程序的开发环境.小程序的结构.小程序的组件与小程序的API,并提供了多个开发实例帮助读者快速掌握小程序的开发技能,并能自己动手开发出小 ...

  6. 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇)

    系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 扫码体验,先睹为快 可以扫描下微信小程序的 ...

  7. SharePoint使用BCS开发你第一个应用程序(三)

    SharePoint使用BCS开发你第一个应用程序(三) 创建外部内容类型.         创建外部内容类型有三种不同方式: 1. 在记事本上手写XML代码(不推荐). 2. 使用SharePoin ...

  8. 微信小程序的开发:通过微信小程序看前端

    前言 2016年9月22日凌晨,微信官方通过"微信公开课"公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真 ...

  9. 微信小程序开发教程 #043 - 在小程序开发中使用 npm

    本文介绍了如何在微信小程序开发中使用 npm 中包的功能,大大提高微信小程序的开发效率,同时也是微信小程序系列教程的视频版更新. 微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发 ...

随机推荐

  1. 整合SPRING CLOUD云服务架构 - 企业分布式微服务云架构构建

    整合SPRING CLOUD云服务架构 - 企业分布式微服务云架构构建 1.   介绍 Commonservice-system是一个大型分布式.微服务.面向企业的JavaEE体系快速研发平台,基于模 ...

  2. socketserver模块实现并发和连接合法性验证

    一.socketserver模块 1.sockeserver的源码流程 2.简单的使用 socketserver服务端 import socketserver class MyServer(socke ...

  3. 1-9-假期训练心得(dp+bfs)

    题目一:传送门 思路:就是简单的bfs,注意仔细审题,加上对转弯次数的判断. 题目二:传送门 思路:简单dp,记录每一秒每个位置接到的大饼的数量. 状态转移方程:dp[i][j]=max(dp[i][ ...

  4. poj-3928(树状数组)

    题目链接:传送门 题意:n个乒乓球运动员要互相练习,都去一个运动员那里比赛,举办训练的运动员不能水平最高或最低. 现在给出n个运动员的水平,求出最终有多少种组合. 思路:先对运动员进行离散化,然后进行 ...

  5. TCP/IP协议(6):传输层之UDP

    一. UDP用户数据报协议,它是一个无连接的,面向数据报的协议,它不提供可靠性但传输速度比TCP要快. UDP数据报中的“UDP长度”为两个字节,所以我们要发送的UDP数据最多支持65507大约68K ...

  6. Solidity合约:玉米生产溯源

    实现思路: 首先用地址与每个结构进行映射,将关键信息储存在结构体中:或者将关键信息在外部通过json储存,内部储存对应的hash值: 使用issue函数表示:玉米地中收获足够数量的玉米并进行记录: 使 ...

  7. Promise.all函数的使用

    Promise.all([this.getCity('guess'),this.getCity('hot'),this.getCity('group')]).then(res=>{ // con ...

  8. 工作总结(二):Web Design

    PHP框架:CakePHP 前端框架:Bootstrap Payment Data Transfer:https://developer.paypal.com/docs/classic/paypal- ...

  9. Raft协议学习笔记

    目录 目录 1 1. 前言 1 2. 名词 1 3. 什么是分布式一致性? 3 4. Raft选举 3 4.1. 什么是Leader选举? 3 4.2. 选举的实现 4 4.3. Term和Lease ...

  10. Node的关系型数据库ORM库:bookshelf

    NodeJs 关系数据库ORM库:Bookshelf.js bookshelf.js是基于knex的一个关系型数据库的ORM库.简单易用,内置了Promise的支持.这里主要罗列一些使用的例子,例子就 ...