テーブル作成
1 |
A* 得意先マスター・ファイル
A UNIQUE
A*
A R TKMASR TEXT('得意先マスター・レコード')
A*
A TKBANG 5A COLHDG('得意先' '番号')
A TKNAKN 20A COLHDG('得意先' '仮名')
A TKNAKJ 20O COLHDG('得意先' '漢字')
A TKADR1 20O COLHDG('住所1')
A TKADR2 20O COLHDG('住所2')
A TKTIKU 2A COLHDG('地区' 'コード')
A TKPOST 6A COLHDG('郵便番号')
A TKTELE 13A COLHDG('電話番号')
A TKGURI 9P 0 COLHDG('当月' '売上高')
A TKNURI 9P 0 COLHDG('当年' '売上高')
A TKZURI 9P 0 COLHDG('前年' '売上高')
A TKUZAN 9P 0 COLHDG('売掛金' '残高')
A TKGEND 9P 0 COLHDG('信用' '限度額')
A TKNYUK 6P 0 COLHDG('最終' '入金日')
A TKSIME 1A COLHDG('締め日' 'コード')
A*
A K TKBANG
|
上記ソースを作成し、
CRTPF
でコンパイル。
画面定義の作成
1 |
A*得意先マスター修正
A*<<ファンクションキーの定義>>
A*-----------* F3 (*INKC)
A CF03
A*****************************************************************
A** G0 ヘッダー画面 **
A*****************************************************************
A R G0 TEXT('ヘッダー画面')
A*
A G0PGID 10A O 1 2TEXT('PGMID')
A*
A 1 31'得意先マスター修正'
A DSPATR(RI HI)
A*
A G0WSNO 10A O 1 60TEXT('端末番号')
A*
A 1 71DATE
A EDTWRD('0 / / ')
A 2 71TIME
A EDTWRD('0 : : ')
A*****************************************************************
A** G1 コード入力画面 **
A*****************************************************************
A R G1 TEXT('見出し画面')
A OVERLAY
A*
A 3 2'得意先番号'
A COLOR(WHT)
A*
A G1BANG 5A B 3 15TEXT('得意先番号')
A 70 DSPATR(PR)
A*
A G1NAKJ 20O O 3 22TEXT('得意先名')
A*****************************************************************
A** G2 修正画面 **
A*****************************************************************
A R G2 TEXT('修正画面')
A OVERLAY
A*<<ファンクションキーの定義>>
A*-----------* F12 (*INKL)
A CF12
A*
A 5 4'住所'
A COLOR(WHT)
A G2ADR1 20O B 5 15TEXT('住所1')
A G2ADR2 20O B 5 36TEXT('住所2')
A*
A 7 4'地区'
A COLOR(WHT)
A G2TIKU 2 B 7 15TEXT('地区')
A 71 DSPATR(RI PC)
A*
A 9 4'締日'
A COLOR(WHT)
A G2SIME 1 B 9 15TEXT('締日')
A 72 DSPATR(RI PC)
A*
A 11 4'売掛金残高'
A COLOR(WHT)
A G2UZAN 9 0B 11 17TEXT('売掛金残高')
A*****************************************************************
A** G5 コード入力画面 **
A*****************************************************************
A R G5 TEXT('コマンド指示画面')
A OVERLAY
A*
A 23 2'実行 =OK F3=終了 +
A F12= 取消'
A COLOR(PNK)
A* EDTWRD(' , , 0 -')
A*****************************************************************
A** G6 エラーメッセージ画面 **
A*****************************************************************
A R G6 TEXT('エラーメッセージ画面')
A OVERLAY
A*
A 80 EMSG 32 24 48TEXT('エラーメッセージ')
A DSPATR(RI BL)
|
上記ソースを作成し、
CRTDSPF
でコンパイル。
帳票出力プログラムの作成
1 |
H********************************************************
H* 使用標識
H* 70 : 得意先番号プロテクト
H* 71 : 地区コードエラー
H* 72 : 締日コードエラー
H* 80 : 共通エラー標識
H*
H* 90 : 得意先M READ INVALID
H*
H********************************************************
H Y
F********************************************************
F* ファイル情報
F********************************************************
F*-----------------------------------* 得意先マスター
FTKMASP UF E K DISK
F*-----------------------------------* 得意先マスター一覧表
FENS020DSCF E WORKSTN
E*=======================================================
E* ARRAY TABLE
E*=======================================================
E* エラーメッセージ
E A#ER 1 3 32
I********************************************************
I** I仕様書
I********************************************************
I*<<プログラム状況データ構造>>
I SDS
I* * プログラムID
I 1 10 #PGID
I* * ライブラリー名
I 81 90 #LIBNM
I* * ジョブ名
I 244 253 #JOBNM
I* * ユーザー名
I 254 263 #USER
I* * ジョブ番号
I 264 269 #JOBNO
C********************************************************
C** 複合キー指定 **
C********************************************************
C*得意先マスターキー
C K#TKMS KLIST
C KFLD K#TKNO 5 得意先番号
C********************************************************
C** 得意先マスター修正 **
C********************************************************
C*初期処理
C EXSR @INIT
C*メイン処理
C STATUS DOWNE'9'
C EXSR @MAIN
C ENDDO
C*終了処理
C EXSR @END
C********************************************************
C** 1.0 @INIT 初期処理
C********************************************************
C @INIT BEGSR
C*
C MOVEL'1' STATUS 1 画面遷移STS CD
C MOVEL#PGID G0PGID プログラムID
C MOVEL#JOBNM G0WSNO 端末番号
C MOVEL*BLANK EMSG エラーメッセージ
C*<<タイトル画面出力>>
C WRITEG0
C*
C ENDSR
C********************************************************
C** 2.0 @MAIN メイン処理
C********************************************************
C @MAIN BEGSR
C*
C SELEC
C* 得意先番号・入力画面処理
C STATUS WHEQ '1'
C EXSR @INPG1
C* 得意先マスター・修正画面処理
C STATUS WHEQ '2'
C EXSR @INPG2
C* その他
C OTHER
C*
C ENDSL
C*
C ENDSR
C********************************************************
C** 2.1 @INPG1 得意先番号入力
C********************************************************
C @INPG1 BEGSR
C*
C MOVEL*OFF *IN70
C WRITEG0 タイトル画面表示
C WRITEG5 コマンド指示
C WRITEG6 エラー画面
C*コード入力画面G1のWRITE READ
C EXFMTG1
C MOVEL*OFF *IN80
C* 終了キーF3押下判定
C SELEC
C *INKC WHEQ *ON
C MOVEL'9' STATUS 画面遷移 STS CD
C* その他
C OTHER
C* 入力した得意先番号のマスター存在チェック
C MOVELG1BANG K#TKNO 得意先番号
C K#TKMS CHAINTKMASR 90
C *IN90 IFEQ *ON
C MOVELA#ER,1 EMSG
C MOVEL*ON *IN80
C MOVEL'1' STATUS
C ELSE
C* 入力した得意先の内容を画面へ転送
C MOVELTKNAKJ G1NAKJ
C MOVELTKADR1 G2ADR1
C MOVELTKADR2 G2ADR2
C MOVELTKTIKU G2TIKU
C MOVELTKSIME G2SIME
C* MOVELTKUZAN G2UZAN
C Z-ADDTKUZAN G2UZAN
C MOVEL'2' STATUS
C ENDIF
C*
C ENDSL
C*
C ENDSR
C********************************************************
C** 2.2 @INPG2 得意先M修正
C********************************************************
C @INPG2 BEGSR
C*
C MOVEL*ON *IN70
C WRITEG0 タイトル画面表示
C WRITEG0 タイトル画面表示
C WRITEG5 コマンド指示
C WRITEG6 エラー画面
C*修正画面G2のWRITE READ
C EXFMTG2
C MOVEL*OFF *IN80
C* 終了キーF3押下判定
C SELEC
C *INKC WHEQ *ON
C MOVEL'9' STATUS 画面遷移 STS CD
C* 取り消しF12押下判定
C *INKL WHEQ *ON
C MOVEL'1' STATUS 画面遷移 STS CD
C* その他
C OTHER
C* 入力した内容をチェックする
C EXSR @CHKG2
C *IN80 IFEQ *ON
C MOVEL'2' STATUS
C ELSE
C* 入力した得意先の内容を得意先マスターへ転送
C MOVELG2ADR1 TKADR1
C MOVELG2ADR2 TKADR2
C MOVELG2TIKU TKTIKU
C MOVELG2SIME TKSIME
C* MOVELG2UZAN TKUZAN
C Z-ADDG2UZAN TKUZAN
C UPDATTKMASR
C MOVEL'1' STATUS
C*
C CLEARG1
C CLEARG2
C ENDIF
C* *
C ENDSL
C*
C ENDSR
C********************************************************
C** 2.2.1 @CHKG2 入力内容チェック
C********************************************************
C @CHKG2 BEGSR
C*
C SETOF 7172
C* <<地区コードチェック>>
C G2TIKU IFGE '90'
C G2TIKU ANDLE'99'
C SETON 8071
C MOVELA#ER,2 EMSG
C ENDIF
C* <<締日コードチェック>>
C G2SIME IFGE '1'
C G2SIME ANDLE'9'
C ELSE
C SETON 8072
C MOVELA#ER,3 EMSG
C ENDIF
C* *
C ENDSR
C********************************************************
C** @END 終了処理
C********************************************************
C @END BEGSR
C*
C SETON LR
C RETRN
C*
C ENDSR
C********************************************************
** A#ER
得意先マスター未登録です。
地区コードが不正です。
締日は1〜9を入力してください
|
上記ソースを作成し、
CRTRPGPGM
でコンパイル。
罫線表示する場合
OPNBOX
で、ToolBoxのメニューを表示。
1.プログラム開発/保守メニュー
を選択し、
4.画面ファイルの罫線定義
を選択する。
ファイル: XXXXXXD ライブラリ:XXXXOBJ
のように、オブジェクトファイルを指定する。
画面を操作して、罫線をひく
[通知用URL]
Tweet
最終更新時間:2009年07月01日 22時32分04秒