プロジェクト

全般

プロフィール

レビュー指摘 #11947

未完了

KS60770指摘一覧

幸塚 和久 さんが14日前に追加. 7日前に更新.

ステータス:
新規
優先度:
通常
開始日:
期日:
進捗率:

0%

予定工数:
実開始日:
DD名:
INCLUDE:
DSN:
バグ区分:
QA分析:
方針(第一貨物):
実終了日:
ツールのバージョン:
AsIsSource行:
進捗計画:
設計・開発者:
画面ID:
機能区分:
機能ID:
レビュー指摘区分:
記述の仕方
検査完了日:
検査依頼日:

説明

KS60770 移行設計書 レビュー指摘(誤り)

項目 内容
対象資料 ① クラス設計書 KS60770「請求データヘッダー部出力」(非表示シート・処理フローシートは対象外)
② テーブル定義 DAISEQ4J_0610TD(KS60770 の入力)と DDL
③ テーブル定義 KS60750J_0050TD(KS60770 の出力)と DDL
突合せ基準 現行ソース KS60770P(PL/I)、コピーブック SQALLHED ほか、JCL DAISEQ4J(SORT L74〜L90、KS60770P L657〜L663、SORT3 L695〜L708)、KS60130・KS60135 の 0610TD に関する指摘
記述ルール 設計書作成ルール(バッチ抜粋)
作成日 2026-10-15(初版)/2026-10-22(記述ルールを反映して改訂)
関連資料 確認事項(漏れ・要確認)は「KS60770_移行設計書_確認事項.md」

凡例

区分 意味
【重大な誤り】 現行と処理結果が変わり、出力の内容・有無に大きく影響するもの
【誤り】 現行と処理結果が変わるもの、または記述が明確に誤っているもの
  • 根拠は、ソースを「src L○○」、JCL を「JCL L○○」、ルールを「ルール X.Y」「ルール X.Y.Z」と書きます。
  • テーブル定義の指摘番号(T61-n、T50-n)は、他のプログラムの指摘から参照されているため、前回の番号を引き継いでいます(欠番があります)。
  • 非表示シート(処理フロー生成定義)と処理フロー図(ルール 5.2 で省略可)は対象外です。

現行の処理(要点)

項目 現行の仕様
入力 WORK0620(KS60130P の出力を SORT で並べたもの。JCL L88〜L89)。可変長で5種類のレイアウトが混在する
対象行 SDTADTID=00 の見出しで(src L69)、運賃・料金・消費税・保険料の合計が 0 以外(マイナスを含む) のもの(src L72〜L73)
出力 入力の見出しレコードをそのまま書く(src L76)。出力先 WORK0050 は毎回空から作る(JCL L609、L660)
後続 SORT3(請求先番号。JCL L707)→ KS60780(1対1の突き合わせ)
メッセージ <<< INPUT COUNT = 、<<< OUTPUT COUNT = (src L87〜L88。INPUT COUNT は加算されず常に 0)

件数

資料 シート 重大な誤り 誤り 計
① プロパティ一覧 0 1 1
① メソッド詳細 1 0 1
② DAISEQ4J_0610TD 0 2 2
③ KS60750J_0050TD 1 2 3
合計 2 5 7

① クラス設計書 KS60770

プロパティ一覧

No 区分 セル 指摘内容 対応案
PR-1 【誤り】 AY27 条件が『条件無し』だが、参照先の 0610TD ER図・SQL「3.」は WHERE SDTADTID = '00' で見出しだけを取得する(0610TD ER図・SQL C29。見出しの誤りは KS60135 T10-5 と同じ)。このためメソッド詳細 D18 の「取得件数 = 0件」は、入力ではなく見出しが0件の意味になる。 AY27 を「データID[SDTADTID] = "00"(見出しのみ)」にする。

メソッド詳細

No 区分 セル 指摘内容 対応案
MD-1 【重大な誤り】 No.1 F36 「変数.作業合計 = 0 の場合」に 0050TD へ登録し出力件数を加算している(G37・G38)。現行は IF WKSYUJ ¬= 0 で 0 以外を出力する(src L72〜L78)ため、請求額のある見出しが1件も入らず、0 の見出しだけが KS60780 → KS60790 の帳票に渡る。 「変数.作業合計 ≠ 0 の場合」(マイナスを含む)にする。

