KS60790 詳細設計書
| 項目 |
内容 |
| プログラムID |
KS60790(ソース名 KS60790P) |
| プログラム名 |
郵送集約 請求一覧(集約代表別サマリー)作成・配信(縦バージョン) |
| 言語 |
PL/I(OPTIONS(MAIN))。パターン PPB0010P |
| 業務ID |
NSSQNN50(ソースの +DC GYOM) |
| 起動JOB |
DAISEQ4J ステップ No.25(事業所用配信)・No.27(エコデリバー用配信)。同じプログラムを2回実行 |
| 作成日 |
2026/10/13(1.4 を追加し「明細」の用語を「請求先行」に訂正) |
| 作成方法 |
ソースコードからのリバース作成 |
前提
- INCLUDE の SQALLHED、KANBASED(顧客基本マスター)、CORPOMAN(顧客法人管理マスター)、DDPTENMS(店所マスター)、BANKMAST(銀行マスター)は、添付ソースを展開して解析した(付録B~F)。
- 次はブラックボックス(BB)として扱う。
- 外部手続き LSS0051(引数:店所コード4桁 → 店名14バイト、3バイト)。店所コードから店名を取得すると推定。JCL の VETENCD(SEAD.TENSCODE.CDMASTER)を使うと推定(KS60144P の LSS0050 と同系統)。
- VKKONAM(VKAD.KONAMMST.DTMASTER):レイアウトはソース内で KOAREA(荷主コード7+荷主名14+空き19=40バイト)と定義されている。荷主名マスターと推定。
- 帳票の印刷イメージ(6章)の値はすべて架空。桁位置はソースの印字行定義から算出した。
- ★印は、ソースから読み取れる潜在的な問題点または注意点を示す。
1. 概要
1.1 機能
ソース先頭のコメント:「請求明細ヘッダーデータを読み集約コードでサマリーし、合計額および顧客別データを出力する。縦バージョン」
KS60780P が作った「郵送集約の対象になる請求先の見出しデータ」を、集約代表ごとにまとめ、代表あての**請求一覧(集約請求書)**を印刷する。
- 入力を集約代表コード(区分の1~7桁目。KS60780P が設定)で区切る。
- 区切りごとに、集約代表の**顧客基本マスター(KANBASED)と顧客法人管理マスター(CORPOMAN)**を読み、代表の名称・住所・郵便番号・電話・振込口座を取得する。
- 代表扱い店(区分の8~11桁目)の店所マスターから、発行店の略称・〒・住所・電話を取得する。
- 振込銀行を銀行マスターで引き、銀行名・支店名を取得する。
- 代表にまとめられる各請求先(代表自身を含む)の運賃・料金・消費税・保険料・合計を一覧にし、最後に合計を印字する。1ページ30件。
- 終了時に、銀行マスターに該当がなかった件数を表示する。
1.2 処理概要図
KS60780P → SORT4(代表扱い店・集約代表・扱い店の順)
│
▼
WORK0120/WORK0130 ──▶ INFILE ──▶ KS60790P ──▶ OUTFILE ──▶ SYSOUT(電子帳票)
▲ ▲ ▲ ▲ ▲ No.25:E,KS607902(事業所用)
VKKANBS(顧客基本) ──────────────┘ │ │ │ │ No.27:E,KS607901(エコデリバー用)
VKCORPO(顧客法人管理)──────────────┘ │ │ │
VKTENMS(店所) ─────────────────────┘ │ │
VKBANKM(銀行) ───────────────────────┘ │
VKKONAM(荷主名) ─────────────────────────┘ LSS0051(BB:店名取得)… VETENCD
1.3 JCL 上の2回の実行の違い
| 観点 |
No.25 |
No.27 |
| JCL コメント |
「KS60790P(事業所用配信)」 |
「KS60790P(エコデリバー用配信)」 |
| INFILE |
TEMP.KS60750J.WORK0120
|
TEMP.KS60750J.WORK0130
|
| 入力の元 |
No.22 KS60780P(優先印刷マスターに有る荷主)→ No.24 SORT4 |
No.23 KS60780P(優先印刷マスターに無い荷主)→ No.26 SORT4 |
| OUTFILE |
SYSOUT=(E,KS607902,99)、RECFM=FA、LRECL=133 |
SYSOUT=(E,KS607901,99)、同左 |
| マスター DD |
VKKANBS、VKTENMS、VKBANKM、VKKONAM、VKCORPO、VETENCD(同じ) |
同左 |
| 帳票の様式 |
同じ(プログラムが同じ) |
同じ |
- プログラム・マスター・帳票の様式は同じで、入力(どの請求先の集約か)と SYSOUT のライター名だけが違う。
- 同じ集約代表のグループでも、代表と配下の優先印刷マスターの登録が違うと、両方の帳票に分かれて載る(KS60780 設計書 2.4・6.6)。その場合、それぞれの帳票の合計はグループの一部だけの合計になる。
1.4 入力データと帳票の「一覧」の関係(送り状明細は無い)
入力(WORK0120/0130)には、見出しデータ(請求先ごとの鑑)しか入っていない。送り状ごとの明細データ(データID 01、21、22、45 等)は、KS60770P の段階で捨てられている。
| 工程 |
残るデータ |
| KS60770P |
全店所の請求明細から、見出しデータ(ID 00)だけを抽出(請求額≠0) |
| KS60780P |
そのうち、郵送集約の対象になる荷主の見出しだけ(本締のみ。データIDを 00=代表/99=配下に書き換え) |
| KS60790P(本PG) |
入力の1レコード=1請求先の鑑
|
そのため、帳票の一覧部(16~45行目)の1行は送り状1件ではなく、請求先1件であり、金額はその請求先の鑑の金額(請求書の「ご請求額」の内訳)である。
| 一覧の欄 |
入力項目(見出しデータの鑑) |
| 請求先番号 |
SDTASQNO(荷主7桁+枝番5桁) |
| 荷主名 |
荷主名マスター(VKKONAM)の略称 |
| 扱い店名 |
SDTACKTT を LSS0051 で店名に変換 |
| 運賃 |
SDTAUNTI(鑑:運賃) |
| 料金 |
SDTARYOK(鑑:料金) |
| 消費税 |
SDTATTAX(鑑:消費税) |
| 保険料 |
SDTAHOKR(鑑:保険料) |
| 合計 |
上の4項目の和(=KS60151P 等の請求書の「ご請求額」と同じ式) |
- 帳票全体は「集約代表あての請求一覧」で、代表自身と、代表にまとめられる各請求先の請求額を1行ずつ並べ、合計を出す形になる。個々の送り状の内容は、各請求先の請求書(KS60144P → KS60151P/KS60152P)にしか出ない。
- KS60780P の1対1マッチングにより、1荷主につき1請求先(最初の枝番)しか入力に残らない(KS60780 設計書 8章 No.1)。同じ荷主の2件目以降の請求先は、この一覧にも載らない。
- 本書の旧版で「明細」と書いていた箇所は、この「請求先行」の意味である(本版で用語を改めた)。
2. 外部インターフェース
2.1 ファイル一覧
| DD名 |
編成/属性(DCL) |
入出力 |
内容 |
読込/書出領域 |
キー |
| INFILE |
RECORD INPUT(順次・可変長) |
入力 |
郵送集約対象の見出しデータ |
INAREA CHAR(560) VAR(SQALLHED) |
- |
| VKKANBS |
VSAM KEYED DIRECT INPUT |
入力 |
顧客基本マスター |
KANAREA(KANBASED 1500バイト) |
集約代表コード7桁 |
| VKCORPO |
VSAM KEYED DIRECT INPUT |
入力 |
顧客法人管理マスター |
CORAREA(CORPOMAN 120バイト) |
集約代表コード7桁 |
| VKTENMS |
VSAM KEYED DIRECT INPUT |
入力 |
店所マスター |
TENAREA(DDPTENMS 170バイト) |
代表扱い店4桁 |
| VKBANKM |
VSAM KEYED DIRECT INPUT |
入力 |
銀行マスター |
BNKAREA(BANKMAST 200バイト) |
銀行コード7+店所4 |
| VKKONAM |
VSAM KEYED DIRECT INPUT |
入力 |
荷主名マスター(推定) |
KOAREA(40バイト) |
荷主コード7桁 |
| OUTFILE |
RECORD OUTPUT(ASA 制御文字付き) |
出力 |
請求一覧(帳票) |
LST1~LSTB(133バイト) |
- |
- VSAM 5本の OPEN 文はない。最初の READ で暗黙にオープンされる。
- JCL に SYSPRINT の DD はない。DISPLAY はジョブログに出る。
2.2 JCL との対応(No.25/No.27 共通部分)
| DD名 |
データセット |
備考 |
| VKKANBS |
VK47.KANBASED.DTMASTER |
顧客基本マスター |
| VKTENMS |
VKAD.CENTENMS.DTMASTER |
店所マスター |
| VKBANKM |
VKAD.BANKMAST.NMMASTER |
銀行マスター |
| VKKONAM |
VKAD.KONAMMST.DTMASTER |
荷主名マスター(推定) |
| VKCORPO |
VKAD.CORPOMAN.DTMASTER |
顧客法人管理マスター |
| VETENCD |
SEAD.TENSCODE.CDMASTER(DASD11) |
プログラムに宣言なし。LSS0051(BB)が使用と推定 |
2.3 入力ファイルの違い
| DD名 |
何の単位で読むか |
何に使うか |
| INFILE |
全件を順に |
集約代表の区切り、一覧の請求先行(1レコード=1請求先の請求額)、合計 |
| VKKANBS |
集約代表ごとに1回(キー=代表) |
代表の名称・住所・〒・電話・口座(見出し部) |
| VKCORPO |
集約代表ごとに1回(キー=代表) |
名称区分が 'H' のとき、代表の名称をこのマスターの名称にする |
| VKTENMS |
集約代表ごとに1回(キー=代表扱い店) |
発行店の略称・〒・住所・電話(見出し部の右側) |
| VKBANKM |
集約代表ごとに1回(キー=銀行コード+顧客の店所) |
振込先の銀行名・支店名 |
| VKKONAM |
請求先行1行ごと(キー=請求先の荷主コード) |
一覧の荷主名(略称) |
- 顧客基本マスターと顧客法人管理マスターは、どちらも集約代表のコードで読む。請求先(配下)ごとの名称は、荷主名マスター(VKKONAM)から略称を取るだけ。
3. データ定義
3.1 入力エリア
| 名称 |
内容 |
| INAREA/INARA |
SQALLHED(見出しデータ)。区切りの先頭レコードの項目を、マスターの値で上書きして見出しに使う |
| INSPAC(INSPAC_DF) |
SDTASPA1 の写し:INNICD CHAR(7)=集約代表コード、INTNCD PIC'(4)9'=代表扱い店 |
| KANAREA |
KANBASED。VTN1(VNADVTN1:SO+4文字+SI)、VTN2(VNADVTN2:12文字)、VTN3(VNADVTN3:18文字)、VTN4(KAKOSEQG:25文字)として住所に使う |
| CORAREA |
CORPOMAN。COR1(CORPNINM:SO+40バイト+SI) |
| TENAREA |
DDPTENMS。TNNM_DF(VETNADNM:SO+35文字+SI) |
| BNKAREA/BNKKEY |
BANKMAST/キー(BNKCD 7桁+BNKTN 4桁) |
| KOAREA |
KONICD PIC'(7)9'、KONINM CHAR(14)、KOSPAC CHAR(19) |
3.2 主要ワーク
| 名称 |
属性 |
内容 |
| BREAKA |
CHAR(7) |
処理中の集約代表コード |
| MS_SW |
CHAR(1) |
直前の VSAM 読込みの成否('N'=該当なし。全 VSAM 共通) |
| WKAREA |
FIXED DEC(15)×5 |
代表ごとの合計:運賃 UNCNGK、料金 RYKNGK、消費税 SZEIGK、保険料 HOKNGK、合計 GOKEGK |
| NITABL(420) |
構造体の配列 |
一覧の請求先行:荷主7、枝番5、扱い店4(SDTACKTT)、運賃・料金・税・保険・合計(各 DEC(15)) |
| NICNT |
FIXED DEC(3) |
請求先行の件数(最大420) |
| PGCNT/DTCNT |
FIXED DEC(3) |
ページ数/印字済みの請求先行の件数 |
| ADNAME(ADDATA(57)、ADNAM1~3) |
CHAR(114) |
住所の編集域(2バイト×57文字=19文字×3行) |
| NINAME(NIDATA(34)、NINAM1~2) |
CHAR(68) |
名称の編集域(17文字×2行) |
| TNNAME1~3(TNDATA1~3(14)) |
CHAR(28)×3 |
店住所の編集域(14文字×3行) |
| HEX42 |
CHAR(1) |
X'42'。全角数字(X'42F0'~X'42F9')を作るための先頭バイト |
| WK_SO/WK_SI |
CHAR(1) |
シフトアウト/シフトイン |
| NCNT |
FIXED DEC(9) |
銀行マスターに該当がなかった件数 |
3.3 出力レコード(印字行)
| 印字行 |
ASA |
内容 |
| LST1 |
'1' |
改ページ(空行) |
| LST2 |
'0' |
年・月(全角)、代表扱い店、集約代表コード |
| LST3 |
'0' |
顧客〒 |
| LST4 |
'0' |
顧客住所1、請求合計、店略称 |
| LST5 |
' ' |
顧客住所2、店〒 |
| LST6 |
' ' |
顧客住所3、店住所1 |
| LST7 |
' ' |
顧客名1、銀行名、店住所2 |
| LST8 |
' ' |
顧客名2、支店名 |
| LST9 |
' ' |
℡+顧客電話、口座種別、'口座番号'+番号、'TEL:'+店電話 |
| LSTDMA |
'-' |
空行(2行空け) |
| LSTA |
' ' |
請求先行(1行=1請求先):請求先番号、荷主名、扱い店名、運賃、料金、消費税、保険料、合計、備考 |
| LSTDMB |
' ' |
空行(一覧欄の埋め) |
| LSTB |
' ' |
合計:運賃、料金、消費税、保険料、合計 |
- 印字行の名前と中身が1行ずれている箇所がある(LST5 の中に LST4TPOS、LST6 の中に LST5TAD1、LST7 の中に LST6TAD2、LST9 の中に LST8DAT1・LST8TTEL)。プログラムは項目名で設定しているため、印字結果はこの表のとおり(付録A)。
4. 処理フロー
開始
├─ ON 条件:ENDFILE(INFILE)、KEY(各 VSAM) → MS_SW='N'(VKCORPO はさらに CORAREA をクリア)
├─ OPEN INFILE、OUTFILE
├─ INFILE を1件読む、INSPAC ← SDTASPA1
├─ DO WHILE(INFILE が終わるまで) … 集約代表の単位
│ BREAKA ← INNICD
│ VKCORPO、VKKANBS を BREAKA で読む
│ 顧客基本マスターに有れば、先頭レコードの見出し項目を上書き(5.2)
│ 見出し行の編集(年月、〒、住所、名称、店、銀行)(5.3)
│ 合計・請求先表をクリア
│ DO WHILE(終わっていない かつ INNICD=BREAKA) … 請求先の単位
│ 合計に加算、請求先表に登録(420件まで)
│ INFILE を1件読む、INSPAC ← SDTASPA1
│ END
│ 印刷:ページ数=請求先件数÷30(切上げ)
│ 各ページ:見出し(LST1~LST9、LSTDMA)→ 請求先行30行(LSTA)
│ 最終ページ:空行で30行にそろえ、合計行(LSTB)
│ END
├─ DISPLAY 銀行エラー件数
├─ CLOSE INFILE、OUTFILE
終了
5. 処理詳細
5.1 集約代表の区切り
- キーは INNICD(SDTASPA1 の1~7桁目=集約代表コード)だけ。入力は SORT4 で「代表扱い店 → 集約代表 → 扱い店(SDTACKTT)」の順に並んでいる。
- ★ 同じ集約代表でも代表扱い店が違うレコードがあると、並びが離れるため、**別の帳票(別の区切り)**になる。
- 区切りの先頭レコード(代表自身とは限らない)の見出し項目を、帳票の見出しに使う。
5.2 マスターの読込みと見出し項目の上書き
-
READ FILE(VKCORPO) KEY(BREAKA)。該当なしなら CORAREA をクリア(ON KEY 内)。
-
READ FILE(VKKANBS) KEY(BREAKA)。該当ありの場合だけ、先頭レコードの SQALLHED 項目を次のとおり上書きする。
| 上書き先 |
編集元(顧客基本マスター等) |
帳票での使用 |
| (VNADKNN3、VNADVTN3) |
VNADDTKB=1 なら空白にする |
VTN3 は住所3として印字 |
| SDTAYUNO |
0 |
なし |
| SDTAYUNN |
KATNPSNN('0000000' または空白なら空白) |
3行目の〒 |
| SDTASQN1/SDTASQN2 |
KAKONMKB:1=(株)、2=(有)、3=(名)、4=(資)、5=(財)、6=(社)、7=(学)。それ以外は変えない |
SQN1 は名称の先頭に印字。SQN2(カナ)は印字なし |
| SDTASQNI |
CORPNMKB='H' なら CORPNINM(SO+40バイト+空白22+SI)とし、SQN1 を空白にする。それ以外は KATNSGNM の1~41バイト+空白2+KATNSGN2 の2~22バイト |
名称(10・11行目) |
| SDTASQNM |
KATNSCNM |
なし |
| SDTAJKA3/SDTAJKN3 |
KAKOADKB=1 なら KAKOSEQG/KAKOSEQC、それ以外は KAKOSYOG/KAKOSYOC |
なし |
| SDTAJKN1/SDTAJKN2 |
VNADKNN1∥VNADKNN2/VNADKNN3 |
なし |
| SDTADTEL |
KATNTLNO |
12行目の顧客電話 |
| SDTABANK/KONO/KOBA |
TTTBKCD1/TTTKSCB1/TTTKSNO1 |
銀行マスターのキー、口座種別、口座番号 |
| SDTABAN1/KON1/KOB1 |
KAHFBKCD(1)/KAHFKOZA(1)/KAHFKZNO(1) |
なし(2つ目の口座は印字しない) |
-
ただし KAHFBKCD(3)='8888888' かつ KAHFKOZA(1)='8' かつ KAHFKZNO(1)='8888888' の場合(ソースコメント「取引銀行、顧客台帳よりのみセット」)は、口座1を KAHF(1)、口座2を KAHF(2) にする。
-
★ 顧客基本マスターに該当がない場合、上書きは行われず、見出しは先頭レコード(代表とは限らない)の値のままになる。さらに KANAREA はクリアされないため、住所(VTN1~4)と銀行マスターのキー後半(KAADATCD(1))は前の代表の値が残る(最初の代表なら不定)。名称・〒は先頭レコードの値、住所は前の代表の値という、食い違った見出しになり得る。
5.3 見出し行の編集
| 行 |
項目 |
編集内容 |
| LST2 |
年 |
全角「20」+発行年月日 SDTAHYMD の1~2桁(全角)。SDTASYMD=250105 なら「2025」 |
| LST2 |
月 |
SDTAHYMD の3~4桁(全角)。SDTASYMD=250105 なら「01」 |
| LST2 |
店・代表 |
LST2TNCD=INTNCD(代表扱い店)、LST2NICD=INNICD(集約代表コード) |
| LST3 |
〒 |
SDTAYUNN の1~3桁+'-'+4~7桁 |
| LST4~6 左 |
顧客住所 |
ADR_NAME_RTN(5.4)で VTN1~4 を詰めて、19文字×3行 |
| LST4 中 |
請求合計 |
GOKEGK(代表ごとの合計)。'ZZ,ZZZ,ZZZ,ZZ9' |
| LST4 右 |
店略称 |
VETNSRNM(店所マスター、キー=INTNCD) |
| LST5 右 |
店〒 |
'〒'+VETNPSNA の1~3桁+'-'+4~5桁+VETNPSNB |
| LST6・7 右 |
店住所 |
TEN_NAME_RTN(5.4)で VETNADNM を詰めて 14文字×最大3行。★ 実際は1行目しか入らない |
| LST7・8 左 |
顧客名 |
ADR_NAME_RTN で SDTASQN1(法人格)+SDTASQNI を詰めて、17文字×2行 |
| LST7・8 中 |
銀行名・支店名 |
銀行マスター(キー=SDTABANK+KAADATCD(1))の VBNKNAMG/VBNKSNMG |
| LST9 |
顧客電話 |
'℡'+SDTADTEL |
| LST9 |
口座 |
SDTAKONO=1 なら '普通'、それ以外 '当座'。'口座番号'+SDTAKOBA(7桁) |
| LST9 右 |
店電話 |
'TEL:'+VETNTLNO |
- 銀行マスターに該当がない場合は、銀行名・支店名・種別を空白にし、NCNT+1。★ 口座番号(PIC'(7)9')は '' の代入で 0 になり、「口座番号 0000000」と印字される。
- ★ 年は「20」固定+2桁。
5.4 サブルーチン
ADR_NAME_RTN(顧客住所・顧客名の詰め)
- ADNAME を空白にし、VTN1(4文字)、VTN2(12文字)、VTN3(18文字)、VTN4(KAKOSEQG、25文字)の順に、空白でない2バイト文字だけを ADDATA(1~57) に詰める。各部分の間には1文字分の空白を空ける。
- ADNAM1/2/3(各19文字)がそれぞれ住所1~3行目になる。
- NINAME を空白にし、SDTASQN1(法人格3文字)と SDTASQNI(31文字)の空白でない文字を NIDATA(1~34) に詰める。NINAM1/2(各17文字)が顧客名1~2行目になる。
- ★ 住所は最大で 4+12+18+25+区切り3=62文字になり、ADDATA(57) を超える可能性がある(添字範囲外)。
- ★ 住所4は KAKOADKB に関係なく KAKOSEQG を使う(5.2 で SDTAJKA3 を KAKOADKB で選んでいるのと一致しない)。
- ★ 名称の中の全角空白(KATNSGNM と KATNSGN2 の間の空白も含む)はすべて詰められる。
TEN_NAME_RTN(店住所の詰め)
- TNNAME1~3 を空白にし、VETNADNM の35文字のうち空白でない文字を順に詰める。
- TNCNT<14 → TNNAME1 に追加
- 15 ≦ TNCNT < 28 → TNNAME2 に追加
- 29 ≦ TNCNT → TNNAME3 に追加
- ★ TNCNT が 14 になった時点で、どの条件にも当てはまらなくなる(14 は「<14」でも「≧15」でもない)。そのため15文字目以降は捨てられ、TNNAME2・TNNAME3 は常に空白になる。店住所は先頭14文字しか印字されない(6章のイメージ参照)。
5.5 請求先行の集計
集約代表が同じ間、レコードごとに:
- 合計に加算:UNCNGK+=SDTAUNTI、RYKNGK+=SDTARYOK、SZEIGK+=SDTATTAX、HOKNGK+=SDTAHOKR、GOKEGK+=4項目の和。
- NICNT<420 なら、請求先表に登録:荷主(SEQ_NICD)、枝番(SEQ_SQNO)、扱い店(SDTACKTT)、4項目と合計。
- INFILE を1件読み、INSPAC ← SDTASPA1。
- ★ 421件目以降は、合計には加算されるが一覧には載らない。一覧の行の合計と合計行が一致しなくなる。
- 代表(データID 00)と配下(99)は区別しない。並びは SORT4 の扱い店(SDTACKTT)順で、代表が先頭とは限らない。
5.6 印刷
- PGCNT=NICNT÷30(端数切上げ)。
- ページごとに:LST1(改ページ)、LST2~LST9、LSTDMA を出力(LST4 の請求合計は毎ページ同じ値)。
- 請求先行を最大30行出力する。各行:
- 請求先番号:荷主7桁+'-'+枝番5桁
- 荷主名:VKKONAM を荷主コードで読み、KONINM(14バイト)。該当なしは空白
- 扱い店名:
CALL LSS0051(SQTNCD, PARMY, PARMZ) の PARMY の1~9バイト+14バイト目(SO+4文字+SI と推定)
- 運賃・料金・消費税・保険料・合計:各15桁(ゼロは空白)
- 最後の請求先行を出したページでは、30行に満たない分を空行(LSTDMB)で埋め、合計行(LSTB)を出力する。
- ★ 金額のピクチャー(Z)に符号がないため、マイナスの金額は符号なしで印字される。
5.7 終了処理
-
DISPLAY('<<< KS60790P BANK ERROR = '||NCNT)(銀行マスターに該当がなかった代表の数)。
6. 帳票仕様(印刷イメージ)
6.1 ページ構成
| 行(物理) |
印字行 |
内容 |
| 1 |
LST1 |
改ページ |
| 2 |
- |
空行(次の行の ASA '0') |
| 3 |
LST2 |
年・月、代表扱い店、集約代表コード |
| 5 |
LST3 |
顧客〒 |
| 7 |
LST4 |
顧客住所1、請求合計、店略称 |
| 8 |
LST5 |
顧客住所2、店〒 |
| 9 |
LST6 |
顧客住所3、店住所1 |
| 10 |
LST7 |
顧客名1、銀行名、店住所2(★常に空白) |
| 11 |
LST8 |
顧客名2、支店名 |
| 12 |
LST9 |
顧客電話、口座種別・番号、店電話 |
| 15 |
LSTDMA |
空行(ASA '-') |
| 16~45 |
LSTA/LSTDMB |
請求先行(30行。1行=1請求先) |
| 46 |
LSTB |
合計(最終ページのみ) |
6.2 印刷イメージ(1ページ目=最終ページ)
- 例:集約代表 7654321、代表扱い店 1002、代表自身を含め3請求先。値はすべて架空。
- 16~18行目は送り状ではなく請求先ごとの請求額(各請求先の鑑の金額)。46行目はその合計で、7行目の請求合計と同じ値になる。
- 左端の「行 |」はイメージ用の物理行番号で、印字されない。ルーラーは印字桁(ASA を除く1~132桁)。
- 全角文字は2桁、SO/SI は1桁の空白として表示している。
- 店住所(9行目右)は「東京都架空区サンプル町1丁目1番1号」のうち先頭14文字しか印字されない(5.4 の★)。
行 |----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+----3--
1 |
2 |
3 | 2026 09 1002 7654321
4 |
5 | 150-0001
6 |
7 | 東京都 架空区 サンプル町 1丁目2番 65,670 テスト支店
8 | 3号サンプルビル 〒 100-0005
9 | 東京都架空区サンプル町1丁目
10 | (株)サンプル物流 サンプル銀行
11 | 本店
12 | ℡ 0000-00-0000 普通 口座番号 1234567 TEL:03-0000-0000
13 |
14 |
15 |
16 | 7654321-00000 サンプルブツリユウ 東京支店 42000 2400 4440 48840
17 | 1234567-00001 テストシヨウジ 大阪支店 12000 1200 13200
18 | 5678901-00000 カクウコウギヨウ 福岡支店 3000 300 330 3630
| (19~45行目:空行 LSTDMB を 27 行出力して一覧欄を30行にそろえる)
46 | 57000 2700 5970 65670
6.3 帳票の留意点
- プレ印刷帳票を前提としていると推定される(項目の見出し文字は「℡」「口座番号」「TEL:」「〒」以外は印字しない)。
- 請求先が31件以上の場合、2ページ目以降も見出し部(1~12行目)を同じ内容で印字し、一覧の続きを載せる。合計行は最終ページだけ(6.4)。
- No.25(事業所用)と No.27(エコデリバー用)は同じ様式で、載る代表・請求先が違う(1.3)。
6.4 請求先が30件を超える場合の印刷イメージ
1つの集約代表に請求先が31件以上あると、複数ページになる(1ページ30件)。例:集約代表 7654321 に請求先が32件ある場合(値は架空)。
【1ページ目】
行 |----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+----3--
1 |
2 |
3 | 2026 09 1002 7654321
4 |
5 | 150-0001
6 |
7 | 東京都 架空区 サンプル町 1丁目2番 210,210 テスト支店
8 | 3号サンプルビル 〒 100-0005
9 | 東京都架空区サンプル町1丁目
10 | (株)サンプル物流 サンプル銀行
11 | 本店
12 | ℡ 0000-00-0000 普通 口座番号 1234567 TEL:03-0000-0000
13 |
14 |
15 |
16 | 7654321-00000 サンプルブツリユウ 東京支店 1000 100 1100
17 | 1001371-00000 テストシヨウジ 大阪支店 9500 100 960 10560
18 | 1002742-00000 カクウコウギヨウ 福岡支店 8000 200 820 9020
| (19~42行目:請求先 4~27 件目。省略)
43 | 1037017-00000 ミナトシヨウカイ 札幌支店 10500 1050 11550
44 | 1038388-00000 ヤマダセイサク 東京支店 9000 100 910 10010
45 | 1039759-00000 タカハシサンギヨウ 大阪支店 7500 200 770 8470
【2ページ目】
行 |----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2----+----3--
1 |
2 |
3 | 2026 09 1002 7654321
4 |
5 | 150-0001
6 |
7 | 東京都 架空区 サンプル町 1丁目2番 210,210 テスト支店
8 | 3号サンプルビル 〒 100-0005
9 | 東京都架空区サンプル町1丁目
10 | (株)サンプル物流 サンプル銀行
11 | 本店
12 | ℡ 0000-00-0000 普通 口座番号 1234567 TEL:03-0000-0000
13 |
14 |
15 |
16 | 1041130-00000 サンプルブツリユウ 福岡支店 6000 600 6600
17 | 1042501-00000 テストシヨウジ 札幌支店 4500 100 460 5060
| (18~45行目:空行 LSTDMB ×28)
46 | 188000 3100 19110 210210
-
見出し部(1~15行目)は全ページ同じ内容で印字される。7行目の請求合計も、全ページとも代表全体の合計(210,210)である。
- 1ページ目は請求先30件で終わり、合計行は印字されない(45行目で終わる)。
- 最終ページ(2ページ目)は、残りの2件の後を空行28行で埋め、46行目に合計行を印字する。合計行は全32件の合計で、7行目の請求合計と一致する。
- ★ ページ番号や「続き」の表示はない。2ページ目だけを見ると、1ページ目と区別できるのは一覧の内容と合計行の有無だけである。
件数による違い:
| 請求先の件数 |
ページ数 |
各ページの一覧 |
合計行 |
| 1~29件 |
1 |
件数分+空行で30行 |
1ページ目の46行目 |
| 30件 |
1 |
30件ちょうど(空行なし) |
1ページ目の46行目(30件目の直後) |
| 31件 |
2 |
1ページ目30件/2ページ目1件+空行29行 |
2ページ目の46行目 |
| 60件 |
2 |
30件/30件 |
2ページ目の46行目 |
| 421件以上 |
14 |
420件まで(30件×14ページ) |
14ページ目。★ 合計行と7行目の請求合計には421件目以降も含まれ、一覧の合計と一致しない(5.5) |
7. メッセージ
| 出力先 |
メッセージ |
契機 |
| ジョブログ(DISPLAY) |
<<< KS60790P BANK ERROR = ∥ 件数 |
終了時。銀行マスターに該当がなかった代表の数 |
8. 異常処理
| 事象 |
処理 |
| INFILE の終了 |
EOF_SW='0'B でループを終える(正常) |
| VSAM に該当なし(KEY 条件) |
MS_SW='N'。顧客法人管理は CORAREA をクリア。顧客基本は上書きなし(★前の値が残る)。店所は TENAREA を事前にクリア済み(空白)。銀行は空白+エラー件数。荷主名は空白 |
| LSS0051 の異常 |
BB のため不明 |
| その他 |
ON ERROR の定義なし → PL/I 標準のエラー処理(異常終了) |
| リターンコード |
設定なし(正常時は 0) |
9. 留意事項(★)
-
店住所は先頭14文字しか印字されない:TEN_NAME_RTN の条件の抜け(TNCNT=14 で止まる)。7行目の店住所2は常に空白(5.4)。
-
顧客基本マスターに該当がない代表:見出しの名称・〒は先頭レコード(配下の場合あり)の値、住所と銀行のキーは前の代表の値になる(5.2)。KS60750P で集約代表が空白のまま抽出された荷主(KS60750 設計書 8章 No.1)はこれに当たる。
-
同じ代表が別の帳票に分かれる:代表扱い店が違うレコードがあると、同じ代表で複数の区切りになる(5.1)。また、事業所用・エコデリバー用の2本に分かれることもある(1.3)。
-
421件目以降は一覧に載らないが、合計には含まれる(5.5)。
-
マイナスの金額は符号が出ない(5.6)。
-
銀行が見つからないと「口座番号 0000000」と印字される(5.3)。2つ目の口座は印字しない。
-
住所の編集域の上限超えの可能性(62文字>57文字)(5.4)。
-
住所4の選択:見出しデータへの上書きは KAKOADKB で選ぶが、印字は常に KAKOSEQG(5.4)。上書きした SDTAJKA3、SDTAJKN1~3、SDTASQNM、SDTASQN2、SDTABAN1 等は印字に使われない。
-
扱い店名は4文字:LSS0051 の店名の先頭4文字だけを印字する。
-
ハードコード:SDTASYMD=250105 で年月を「2025 01」に固定、年の上2桁「20」固定。
-
VSAM の OPEN 文がない、SYSPRINT の DD がない。
-
SDTACKTT は扱い店の店所コード:本PG で LSS0051(店名取得)に渡していることから判明した。KS60780 設計書では「締日関連と推定」としていたが、扱い店コードと考えられる。
10. 未使用項目
| 項目 |
内容 |
| LS3A |
事業所名の行(WRITE がコメントアウトされている) |
| PARMZ |
LSS0051 の第3引数(戻り値を使わない) |
| ICNT、BKLEN1、BKLEN2 |
宣言のみ |
| LSTABIKO、LSTBBIKO |
備考欄(常に空白) |
| KANBASED、CORPOMAN、DDPTENMS、BANKMAST の多くの項目 |
付録の「本PGでの使用」欄が空の項目 |
付録A 印字行 項目位置表
- レコード位置は ASA を1とした位置、印字桁は ASA を除いた桁(=レコード位置−1)。
| 印字行 |
項目 |
レコード位置 |
長さ |
印字桁 |
| LST1 |
LST1CTRL |
1 |
1 |
ASA |
| LST1 |
LST1SPAC |
2 |
132 |
1~132 |
| LST2 |
LST2CTRL |
1 |
1 |
ASA |
| LST2 |
LST2SPC0 |
2 |
38 |
1~38 |
| LST2 |
LST2YYSO |
40 |
1 |
39 |
| LST2 |
LST2YYY1 |
41 |
2 |
40~41 |
| LST2 |
LST2YYY2 |
43 |
2 |
42~43 |
| LST2 |
LST2YYY3 |
45 |
2 |
44~45 |
| LST2 |
LST2YYY4 |
47 |
2 |
46~47 |
| LST2 |
LST2YYSI |
49 |
1 |
48 |
| LST2 |
LST2SPC1 |
50 |
1 |
49 |
| LST2 |
LST2MMSO |
51 |
1 |
50 |
| LST2 |
LST2MMM1 |
52 |
2 |
51~52 |
| LST2 |
LST2MMM2 |
54 |
2 |
53~54 |
| LST2 |
LST2MMSI |
56 |
1 |
55 |
| LST2 |
LST2SPC2 |
57 |
35 |
56~90 |
| LST2 |
LST2TNCD |
92 |
4 |
91~94 |
| LST2 |
LST2SPC3 |
96 |
2 |
95~96 |
| LST2 |
LST2NICD |
98 |
7 |
97~103 |
| LST2 |
LST2SPAC |
105 |
29 |
104~132 |
| LST3 |
LST3CTRL |
1 |
1 |
ASA |
| LST3 |
LST3SPC1 |
2 |
2 |
1~2 |
| LST3 |
LST3KPOS |
4 |
8 |
3~10 |
| LST3 |
LST3SPAC |
12 |
122 |
11~132 |
| LST4 |
LST4CTRL |
1 |
1 |
ASA |
| LST4 |
LST4SPC1 |
2 |
1 |
1 |
| LST4 |
LST4KAD1 |
3 |
40 |
2~41 |
| LST4 |
LST4SPC2 |
43 |
20 |
42~61 |
| LST4 |
LST4GOKE |
63 |
14 |
62~75 |
| LST4 |
LST4SPC3 |
77 |
20 |
76~95 |
| LST4 |
LS3ATNNM |
97 |
14 |
96~109 |
| LST4 |
LST4SPC4 |
111 |
23 |
110~132 |
| LST5 |
LST5CTRL |
1 |
1 |
ASA |
| LST5 |
LST5SPC1 |
2 |
1 |
1 |
| LST5 |
LST5KAD2 |
3 |
40 |
2~41 |
| LST5 |
LST5SPC2 |
43 |
47 |
42~88 |
| LST5 |
LST4TPOS |
90 |
12 |
89~100 |
| LST5 |
LST5SPC3 |
102 |
32 |
101~132 |
| LST6 |
LST6CTRL |
1 |
1 |
ASA |
| LST6 |
LST6SPC1 |
2 |
1 |
1 |
| LST6 |
LST6KAD3 |
3 |
40 |
2~41 |
| LST6 |
LST6SPC2 |
43 |
48 |
42~89 |
| LST6 |
LST5TAD1 |
91 |
36 |
90~125 |
| LST6 |
LST6SPC3 |
127 |
7 |
126~132 |
| LST7 |
LST7CTRL |
1 |
1 |
ASA |
| LST7 |
LST7SPC1 |
2 |
1 |
1 |
| LST7 |
LST7KNM1 |
3 |
36 |
2~37 |
| LST7 |
LST7SPC2 |
39 |
11 |
38~48 |
| LST7 |
LST7BNK1 |
50 |
30 |
49~78 |
| LST7 |
LST7SPC3 |
80 |
11 |
79~89 |
| LST7 |
LST6TAD2 |
91 |
36 |
90~125 |
| LST7 |
LST7SPC4 |
127 |
7 |
126~132 |
| LST8 |
LST8CTRL |
1 |
1 |
ASA |
| LST8 |
LST8SPC1 |
2 |
1 |
1 |
| LST8 |
LST8KNM2 |
3 |
36 |
2~37 |
| LST8 |
LST8SPC2 |
39 |
11 |
38~48 |
| LST8 |
LST8BNK2 |
50 |
30 |
49~78 |
| LST8 |
LST8SPC3 |
80 |
11 |
79~89 |
| LST8 |
LST8SPC4 |
91 |
43 |
90~132 |
| LST9 |
LST9CTRL |
1 |
1 |
ASA |
| LST9 |
LST9SPC1 |
2 |
20 |
1~20 |
| LST9 |
LST9DAT1 |
22 |
4 |
21~24 |
| LST9 |
LST9KTEL |
26 |
12 |
25~36 |
| LST9 |
LST9SPC2 |
38 |
12 |
37~48 |
| LST9 |
LST9BNKA |
50 |
6 |
49~54 |
| LST9 |
LST9DAT2 |
56 |
10 |
55~64 |
| LST9 |
LST9SPC3 |
66 |
1 |
65 |
| LST9 |
LST9BANG |
67 |
7 |
66~72 |
| LST9 |
LST9SPC4 |
74 |
17 |
73~89 |
| LST9 |
LST8DAT1 |
91 |
4 |
90~93 |
| LST9 |
LST8TTEL |
95 |
12 |
94~105 |
| LST9 |
LST9SPC5 |
107 |
27 |
106~132 |
| LSTDMA |
LSDACTRL |
1 |
1 |
ASA |
| LSTDMA |
LSDASPAC |
2 |
132 |
1~132 |
| LSTDMB |
LSDBCTRL |
1 |
1 |
ASA |
| LSTDMB |
LSDBSPAC |
2 |
132 |
1~132 |
| LSTA |
LSTACTRL |
1 |
1 |
ASA |
| LSTA |
LSTASPC1 |
2 |
3 |
1~3 |
| LSTA |
LSTASQNO |
5 |
13 |
4~16 |
| LSTA |
LSTASPC2 |
18 |
1 |
17 |
| LSTA |
LSTANINM |
19 |
14 |
18~31 |
| LSTA |
LSTASPC3 |
33 |
1 |
32 |
| LSTA |
LSTAATTN |
34 |
10 |
33~42 |
| LSTA |
LSTASPC4 |
44 |
1 |
43 |
| LSTA |
LSTAUNCN |
45 |
15 |
44~58 |
| LSTA |
LSTARYKN |
60 |
15 |
59~73 |
| LSTA |
LSTASZEI |
75 |
15 |
74~88 |
| LSTA |
LSTAHOKN |
90 |
15 |
89~103 |
| LSTA |
LSTASEQG |
105 |
15 |
104~118 |
| LSTA |
LSTABIKO |
120 |
10 |
119~128 |
| LSTA |
LSTASPC5 |
130 |
4 |
129~132 |
| LSTB |
LSTBCTRL |
1 |
1 |
ASA |
| LSTB |
LSTBSPC1 |
2 |
43 |
1~43 |
| LSTB |
LSTBUNCN |
45 |
15 |
44~58 |
| LSTB |
LSTBRYKN |
60 |
15 |
59~73 |
| LSTB |
LSTBSZEI |
75 |
15 |
74~88 |
| LSTB |
LSTBHOKN |
90 |
15 |
89~103 |
| LSTB |
LSTBSEQG |
105 |
15 |
104~118 |
| LSTB |
LSTBBIKO |
120 |
10 |
119~128 |
| LSTB |
LSTBSPC2 |
130 |
4 |
129~132 |
付録B SQALLHED(見出しデータ、560バイト)
| LV |
項目名 |
属性 |
繰返し |
位置 |
長さ |
本PGでの使用 |
| 02 |
SDTASHTN |
PIC'(4)9' |
|
1 |
4 |
|
| 02 |
SDTAKKKK |
CHAR(10) |
|
5 |
10 |
|
| 02 |
SDTASQNO |
FIXED DEC(13) |
|
15 |
7 |
請求先番号 → 一覧の荷主コード・枝番 |
| 02 |
SDTASPA1 |
CHAR(11) |
|
22 |
11 |
集約代表7桁+代表扱い店4桁(KS60780P が設定) |
| 02 |
SDTADTID |
PIC'(2)9' |
|
33 |
2 |
|
| 02 |
SDTAKARI |
PIC'(1)9' |
|
35 |
1 |
|
| 02 |
SDTADPKB |
PIC'(1)9' |
|
36 |
1 |
|
| 02 |
SDTAYYMM |
PIC'(4)9' |
|
37 |
4 |
|
| 02 |
SDTAHYMD |
PIC'(6)9' |
|
41 |
6 |
年・月の印字(先頭レコード) |
| 02 |
SDTACKTT |
PIC'(4)9' |
|
47 |
4 |
扱い店コード → LSS0051 で店名に変換 |
| 02 |
SDTAKIKN |
(集団項目) |
|
51 |
12 |
|
| 03 |
SDTAKYMD |
PIC'(6)9' |
|
51 |
6 |
|
| 03 |
SDTASYMD |
PIC'(6)9' |
|
57 |
6 |
250105 の判定 |
| 02 |
SDTASQN1 |
CHAR(8) |
|
63 |
8 |
上書き:法人格 → 顧客名 |
| 02 |
SDTASQNI |
CHAR(64) |
|
71 |
64 |
上書き:顧客名 |
| 02 |
SDTASQN2 |
CHAR(5) |
|
135 |
5 |
上書きのみ(印字なし) |
| 02 |
SDTASQNM |
CHAR(36) |
|
140 |
36 |
上書きのみ |
| 02 |
SDTAPKEI |
PIC'(1)9' |
|
176 |
1 |
|
| 02 |
SDTAPKBN |
CHAR(1) |
|
177 |
1 |
|
| 02 |
SDTAHYOG |
(集団項目) |
|
178 |
20 |
|
| 03 |
SDTANNNO |
PIC'(1)9' |
20 |
178 |
1×20=20 |
|
| 02 |
SDTABIKB |
PIC'(1)9' |
|
198 |
1 |
|
| 02 |
SDTAZKIN |
PIC'(1)9' |
|
199 |
1 |
|
| 02 |
SDTAZKI1 |
PIC'(1)9' |
|
200 |
1 |
|
| 02 |
SDTAJIKB |
PIC'(1)9' |
|
201 |
1 |
|
| 02 |
SDTABBKB |
PIC'(1)9' |
|
202 |
1 |
|
| 02 |
SDTAHHTN |
PIC'(4)9' |
|
203 |
4 |
|
| 02 |
SDTASPAC |
CHAR(14) |
|
207 |
14 |
|
| 02 |
SDTAHEAD |
(集団項目) |
|
221 |
340 |
|
| 03 |
SDTAMTTO |
(集団項目) |
|
221 |
30 |
|
| 04 |
SDTAUNTI |
FIXED DEC(9) |
|
221 |
5 |
集計:運賃 |
| 04 |
SDTARYOK |
FIXED DEC(9) |
|
226 |
5 |
集計:料金 |
| 04 |
SDTATTAX |
FIXED DEC(9) |
|
231 |
5 |
集計:消費税 |
| 04 |
SDTAHOKR |
FIXED DEC(9) |
|
236 |
5 |
集計:保険料 |
| 04 |
SDTAAAAA |
FIXED DEC(9) |
|
241 |
5 |
|
| 04 |
SDTAATAX |
FIXED DEC(9) |
|
246 |
5 |
|
| 03 |
SDTAYUNN |
CHAR(7) |
|
251 |
7 |
上書き:郵便番号 → 3行目 |
| 03 |
SDTAYUNO |
PIC'(5)9' |
|
258 |
5 |
上書き(0)のみ |
| 03 |
SDTAJKAN |
(集団項目) |
|
263 |
124 |
|
| 04 |
SDTAJKA1 |
CHAR(34) |
|
263 |
34 |
|
| 04 |
SDTAJKA2 |
CHAR(38) |
|
297 |
38 |
|
| 04 |
SDTAJKA3 |
CHAR(52) |
|
335 |
52 |
上書きのみ |
| 03 |
SDTAJKNA |
(集団項目) |
|
387 |
129 |
|
| 04 |
SDTAJKN1 |
CHAR(32) |
|
387 |
32 |
上書きのみ |
| 04 |
SDTAJKN2 |
CHAR(47) |
|
419 |
47 |
上書きのみ |
| 04 |
SDTAJKN3 |
CHAR(50) |
|
466 |
50 |
上書きのみ |
| 03 |
SDTADTEL |
CHAR(12) |
|
516 |
12 |
上書き:顧客電話 → 9行目 |
| 03 |
SDTABANK |
FIXED DEC(7) |
|
528 |
4 |
上書き:銀行コード → 銀行マスターのキー |
| 03 |
SDTAKONO |
PIC'(1)9' |
|
532 |
1 |
上書き:口座種別 |
| 03 |
SDTAKOBA |
FIXED DEC(9) |
|
533 |
5 |
上書き:口座番号 |
| 03 |
SDTABAN1 |
FIXED DEC(7) |
|
538 |
4 |
上書きのみ |
| 03 |
SDTAKON1 |
PIC'(1)9' |
|
542 |
1 |
上書きのみ |
| 03 |
SDTAKOB1 |
FIXED DEC(9) |
|
543 |
5 |
上書きのみ |
| 03 |
SDTATKB3 |
PIC'(1)9' |
|
548 |
1 |
|
| 03 |
SDTATENK |
FIXED DEC(9) |
|
549 |
5 |
|
| 03 |
SDTASPA2 |
CHAR(7) |
|
554 |
7 |
|
付録C KANBASED(顧客基本マスター、1500バイト)
| LV |
項目名 |
属性 |
繰返し |
位置 |
長さ |
本PGでの使用 |
| 02 |
KACUBASE |
(集団項目) |
|
1 |
799 |
|
| 03 |
KACUSTCD |
PIC'(7)9' |
|
1 |
7 |
キー(顧客コード) |
| 03 |
KACUCDKB |
PIC'(1)9' |
|
8 |
1 |
|
| 03 |
KAADINFO |
(集団項目) |
|
9 |
34 |
|
| 04 |
KAADKSCD |
(集団項目) |
|
9 |
11 |
|
| 05 |
KAADCODA |
PIC'(5)9' |
|
9 |
5 |
|
| 05 |
KAADCODB |
CHAR(6) |
|
14 |
6 |
|
| 04 |
KAADCODW |
PIC'(1)9' |
|
20 |
1 |
|
| 04 |
KAADSTCD |
PIC'(5)9' |
|
21 |
5 |
|
| 04 |
KATNTLNO |
CHAR(12) |
|
26 |
12 |
顧客電話 |
| 04 |
KATNPSNO |
CHAR(5) |
|
38 |
5 |
|
| 03 |
KAADJOHO |
(集団項目) |
|
43 |
48 |
|
| 04 |
KAADATIF |
(集団項目) |
4 |
43 |
10×4=40 |
|
| 05 |
KAADATCD |
PIC'(4)9' |
|
43 |
4 |
(1) を銀行マスターのキー後半に使用 |
| 05 |
KAADSZCD |
FIXED DEC(5) |
|
47 |
3 |
|
| 05 |
KAADTWRK |
PIC'(1)9' |
|
50 |
1 |
|
| 05 |
KAADAKKM |
FIXED DEC(3) |
|
51 |
2 |
|
| 04 |
KAHFYOST |
PIC'(4)9' |
|
83 |
4 |
|
| 04 |
KASFMATC |
PIC'(4)9' |
|
87 |
4 |
|
| 03 |
KATNINFX |
(集団項目) |
|
91 |
11 |
|
| 04 |
KATNKUBN |
PIC'(1)9' |
|
91 |
1 |
|
| 04 |
KATNKUMK |
PIC'(1)9' |
10 |
92 |
1×10=10 |
|
| 03 |
KAHFINFO |
(集団項目) |
|
102 |
141 |
|
| 04 |
KAHFSHKB |
PIC'(1)9' |
|
102 |
1 |
|
| 04 |
KAHFSHBI |
PIC'(2)9' |
|
103 |
2 |
|
| 04 |
KAHFBKOC |
(集団項目) |
3 |
105 |
31×3=93 |
|
| 05 |
KAHFBKCD |
PIC'(7)9' |
|
105 |
7 |
(1)(2) 銀行コード、(3)=8888888 の判定 |
| 05 |
KAHFBKNM |
CHAR(16) |
|
112 |
16 |
|
| 05 |
KAHFKOZA |
PIC'(1)9' |
|
128 |
1 |
(1)(2) 口座種別 |
| 05 |
KAHFKZNO |
PIC'(7)9' |
|
129 |
7 |
(1)(2) 口座番号 |
| 04 |
KAHFMKBN |
(集団項目) |
3 |
198 |
15×3=45 |
|
| 05 |
KAHFMAXK |
FIXED DEC(9) |
|
198 |
5 |
|
| 05 |
KAHFSPER |
FIXED DEC(3) |
5 |
203 |
2×5=10 |
|
| 03 |
KASFINFO |
(集団項目) |
|
243 |
98 |
|
| 04 |
KAADSQKB |
PIC'(1)9' |
|
243 |
1 |
|
| 04 |
KASFDPSQ |
PIC'(1)9' |
|
244 |
1 |
|
| 04 |
KASFDUMY |
CHAR(2) |
|
245 |
2 |
|
| 04 |
KASFHATN |
PIC'(4)9' |
|
247 |
4 |
|
| 04 |
KASFSORT |
PIC'(1)9' |
5 |
251 |
1×5=5 |
|
| 04 |
KASFSMKB |
(集団項目) |
6 |
256 |
3×6=18 |
|
| 05 |
KASFSSIX |
PIC'(2)9' |
|
256 |
2 |
|
| 05 |
KASFSSAK |
PIC'(1)9' |
|
258 |
1 |
|
| 04 |
KASFTEIS |
PIC'(2)9' |
|
274 |
2 |
|
| 04 |
KASFPKET |
PIC'(1)9' |
|
276 |
1 |
|
| 04 |
KASFPKBN |
CHAR(1) |
|
277 |
1 |
|
| 04 |
KASFDISP |
(集団項目) |
|
278 |
20 |
|
| 05 |
KASFHOHO |
PIC'(1)9' |
20 |
278 |
1×20=20 |
|
| 04 |
KASFPBIK |
PIC'(1)9' |
|
298 |
1 |
|
| 04 |
KASFBEFO |
(集団項目) |
|
299 |
24 |
|
| 05 |
KASFSSNO |
PIC'(12)9' |
|
299 |
12 |
|
| 05 |
KASFZYMD |
PIC'(6)9' |
|
311 |
6 |
|
| 05 |
KASFZZYM |
PIC'(6)9' |
|
317 |
6 |
|
| 04 |
KASFNEXT |
(集団項目) |
|
323 |
7 |
|
| 05 |
KASFGKBN |
PIC'(1)9' |
|
323 |
1 |
|
| 05 |
KASFGSME |
PIC'(6)9' |
|
324 |
6 |
|
| 04 |
KASFAD11 |
(集団項目) |
|
330 |
11 |
|
| 05 |
KASFAD05 |
PIC'(5)9' |
|
330 |
5 |
|
| 05 |
KASFAD06 |
CHAR(6) |
|
335 |
6 |
|
| 03 |
KABKINFO |
(集団項目) |
|
341 |
33 |
|
| 04 |
KABKKZKB |
PIC'(1)9' |
|
341 |
1 |
|
| 04 |
KABKKTKB |
PIC'(1)9' |
|
342 |
1 |
|
| 04 |
KABKSOKB |
PIC'(1)9' |
|
343 |
1 |
|
| 04 |
KABKSSKB |
PIC'(1)9' |
|
344 |
1 |
|
| 04 |
KABKSSJO |
(集団項目) |
5 |
345 |
4×5=20 |
|
| 05 |
KABKCLSD |
PIC'(2)9' |
|
345 |
2 |
|
| 05 |
KABKPAYD |
PIC'(2)9' |
|
347 |
2 |
|
| 04 |
KABKKTCD |
PIC'(4)9' |
|
365 |
4 |
|
| 04 |
KABKISKB |
PIC'(1)9' |
|
369 |
1 |
|
| 04 |
KABKKNCD |
FIXED DEC(7) |
|
370 |
4 |
|
| 03 |
KATCINFO |
(集団項目) |
|
374 |
41 |
|
| 04 |
KAADGSKB |
PIC'(4)9' |
|
374 |
4 |
|
| 04 |
KAADCKKB |
PIC'(1)9' |
|
378 |
1 |
|
| 04 |
KAOTYAKB |
PIC'(1)9' |
|
379 |
1 |
|
| 04 |
KAEXKBN1 |
PIC'(1)9' |
|
380 |
1 |
|
| 04 |
KAEXKBN2 |
CHAR(1) |
|
381 |
1 |
|
| 04 |
KAEXKBN3 |
PIC'(1)9' |
|
382 |
1 |
|
| 04 |
KAEXKBN4 |
PIC'(1)9' |
|
383 |
1 |
|
| 04 |
KAEXKBN5 |
PIC'(1)9' |
|
384 |
1 |
|
| 04 |
KAEXKBN6 |
PIC'(1)9' |
|
385 |
1 |
|
| 04 |
KAEXKBN7 |
PIC'(1)9' |
|
386 |
1 |
|
| 04 |
KAEXKBN8 |
PIC'(1)9' |
|
387 |
1 |
|
| 04 |
KAEXKBN9 |
PIC'(1)9' |
|
388 |
1 |
|
| 04 |
KAEXKBNA |
PIC'(1)9' |
|
389 |
1 |
|
| 04 |
KAEXKBNB |
PIC'(1)9' |
|
390 |
1 |
|
| 04 |
KAEXKBNC |
PIC'(1)9' |
|
391 |
1 |
|
| 04 |
KAEXKBND |
PIC'(1)9' |
|
392 |
1 |
|
| 04 |
KAEXKBNE |
PIC'(1)9' |
|
393 |
1 |
|
| 04 |
KAEXKBNF |
PIC'(1)9' |
|
394 |
1 |
|
| 04 |
KAEXKBNG |
PIC'(1)9' |
|
395 |
1 |
|
| 04 |
KAEXKBNH |
PIC'(1)9' |
|
396 |
1 |
|
| 04 |
KAEXKBNI |
PIC'(1)9' |
|
397 |
1 |
|
| 04 |
KAEXKBNJ |
PIC'(1)9' |
|
398 |
1 |
|
| 04 |
KAEXKBNK |
PIC'(1)9' |
|
399 |
1 |
|
| 04 |
KAEXKBNL |
PIC'(1)9' |
|
400 |
1 |
|
| 04 |
KAEXKBNM |
PIC'(1)9' |
|
401 |
1 |
|
| 04 |
KAEXKBNN |
PIC'(1)9' |
|
402 |
1 |
|
| 04 |
KAEXKBNO |
PIC'(1)9' |
|
403 |
1 |
|
| 04 |
KAEXKBNP |
PIC'(1)9' |
|
404 |
1 |
|
| 04 |
KAEXKBNQ |
PIC'(1)9' |
|
405 |
1 |
|
| 04 |
KAEXKBNR |
PIC'(1)9' |
|
406 |
1 |
|
| 04 |
KAEXKBNS |
PIC'(1)9' |
|
407 |
1 |
|
| 04 |
KAEXKBNT |
PIC'(1)9' |
|
408 |
1 |
|
| 04 |
KAEXKBNU |
PIC'(1)9' |
|
409 |
1 |
|
| 04 |
KAEXKBNV |
PIC'(1)9' |
|
410 |
1 |
|
| 04 |
KAEXKBNW |
PIC'(1)9' |
|
411 |
1 |
|
| 04 |
KAEXKBNX |
PIC'(1)9' |
|
412 |
1 |
|
| 04 |
KAEXKBNY |
PIC'(1)9' |
|
413 |
1 |
|
| 04 |
KAEXKBNZ |
PIC'(1)9' |
|
414 |
1 |
|
| 03 |
KAEIGRPX |
(集団項目) |
|
415 |
9 |
|
| 04 |
KAEIKBN1 |
PIC'(1)9' |
|
415 |
1 |
|
| 04 |
KAEIKBN2 |
PIC'(1)9' |
|
416 |
1 |
|
| 04 |
KAEIKBN3 |
PIC'(1)9' |
|
417 |
1 |
|
| 04 |
KAEIPER1 |
FIXED DEC(5) |
|
418 |
3 |
|
| 04 |
KAEIPER2 |
FIXED DEC(5) |
|
421 |
3 |
|
| 03 |
KATCGRPX |
(集団項目) |
|
424 |
18 |
|
| 04 |
KATNPSNN |
CHAR(7) |
|
424 |
7 |
郵便番号7桁 |
| 04 |
KASQPSNN |
CHAR(7) |
|
431 |
7 |
|
| 04 |
KATCSPAC |
CHAR(4) |
|
438 |
4 |
|
| 03 |
KATNINFO |
(集団項目) |
|
442 |
341 |
|
| 04 |
KAKONMKB |
PIC'(1)9' |
|
442 |
1 |
法人格区分(1~7) |
| 04 |
KATNSGNX |
(集団項目) |
|
443 |
64 |
|
| 05 |
KATNSGNM |
CHAR(42) |
|
443 |
42 |
顧客名1 |
| 05 |
KATNSGN2 |
CHAR(22) |
|
485 |
22 |
顧客名2 |
| 04 |
KATNRGNM |
CHAR(14) |
|
507 |
14 |
|
| 04 |
KATNSCNM |
CHAR(36) |
|
521 |
36 |
→ SDTASQNM(印字なし) |
| 04 |
KATNRCNM |
CHAR(14) |
|
557 |
14 |
|
| 04 |
KAKOADKB |
PIC'(1)9' |
|
571 |
1 |
住所区分 |
| 04 |
KAKOSYOG |
CHAR(52) |
|
572 |
52 |
→ SDTAJKA3(印字なし) |
| 04 |
KAKOSEQG |
CHAR(52) |
|
624 |
52 |
住所4(印字) |
| 04 |
KAKOSYOC |
CHAR(50) |
|
676 |
50 |
→ SDTAJKN3 |
| 04 |
KAKOSEQC |
CHAR(50) |
|
726 |
50 |
→ SDTAJKN3 |
| 04 |
KASQPSNO |
CHAR(5) |
|
776 |
5 |
|
| 04 |
KAKOSPA2 |
CHAR(2) |
|
781 |
2 |
|
| 03 |
KAHKYSRT |
(集団項目) |
|
783 |
6 |
|
| 04 |
KAHNKSYY |
PIC'(2)9' |
|
783 |
2 |
|
| 04 |
KAHNKSMM |
PIC'(2)9' |
|
785 |
2 |
|
| 04 |
KAHNKSDD |
PIC'(2)9' |
|
787 |
2 |
|
| 03 |
KAHKYMNT |
(集団項目) |
|
789 |
6 |
|
| 04 |
KAHNKMYY |
PIC'(2)9' |
|
789 |
2 |
|
| 04 |
KAHNKMMM |
PIC'(2)9' |
|
791 |
2 |
|
| 04 |
KAHNKMDD |
PIC'(2)9' |
|
793 |
2 |
|
| 03 |
KACUBSPC |
CHAR(5) |
|
795 |
5 |
|
| 02 |
KCBNDUMM |
CHAR(1) |
|
800 |
1 |
|
| 02 |
TTTTENNM |
(集団項目) |
|
801 |
38 |
|
| 03 |
TTTTNNMC |
CHAR(12) |
|
801 |
12 |
|
| 03 |
TTTTNNMG |
CHAR(26) |
|
813 |
26 |
|
| 02 |
TTTTNADD |
(集団項目) |
|
839 |
144 |
|
| 03 |
TTTTNADN |
CHAR(144) |
|
839 |
144 |
|
| 02 |
TTTTELNO |
(集団項目) |
|
983 |
20 |
|
| 03 |
TTTTNOMB |
CHAR(12) |
|
983 |
12 |
|
| 03 |
TTTNTTAD |
CHAR(8) |
|
995 |
8 |
|
| 02 |
TTTTBANK |
(集団項目) |
|
1003 |
15 |
|
| 03 |
TTTBKCD1 |
PIC'(7)9' |
|
1003 |
7 |
銀行コード(通常) |
| 03 |
TTTKSNO1 |
PIC'(7)9' |
|
1010 |
7 |
口座番号(通常) |
| 03 |
TTTKSCB1 |
PIC'(1)9' |
|
1017 |
1 |
口座種別(通常) |
| 02 |
VNADDTKB |
PIC'(1)9' |
|
1018 |
1 |
1 なら KNN3・VTN3 を消去 |
| 02 |
VNADADRA |
(集団項目) |
|
1019 |
68 |
|
| 03 |
VNADKNN1 |
CHAR(8) |
|
1019 |
8 |
→ SDTAJKN1 |
| 03 |
VNADKNN2 |
CHAR(24) |
|
1027 |
24 |
→ SDTAJKN1 |
| 03 |
VNADVTN1 |
CHAR(10) |
|
1051 |
10 |
住所1(印字) |
| 03 |
VNADVTN2 |
CHAR(26) |
|
1061 |
26 |
住所2(印字) |
| 02 |
VNADADRB |
(集団項目) |
|
1087 |
85 |
|
| 03 |
VNADKNN3 |
CHAR(47) |
|
1087 |
47 |
→ SDTAJKN2 |
| 03 |
VNADVTN3 |
CHAR(38) |
|
1134 |
38 |
住所3(印字) |
| 02 |
VNADSPAC |
CHAR(29) |
|
1172 |
29 |
|
| 02 |
KBTTGRUP |
(集団項目) |
2 |
1201 |
29×2=58 |
|
| 03 |
KBTTKKBN |
PIC'(1)9' |
|
1201 |
1 |
|
| 03 |
KBTTIRYO |
FIXED DEC(5) |
|
1202 |
3 |
|
| 03 |
KBTTURKB |
PIC'(1)9' |
20 |
1205 |
1×20=20 |
|
| 03 |
KBTTLRYO |
FIXED DEC(5) |
|
1225 |
3 |
|
| 03 |
KBTTHSU1 |
PIC'(1)9' |
|
1228 |
1 |
|
| 03 |
KBTTHSU2 |
PIC'(1)9' |
|
1229 |
1 |
|
| 02 |
KBTIGRUP |
(集団項目) |
|
1259 |
50 |
|
| 03 |
KBTIKKBN |
PIC'(1)9' |
|
1259 |
1 |
|
| 03 |
KBTIURKB |
PIC'(1)9' |
20 |
1260 |
1×20=20 |
|
| 03 |
KBTIMKBN |
(集団項目) |
3 |
1280 |
9×3=27 |
|
| 04 |
KBTIMAXK |
FIXED DEC(7) |
|
1280 |
4 |
|
| 04 |
KBTIWARK |
FIXED DEC(5) |
|
1284 |
3 |
|
| 04 |
KBTIWARP |
FIXED DEC(3,1) |
|
1287 |
2 |
|
| 03 |
KBTIHSU1 |
PIC'(1)9' |
|
1307 |
1 |
|
| 03 |
KBTIHSU2 |
PIC'(1)9' |
|
1308 |
1 |
|
| 02 |
KBIRSGRP |
(集団項目) |
|
1309 |
13 |
|
| 03 |
KBIRKKBN |
PIC'(2)9' |
|
1309 |
2 |
|
| 03 |
KBIRIRYO |
FIXED DEC(7,2) |
|
1311 |
4 |
|
| 03 |
KBIRLRYO |
FIXED DEC(7) |
|
1315 |
4 |
|
| 03 |
KBIRISKB |
PIC'(1)9' |
|
1319 |
1 |
|
| 03 |
KBIRHSU1 |
PIC'(1)9' |
|
1320 |
1 |
|
| 03 |
KBIRHSU2 |
PIC'(1)9' |
|
1321 |
1 |
|
| 02 |
KBIRHGRP |
(集団項目) |
|
1322 |
13 |
|
| 03 |
KBIRKKBN |
PIC'(2)9' |
|
1322 |
2 |
|
| 03 |
KBIRIRYO |
FIXED DEC(7,2) |
|
1324 |
4 |
|
| 03 |
KBIRLRYO |
FIXED DEC(7) |
|
1328 |
4 |
|
| 03 |
KBIRISKB |
PIC'(1)9' |
|
1332 |
1 |
|
| 03 |
KBIRHSU1 |
PIC'(1)9' |
|
1333 |
1 |
|
| 03 |
KBIRHSU2 |
PIC'(1)9' |
|
1334 |
1 |
|
| 02 |
KBRUGRUP |
(集団項目) |
|
1335 |
133 |
|
| 03 |
KBRUPTRX |
FIXED DEC(3) |
4 |
1335 |
2×4=8 |
|
| 03 |
KBRUHOMN |
CHAR(5) |
25 |
1343 |
5×25=125 |
|
| 02 |
KBPC0000 |
CHAR(33) |
|
1468 |
33 |
|
付録D CORPOMAN(顧客法人管理マスター、120バイト)
| LV |
項目名 |
属性 |
繰返し |
位置 |
長さ |
本PGでの使用 |
| 02 |
CORPVKEY |
(集団項目) |
|
1 |
7 |
|
| 03 |
CORPNICD |
CHAR(7) |
|
1 |
7 |
キー(集約代表コード) |
| 02 |
CORPAIX1 |
(集団項目) |
|
8 |
7 |
|
| 03 |
CORPTKCD |
CHAR(7) |
|
8 |
7 |
|
| 02 |
CORPAIX2 |
(集団項目) |
|
15 |
7 |
|
| 03 |
CORPZAND |
CHAR(7) |
|
15 |
7 |
|
| 02 |
CORPATTN |
PIC'(4)9' |
|
22 |
4 |
|
| 02 |
CORPTKTN |
PIC'(4)9' |
|
26 |
4 |
|
| 02 |
CORPZDTN |
PIC'(4)9' |
|
30 |
4 |
|
| 02 |
CORPJGKB |
CHAR(1) |
|
34 |
1 |
|
| 02 |
CORPTKJG |
CHAR(1) |
|
35 |
1 |
|
| 02 |
CORPDLKB |
CHAR(1) |
|
36 |
1 |
|
| 02 |
CORPNINM |
CHAR(42) |
|
37 |
42 |
CORPNMKB='H' のとき顧客名 |
| 02 |
CORPCOKB |
CHAR(1) |
|
79 |
1 |
|
| 02 |
CORPDSTK |
CHAR(1) |
|
80 |
1 |
|
| 02 |
CORPWARI |
FIXED DEC(3) |
|
81 |
2 |
|
| 02 |
CORPNMKB |
CHAR(1) |
|
83 |
1 |
'H' なら顧客名を CORPNINM にする |
| 02 |
CORPSPAC |
CHAR(14) |
|
84 |
14 |
|
| 02 |
CORPPUDL |
CHAR(1) |
|
98 |
1 |
|
| 02 |
CORPPUMD |
CHAR(6) |
|
99 |
6 |
|
| 02 |
CORPJYCD |
CHAR(6) |
|
105 |
6 |
|
| 02 |
CORPTRMD |
CHAR(4) |
|
111 |
4 |
|
| 02 |
CORPUYMD |
CHAR(6) |
|
115 |
6 |
|
付録E DDPTENMS(店所マスター、170バイト)
| LV |
項目名 |
属性 |
繰返し |
位置 |
長さ |
本PGでの使用 |
| 02 |
VETNHTCD |
PIC'(4)9' |
|
1 |
4 |
キー(代表扱い店) |
| 02 |
VETNNTCD |
CHAR(3) |
|
5 |
3 |
|
| 02 |
VETNGETA |
CHAR(1) |
|
8 |
1 |
|
| 02 |
VETNKNNM |
CHAR(14) |
|
9 |
14 |
|
| 02 |
VETNSRNM |
CHAR(14) |
|
23 |
14 |
店略称 → 4行目右 |
| 02 |
VETNADCD |
PIC'(11)9' |
|
37 |
11 |
|
| 02 |
VETNADNM |
CHAR(72) |
|
48 |
72 |
店住所 → 6・7行目右(★先頭14文字のみ) |
| 02 |
VETNPSNA |
CHAR(5) |
|
120 |
5 |
店〒上5桁 |
| 02 |
VETNTLNO |
CHAR(12) |
|
125 |
12 |
店電話 → 9行目右 |
| 02 |
VETNPUNO |
PIC'(2)9' |
|
137 |
2 |
|
| 02 |
VETNRODA |
FIXED DEC(3) |
|
139 |
2 |
|
| 02 |
VETNSHDA |
FIXED DEC(3) |
|
141 |
2 |
|
| 02 |
VETNMCDA |
FIXED DEC(3) |
|
143 |
2 |
|
| 02 |
VETNKTEN |
CHAR(4) |
|
145 |
4 |
|
| 02 |
VETNYOBI |
CHAR(4) |
|
149 |
4 |
|
| 02 |
VETNJNTC |
CHAR(3) |
|
153 |
3 |
|
| 02 |
VETNNWCD |
CHAR(3) |
|
156 |
3 |
|
| 02 |
VETNSPAC |
CHAR(1) |
|
159 |
1 |
|
| 02 |
VETNGIFL |
CHAR(1) |
5 |
160 |
1×5=5 |
|
| 02 |
VETNSPA2 |
CHAR(3) |
|
165 |
3 |
|
| 02 |
VETNPSNB |
CHAR(2) |
|
168 |
2 |
店〒下2桁 |
| 02 |
VETNPUBO |
CHAR(1) |
|
170 |
1 |
|
付録F BANKMAST(銀行マスター、200バイト)
| LV |
項目名 |
属性 |
繰返し |
位置 |
長さ |
本PGでの使用 |
| 02 |
VBNKMKEY |
PIC'(7)9' |
|
1 |
7 |
キー前半(銀行コード) |
| 02 |
VBNKKOTC |
PIC'(4)9' |
|
8 |
4 |
キー後半(店所) |
| 02 |
VBNKKOCD |
(集団項目) |
|
12 |
35 |
|
| 03 |
VBNKTOZA |
PIC'(7)9' |
|
12 |
7 |
|
| 03 |
VBNKFUTU |
PIC'(7)9' |
|
19 |
7 |
|
| 03 |
VBNKTUTI |
PIC'(7)9' |
|
26 |
7 |
|
| 03 |
VBNKTEKI |
PIC'(7)9' |
|
33 |
7 |
|
| 03 |
VBNKSONO |
PIC'(7)9' |
|
40 |
7 |
|
| 02 |
VBNKSENA |
(集団項目) |
|
47 |
85 |
|
| 03 |
VBNKNAMG |
CHAR(20) |
|
47 |
20 |
銀行名 → 7行目 |
| 03 |
VBNKSNMG |
CHAR(20) |
|
67 |
20 |
支店名 → 8行目 |
| 03 |
VBNKNAMC |
CHAR(20) |
|
87 |
20 |
|
| 03 |
VBNKSNMC |
CHAR(25) |
|
107 |
25 |
|
| 02 |
VBNKRYNA |
(集団項目) |
|
132 |
40 |
|
| 03 |
VBNKNSMG |
CHAR(20) |
|
132 |
20 |
|
| 03 |
VBNKNSMC |
CHAR(20) |
|
152 |
20 |
|
| 02 |
VBNKBACD |
PIC'(4)9' |
|
172 |
4 |
|
| 02 |
VBNKSPAC |
CHAR(25) |
|
176 |
25 |
|