-
- COBOL数组操作
- Weather:有点凉
- 2009-09-14
下面是数组的例子:
01 RECORD-X.
03 MONTH OCCURS 12 TIMES.
05 NAME PIC X(12).
05 DAYS OCCURS 31 TIEMS.
07 COMMENT PIC X(20).
07 TEMP-HI PIC S999.
07 TEMP-LO PIC S999.
77 CURRENT-DAY PIC 99.
调用表示如下:
MONTH(5) : 包含NAME 和 DAYS表格的组项目。
NAME OF MONTH(5) :基本字母数字项目,长度为12个字符。
NAME(5) (1:3) 上述第5个项目的前3个字符。
TEMP-HI(1,31) 基本数字项目,长度为3个字符。前一个参数是在MONTH数组中的位置,后一个参数是在DAYS数组中的位置。相当于MONTH[1].DAYS[31].TEMP-HI。
COMMENT OF RECORD-X(5,CURRENT-DAY)(11) 基本字母数字项目第五个月的CURRENT-DAY的COMMENT字段的最后10个字符。03 TEXT PIC XXX OCCURS 1 TO 12 TIMES DEPENDING ON IX.
定义一个变长的数组。定义的长度是12,实际以IX为准,若IX为10,则TEXT的长度就是30。。。。- Views(6333) | Comments(0) | In AS400について
-
- COBOL文件操作
- Weather:有点凉
- 2009-09-14
要在COBOL中使用文件,要在3个不同的部中放上信息。
环境部,要有程序使用的每个文件的文件控制项目(FILE-CONTROL)。这个项目将程序中使用的文件名与程序外的实际文件联系起来。这些项目还定义文件的组织和访问方式。
数据部,要有每个文件的文件描述符(FD)项目,就是数据定义。
过程部,放上处理语句,OPEN,READ,WRITE,DELETE等。
环境部中主要是FILE-CONTROL和I-O-CONTROL.I-O-CONTROL很少使用。
SELECT [OPTIONAL] file-name ASSIGN TO DEV/FILE
[RESERVE N [AREA/AREAS]]
[FILE STATUS IS VAR]
SELECT必须是第一句,其他顺序无关。file-name是程序中传递使用的文件名,相当于实际文件的一个别名。OPTIONAL用于执行可能不存在的文件。
ASSIGN将file-name连接到实际的外部设备或文件。(TO好像可以省略。)
RESERVE指定文件缓冲区。
FILE STATUS指定一个变量存放文件状态,这个变量应该已在WORKING-STORAGE SECTION中定义。。。。- Views(6390) | Comments(0) | In AS400について
-
- COBOL数据类型
- Weather:有点凉
- 2009-09-14
计息是银行的一项重要业务,包括日常代理客户收、付计算客户利息和年度计息等。目前,这些工作大多数是在IBM ES9000主机的SAFE应用系统平台上进行,该系统联机程序和联机计息程序是用IBM 370汇编语言实现的。为方便汇编语言读写,在VSAM文件存储的数据中,数据存放格式进行了特殊的定义。如日期存放采用X(3)型,01年03月15 日,存入EBCD码为X‘010315’。在进行年度计息时,为了实现各种复杂的运算工作,一般采用COBOL语言来实现各种运算。而采用COBOL语言 读取X(3)型数据时,读出的是字符型数据,不能直接进行运算,必须转换为COBOL数据类型的数据后才能进行相应处理。如刚才的X‘010315’,需 要转换为内部十进制数据X‘0010315C’。本文介绍一种用COBOL语言实现字符型X(3)与内部十进制数据相互转换的方法。
由X(3)型转换为内部十进制
由 于日期数据总是大于零,在COBOL语言的工作单元节定义变量DATE-FIRST后,再追加定义COBOL语言的最小数据单元X‘000C’,即十进制 12。由于重定义DATE-CASE为DATE-CHANGE后,DATE-CHANGE是原日期数据的1000倍,于是要在过程部将 DATE-CHANGE除以1000。
首先,在COBOL程序WORKING-STORAGE SECTION. 中定义如下内容。。。- Views(7360) | Comments(0) | In AS400について
-
- TeamBuilding
- Weather:很热
- 2009-07-27
今天 晚上Nice-Vプロジェクト組搞teambuiding,终于一组60人全聚齐了,其实还是认识的还是那么几个,不相关的チームの人还是不认识,最多新认识那么不屈指也可数的几个而已。
但是自从去年经济危机以来,已经足足有将近一年没有这样的活动了,即使现在这次活动也不是本公司搞的,而我是以IBM CSP的身分参加的这么一次活动,但我觉得这样的活动真的很不错,如其名般的可以很好的buiding team,这就像日本的週末のアフター5,该玩就玩该玩就玩,这是为了之后更有活力的投入工作。。。。
- Views(6329) | Comments(0) | In Work+Study
-
- RPG3常用操作码
- Weather:None
- 2009-07-06
命令 説明
ACQ 装置獲得(通信用)
ADD 加算
ANDXX AND条件追加
BEGSR サブルーチンの始め
BITOF ビットをオフにセット
BITON ビットをオンにセット
CABXX 比較および分岐
CALL プログラムの呼出し
CASXX サブルーチンの条件つき呼出し
CAT 2つのストリングの連結
CHAIN ファイルからのランダム検索
CHECK 文字検査
CHEKR 逆向きの検査
CLEAR 消去(モードクリア)
CLOSE ファイル・クローズ
COMIT コミット(更新確定)
COMP 比較
DEBUG デバッグ機能
DEFN フィールド定義
DELET レコードの削除
DIV 除算
DO 繰り返し実行
DOUXX 繰り返し実行(DO UNTIL)
DOWXX 繰り返し実行(DO WHILE)
DSPLY 表示機能
DUMP プログラム・ダンプ
ELSE 条件不成立の場合
ENDYY 構造化グループの終り
ENDSR サブルーチンの終り
EXCPT 演算時サイクル外出力
EXFMT 書出し後読取り形式
EXSR サブルーチンの呼出し
FEOD データの強制終了
FORCE 特定ファイルの強制読取り
FREE プログラムの非活動化
GOTO 強制分岐
IFXX 条件分岐
IN データ域の検索
ITER 繰り返し
KFLD キーの各部分の定義
KLIST 複合キーの定義
LEAVE DOグループからの抜け出し
LOKUP テーブルまたは配列要素の探索
MHHZO 上位桁から上位桁へのゾーンの転送
MHLZO 上位桁から下位桁へのゾーンの転送
MLHZO 下位桁から上位桁へのゾーンの転送
MLLZO 下位桁から下位桁へのゾーンの転送
MOVE 移動
MOVEA 配列の転送
MOVEL 左につめて転送
MULT 乗算
MVR 剰余の転送
NEXT 次
OCUR データ構造のオカレンスの設定 / 獲得
OPEN 処理用にファイルのオープン
ORXX OR条件追加
OTHER その他の選択
OUT データ域の書出し
PARM パラメーターの識別
PLIST パラメーター・リストの識別
POST ポスト
READ レコードの読取り
READC 次の変更済みレコードの読取り
READE 等しいキーの読取り
READP 前のレコードの読取り
REDPE キーが等しい前のものの読取り
REL 解放
RESET リセット
RETRN 呼出し元への戻り
ROLBK ロール・バック
SCAN 走査ストリング
SELEC 選択グループの始め
SETGT より大きいレコードへのセット
SETLL 下限のセット
SETOF 標識をオフにセット
SETON 標識をオンにセット
SHTDN 遮断
SORTA 配列の分類
SQRT 平方根
SUB 減算
SUBST サブストリング
TAG タグ
TESTB ビットのテスト
TESTN 数字のテスト
TESTZ ゾーンのテスト
TIME 時刻取得
UNLCK データ域のアンロックまたはレコードの解放
UPDAT 既存のレコードの変更
WHXX 真の場合に選択
WRITE 新しいレコードの作成
XFOOT 配列要素の合計
XLATE 変換
Z-ADD ゼロにして加算
Z-SUB ゼロにして減算- Views(5333) | Comments(0) | In AS400について
