操作
レビュー指摘 #11948
未完了KS60780指摘一覧
開始日:
期日:
進捗率:
0%
予定工数:
実開始日:
DD名:
INCLUDE:
DSN:
バグ区分:
QA分析:
方針(第一貨物):
実終了日:
ツールのバージョン:
AsIsSource行:
進捗計画:
設計・開発者:
画面ID:
機能区分:
機能ID:
レビュー指摘区分:
記述の仕方
検査完了日:
検査依頼日:
説明
KS60780 移行設計書 レビュー指摘(誤り)¶
| 項目 | 内容 |
|---|---|
| 対象資料 | ① クラス設計書 KS60780「請求データ&請求集約コードマッチング」(非表示シート・処理フローシートは対象外) ② テーブル定義 KS60750J_0100TD(No.22 の出力=現行 WORK0100:事業所用)と DDL ③ テーブル定義 KS60750J_0110TD(No.23 の出力=現行 WORK0110:エコデリバー用)と DDL |
| 突合せ基準 | 現行ソース KS60780P(PL/I)、コピーブック SQALLHED、JCL DAISEQ4J(No.22 L710〜L719、No.23 L720〜L729、SORT4 L730〜L776)、KS60760・KS60770 のレビュー指摘(入力 0030TD・0040TD・0050TD) |
| 記述ルール | 設計書作成ルール(バッチ抜粋) |
| 作成日 | 2026-10-15(初版)/2026-10-22(記述ルールを反映して改訂) |
| 関連資料 | 確認事項(漏れ・要確認)は「KS60780_移行設計書_確認事項.md」 |
凡例¶
| 区分 | 意味 |
|---|---|
| 【重大な誤り】 | 現行と処理結果が変わり、出力の内容・有無に大きく影響するもの |
| 【誤り】 | 現行と処理結果が変わるもの、または記述が明確に誤っているもの |
- 根拠は、ソースを「src L○○」、JCL を「JCL L○○」、ルールを「ルール X.Y」「ルール X.Y.Z」と書きます。
- 0110TD は名前以外が 0100TD と同じなので、同じ事象は「T100-n と同じ」と書きます。前段の KS60760・KS60770 で指摘済みの入力テーブルの問題は、その指摘No を参照します。
- 非表示シート(処理フロー生成定義)と処理フロー図(ルール 5.2 で省略可)は対象外です。
現行の処理(要点)¶
| 項目 | 現行の仕様 |
|---|---|
| 実行 | 同じプログラムを2回実行する。No.22:TRFILE=WORK0060(優先印刷マスターに有る)→ WORK0100(事業所用)。No.23:TRFILE=WORK0080(無い)→ WORK0110(エコデリバー用)。INFILE はどちらも WORK0090 |
| マッチング | INFILE のキーは SDTASQNO を13桁にした2〜8桁目、TRFILE のキーは TRKOCD。文字比較で、片方が終わると HIGH(7)。一致したら両方を1件ずつ読み進める(1対1)(src L69〜L107) |
| 一致したとき | TRDAIH=TRKOCD なら SDTADTID←00、違えば 99。SDTASPA1 ← TRDAIH∥TRTNCD(11桁)。本締(SDTAKARI=1)だけレコード全体を書き、仮締は件数を数える(src L83〜L93) |
| メッセージ |
<<< OUTPUT COUNT = 、<<< KARI JIME = (右詰め12桁、0件でも表示。src L111〜L112) |
| 出力の後続 | SORT4(代表扱い店=SDTASPA1 の8〜11桁 → 集約代表=1〜7桁 → SDTACKTT。JCL L742・L774)→ KS60790 |
件数¶
| 資料 | シート | 重大な誤り | 誤り | 計 |
|---|---|---|---|---|
| ① | プロパティ一覧 | 2 | 0 | 2 |
| ① | DB更新仕様 | 1 | 2 | 3 |
| ② | KS60750J_0100TD | 2 | 1 | 3 |
| ③ | KS60750J_0110TD | 2 | 1 | 3 |
| 合計 | 7 | 4 | 11 |
① クラス設計書 KS60780¶
プロパティ一覧¶
| No | 区分 | セル | 指摘内容 | 対応案 |
|---|---|---|---|---|
| PR-2 | 【重大な誤り】 | AV29、AY29 | 参照先の 0050TD ER図・SQL「1.」が ORDER BY MIAANICD, SDTASQNO で、MIAANICD は 0050TD に無いため SQL がエラーになり、No.22・No.23 とも 0100TD・0110TD が作られない(KS60770 T50-6 と同じ)。SDTASQNO だけにしても同じ請求先番号の中の順が決まらず、1対1の突き合わせで残る見出しが変わる(KS60770 T50-7 と同じ。src L94〜L95)。 |
0050TD の SQL を ORDER BY SDTASQNO, SDTASHTN, SDTAKKKK, ID にし(KS60770 T50-7 と同じ)、AY29 に並び順を書く。 |
| PR-3 | 【重大な誤り】 | AV27・AV28、AY27・AY28 | 参照先の 0030TD・0040TD の SQL が ORDER BY TRKOCD ASC だけで、同じ荷主コードが2件あるとき、どちらが見出しと一致するか決まらない(KS60760 T30-6・T40-6 と同じ)。一致したほうでデータID(00/99)と SDTASPA1 が決まり、SDTASPA1 は SORT4 のキーなので、見出しが載る帳票が変わる(src L83〜L86、L94〜L95、JCL L742・L774)。 |
0030TD・0040TD の SQL を ORDER BY TRKOCD, TRDAIH にし(KS60760 T30-6 と同じ)、AY27・AY28 に並び順を書く。 |
DB更新仕様¶
| No | 区分 | セル | 指摘内容 | 対応案 |
|---|---|---|---|---|
| DB-1 | 【重大な誤り】 | P24・V24、P78・V78(SDTANNNO) | 0050TD の NCHAR(20)(現行の20バイト、SQALLHED L20〜L21)を、NCHAR(1) の 0100TD・0110TD にそのまま写すため、最初の本締の登録でエラーになる(推測)か19桁が失われる。現行はレコード全体をそのまま書く(src L90)。 | 0100TD・0110TD を NCHAR(20) に直し(テーブル定義の指摘と同じ)、項目名を「NO(表示方法20テーブル分)」にする。 |
| DB-2 | 【誤り】 | V10、V64(SDTADTID) | 条件が「代表荷主コード[TRDAIH] = 取引先コード[TRTNCD]」で、7桁と4桁を比べるため全件 "99" になる。現行は TRDAIH = TRKOCD で、代表自身は "00"(src L83〜L85。後続の KS60790 は 00/99 を区別しない)。 | 「変数.照合レコード030.代表コード[TRDAIH] = 変数.照合レコード030.顧客コード[TRKOCD] の場合 "00"、以外の場合 "99"」とする(0110TD は 040)。 |
| DB-3 | 【誤り】 | V9・V10、V63・V64 | 編集元の「変数.照合レコード060」「080」がメソッド詳細に無い(変数は照合レコード030・040。メソッド詳細 C19、C21)。項目名「代表荷主コード」「取引先コード」も、0030TD・0040TD の論理名(代表コード、集約コード)と違う。 | 「変数.照合レコード030(0110TD は 040).代表コード[TRDAIH]」「….集約コード[TRTNCD]」とする。 |
② テーブル定義 KS60750J_0100TD(請求明細ヘッダーワークデータ1)¶
テーブル定義・ER図・SQL・DDL¶
| No | 区分 | セル | 指摘内容 | 対応案 |
|---|---|---|---|---|
| T100-1 | 【重大な誤り】 | テーブル定義 C28・E28・L28、DDL L25・L94 | SDTANNNO が NCHAR(1)。現行は PIC'(1)9' の20回繰返しで20桁(SQALLHED L20〜L21)、入力の 0050TD も NCHAR(20) で、DB更新仕様 V24 はそのまま写すため、登録がエラーになるか19桁が失われる。 | NCHAR(20) にし、論理名・備考を 0050TD と同じ「NO(表示方法20テーブル分)」にする(DDL も同じ)。 |
| T100-6 | 【重大な誤り】 | ER図・SQL C9 |
ORDER BY SDTASPA1, SDTACKTT は「集約代表 → 代表扱い店」の順で、SORT4(代表扱い店=SDTASPA1 の8〜11桁 → 集約代表=1〜7桁 → SDTACKTT。JCL L742)と第1・第2キーが逆。KS60790 は入力順のまま集約代表で区切るため、帳票の並び(店の順)と、代表扱い店が違う同じ集約代表のまとまりが変わる。 |
ORDER BY SUBSTR(SDTASPA1, 8, 4)、, SUBSTR(SDTASPA1, 1, 7)、, SDTACKTT の順にし(第4キー以降は T100-7)、カンマは行の先頭に付ける(ルール 7.1)。 |
| T100-7 | 【誤り】 | ER図・SQL C9 | 同じキー(代表扱い店・集約代表・SDTACKTT)の中の順が決まらない。KS60790 は区切りの先頭レコードの見出し項目を使い、請求先をレコード順に印字するので、実行ごとに帳票が変わりうる(現行は EQUALS で動く場合、SDTASQNO の順)。 | 第4キー以降を SDTASQNO、ID にし、SORT4 の EQUALS の既定(USORTM)を運用担当に確認する。 |
③ テーブル定義 KS60750J_0110TD(請求明細ヘッダーワークデータ2)¶
テーブル定義・ER図・SQL・DDL¶
| No | 区分 | セル | 指摘内容 | 対応案 |
|---|---|---|---|---|
| T110-1 | 【重大な誤り】 | テーブル定義 C28・E28・L28、DDL L25・L94 | T100-1 と同じ(DB更新仕様 V78 もそのまま写す)。 | T100-1 と同じ。 |
| T110-6 | 【重大な誤り】 | ER図・SQL C9 | T100-6 と同じ(SORT4 は JCL L774)。 | T100-6 と同じ。 |
| T110-7 | 【誤り】 | ER図・SQL C9 | T100-7 と同じ。 | T100-7 と同じ。 |
ファイル
操作