② テーブル定義 DAISEQ4J_0610TD(全送状ワークデータ。KS60770 の入力)

テーブル定義・ER図・SQL・DDL

No 区分 セル 指摘内容 対応案
T61-6 【誤り】 DAISEQ4J_0610TD 行138〜152(SSAL〜)、DDL L138〜L152 デパート(SDPSQALA)の SSALDABN・SSALDABS・SSALDABT・SSALMAIS・SSALJIKB・SSALSPAC の6列が無い(SDPSQALA L22〜L27)。KS60770 は見出しだけを読むので影響しないが、デパートの行を使う KS60144 で値が失われる。 6列を追加する(DDL も同じ)。
T61-12 【誤り】 ER図・SQL D31〜D38(3. の ORDER BY) SDTAKKKK, SDTASQNO, SDTAYYMM, SDTADTID, … で、現行の WORK0620 の見出しの順(配信店 SDTASHTN → 予備 SDTAKKKK → 請求先番号 → 区分 SDTASPA1 → …。JCL L88〜L89)と違う(KS60135 T10-5 と同じ)。KS60770 の出力の集合は変わらないが、0050TD の登録順(ID)が変わり、同じ請求先番号・配信店の見出しの順を ID で決める 0050TD の取得(T50-7)で、KS60780 に残る見出しが変わる。 SDTASHTN、SDTAKKKK、SDTASQNO、SDTASPA1、SDTAKARI、SDTADPKB、SDTAYYMM、SDTAHYMD の順にする(カンマは T61-15)。

③ テーブル定義 KS60750J_0050TD(請求明細全送り状データ(A)HEAD。KS60770 の出力)

テーブル定義・ER図・SQL・DDL

No 区分 セル 指摘内容 対応案
T50-3 【誤り】 KS60750J_0050TD E18・L18(SDTAHYMD)、E20・L20(SDTAKYMD)、E21・L21(SDTASYMD)、DDL L15・L17・L18・L83・L85・L86 年月日3項目が NCHAR(8)・[YYYYMMDD]。現行は PIC'(6)9' の6桁(SQALLHED L9、L12〜L13)で、KS60770 は値を変えずに書く(src L76)ため、入力の 0610TD・後続の 0100TD・0110TD(いずれも NCHAR(6))と合わず「YYMMDD+空白2桁」が入る。 NCHAR(6)・[YYMMDD] にする(DDL も同じ)。
T50-6 【重大な誤り】 ER図・SQL C6、C10(1. の SELECT 句・ORDER BY) SELECT * の「*」が全角で、ORDER BY MIAANICD, SDTASQNO の MIAANICD は 0050TD に無い列のため、SQL がエラーになり KS60780 が 0100TD・0110TD を作れない(KS60780 プロパティ一覧 AV29)。現行の SORT3 は SDTASQNO(+SDTASPA1 の1バイト目)の昇順(JCL L707)。 「*」を半角にし、ORDER BY の先頭キーを SDTASQNO にする(第2キー以降は T50-7)。
T50-7 【誤り】 ER図・SQL C10(1. の ORDER BY) 同じ SDTASQNO の見出しの中の順が決まらない。KS60780 は同じ荷主の2件目以降の見出しを捨てる(1対1の突き合わせ)ので、残る見出しが実行ごとに変わりうる(現行は SORT3 が EQUALS で動く場合、WORK0620 の順=SDTASHTN → SDTAKKKK の順。JCL L88、L707)。 第2キー以降を SDTASHTN、SDTAKKKK、ID にし、カンマは行の先頭に付ける(ルール 7.1)。SORT3 の EQUALS の既定(USORTM)を運用担当に確認する。

ファイル

KS60770_詳細設計書.md (21.8 KB) KS60770_詳細設計書.md [参考資料]現行ソース解析資料AI生成版 幸塚 和久, 2026-10-15 04:14 午後
KS60770_移行設計書_確認事項.md (11.3 KB) KS60770_移行設計書_確認事項.md [参考資料]確認事項 幸塚 和久, 2026-10-22 09:55 午前

他の形式にエクスポート: Atom PDF