プログラム仕様書 BU10500P(配車入力(自社増便)検証)
| 項目 |
内容 |
| システムID |
BU |
| 参考資料 |
・現行ソース BU10500P.pl1 ・画面イメージ MPBU040.jpg(配車入力(増便・傭車)) ・現行の解析資料 BU0040_配車入力(自社増).xlsx(シート「MPBU040」「資産一覧」「レコードフォーマット」「SRC_BU10500P」) |
| 項目名の出典 |
画面項目は解析資料のシート「MPBU040」の日本語名、TS・マスターの項目はシート「レコードフォーマット」の日本語名称 |
1. 概要
| 項目 |
内容 |
| プログラムID |
BU10500P(手続き名:BU10500) |
| プログラム名称 |
配車入力(自社 増便)検証 |
| 言語 |
PL/I(CICS コマンドレベル) |
| 処理形態 |
オンライン(CICS 疑似会話型) |
| 動作環境 |
SV(DDP 側) |
| トランザクションID |
BU05 |
| パターンID |
冒頭コメントに「2000年対応済み」とある |
| 使用画面(マップ) |
MPBU040(配車入力(増便・傭車))、MPDM010(共通ヘッダ画面)、ELEPHAN(終了画面) |
| 前の処理 |
BU04(BU10400P)。PF10 で採番した自社増便の指令書を表示し、BU05 で待機している |
| 次の処理 |
チェックOK → BU06(BU10600P:更新)。エラー → BU05(本プログラム) |
| センター照会 |
なし |
| 参照ファイル |
VPMORTR(DDP 車両マスター)、VPJYUGY(DDP 従業員マスター)、VPTENMS(DDP 店所マスター)、VPCHINM(DDP 地名マスター)、VPUNKEI(DDP 運賃計算荷主マスター(1))。いずれも参照のみ |
| 呼出しモジュール |
LSO0020(チェックデジット生成、区分 '07'、タイプ 'G')、LSO0130(日数計算) |
| 起動する印刷 |
BV13(BV11300P)、BV14(BV11400P)。テスト印刷・印刷装置の解放で START する |
| 一時記憶 |
TSキュー(キュー名・長さは通信領域の TSQ_ID・TSQ_LENGTH。BU10400P が書いた「端末ID+'BU04'」、724バイト) |
1.1 機能概要
自社増便の配車内容(1枚目の指令書と、次の指令書 2~4枚目)を入力・チェックする。
- BU10400P が保存した照会結果(TSキュー)を読み、画面の入力内容を項目ごとにチェックする。
- マスターから名称・車種・標屯などを取得し、便名・計画便コードを組み立てる。
- 発行枚数に応じて、次の指令書(2~4枚目)の指令書№を作り、入力内容をチェックする。
- エラーがあれば、エラー項目を強調して BU05 で待機する。
- OKなら確認メッセージを表示し、チェック結果を TSキューに書いて、BU06(更新)で待機する。
flowchart LR
BU04[BU04<br/>BU10400P 照会] -- PF10 採番OK --> BU05[BU05<br/>本プログラム<br/>MPBU040]
BU05 -- エラー --> BU05
BU05 -- OK(確認表示) --> BU06[BU06<br/>BU10600P 更新]
BU05 -- PF2 --> BU04
2. 画面仕様(MPBU040)
画面レイアウトは BU10400P_仕様書.md の 2.1 と同じ。
2.1 入力項目とチェック結果の番号
FLG は TSキューのチェック結果('0':未入力、'1':エラー、'2':OK、'3':関連エラー)。
| FLG |
項目ID |
項目名 |
属性・桁 |
必須 |
| 1 |
BU04031・BU04032 |
指令書№(頭4桁・後5桁) |
数字 4+5 |
―(照会結果のまま。入力不可) |
| 2 |
BU04033 |
発行枚数 |
数字 1 |
必須 |
| 3 |
BU04034 |
運行形態 |
数字 1 |
任意(未入力は 0) |
| 4 |
BU04041 |
運行車区分 |
数字 2 |
必須 |
| 5 |
BU04071 |
積載車番 |
数字 5 |
実質必須(4.3 の車両の組合せ) |
| 6 |
BU04072 |
トレーラー |
数字 5 |
任意 |
| 7 |
BU04081 |
乗務員Aコード |
数字 6 |
運行車区分 01 は必須、それ以外は入力不可(4.3) |
| 8 |
BU04083 |
乗務員Bコード |
数字 6 |
任意(運行車区分 01 以外は入力不可) |
| ― |
BU04091 |
発店コード |
数字 4 |
―(照会時の値。入力不可) |
| 9 |
BU04093・BU04094 |
発送日 月・日 |
数字 2+2 |
必須 |
| 10 |
BU04095・BU04096 |
発送日 時・分 |
数字 2+2 |
必須 |
| 11 |
BU04101 |
最終卸店コード |
数字 4 |
必須 |
| 12 |
BU04103・BU04104 |
最終卸店着日 月・日 |
数字 2+2 |
必須 |
| 13 |
BU04105・BU04106 |
最終卸店着日 時・分 |
数字 2+2 |
必須 |
| 14 |
BU04111 |
最終着店コード |
数字 4 |
必須 |
| 15 |
BU04121 |
直配区分 |
文字 1 |
任意(未入力は 0) |
| 16 |
BU04122 |
直配着地コード |
数字 5 |
直配区分が 1 なら必須 |
| 17 |
BU04123 |
フェリー会社 |
数字 7 |
運行車区分 03・04・05、運行形態 4 なら必須 |
| 18 |
BU04131 |
連絡事項 |
文字 20 |
任意 |
| 19 |
BU04132 |
携帯管理№(特定便区分+特定便NO) |
文字 4 |
任意 |
| 20 |
BU04133 |
鮮魚保険 |
数字 4 |
任意(未入力は 0) |
| 21~25 |
BU04143~BU04161 |
2-出発日付 月・日、2-運行形態、2-最終卸店コード、2-最終卸店到着日 月・日、2-次回運行便出発店所コード |
|
2枚目を発行するとき必須(4.4) |
| 26~30 |
BU04173~BU04191 |
3-(同上) |
|
3枚目を発行するとき必須 |
| 31~35 |
BU04203~BU04221 |
4-(同上) |
|
4枚目を発行するとき必須 |
表示だけの項目:運行車区分名(BU04042)、運行車形態名(BU04043)、計画便コード(BU04044)、便名(BU04045)、乗務員A名・B名、発店名、最終卸店名、最終着店名、2~4-発送店コード・発送店名・最終卸店名・次回運行便出発店所名・指令書№。
2.2 コードと表示名
| 項目 |
コード:表示名 |
| 運行車区分 |
01:ジシヤ、02:ヨウシヤ、03:31FT(2018/03/31 に「10Tコン」から変更)、04:5Tコン、05:フエリー、その他:??? |
| 運行形態 |
0:フツウ、1:ノリツギ、2:ドツキング、3:マルニウンコウ、4:テアテ フエリ、5:カイソウ、6:オウエン カラ、7:オウエン ツミ、8:クウシヤ、その他:????? |
2.3 ファンクションキー
| キー |
機能 |
処理概要 |
| 実行(Enter) |
継続 |
入力内容をチェックする |
| PF2 |
取消 |
TSキューを削除し、BU10400P と同じ初期画面を表示して BU04(照会)に戻る |
| PF3 |
終了 |
印刷装置を解放し、一つ前の画面に戻る |
| PF4 |
戻り |
印刷装置を解放し、メインメニューに戻る |
| PF9 |
テスト印刷 |
印刷装置がOK(COMM_PRI_FLG = '2')ならテスト印刷を出す(BU10400P の 4.9 と同じ。印刷装置のチェックは行わない)。BU05 で待機 |
| PF11 |
印刷装置リセット |
BU10400P の 4.9 と同じ。BU05 で待機 |
| CLEAR |
強制終了 |
印刷装置を解放し、TSキューを削除して終了画面を表示 |
| 上記以外 |
再表示 |
画面のデータ部分を再送信し、BU05 で待機 |
PF3・PF4・CLEAR の印刷装置の解放、戻り先の決め方は BU10400P と同じ(印刷装置の解放の条件は COMM_PRI_FLG = '2')。
3. インターフェース
3.1 通信領域(COMMAREA:256バイト)
| 項目ID |
本プログラムでの用途 |
| TSQ_ID・TSQ_LENGTH |
読み書きする TSキューの名前・長さ(BU10400P がセット) |
| COMM_TRM_CODE |
DDP端末ID(DNKTERM)にセット |
| COMM_RPOC_YMD |
処理日付。入力年月日(DNKIYMD)にセットし、新規の発送日チェックの基準にする |
| COMM_START_YMD・COMM_END_YY/MM/DD |
既存の指令書(データ区分 'D')の計画の出発年月日・最終卸年月日。日付チェックの基準 |
| COMM_INQ_KBN |
照会区分(PF2・PF9 で使う) |
| COMM_PRI_FLG・COMM_PRINTER_ID・COMM_EDA |
印刷関係(PF2・PF9・PF11・解放) |
| CRT_BACK_KOSU/CRT_BACK_DATA(5) |
戻り先画面のスタック(PF3・PF4) |
3.2 TSキュー(CHK_DSP_WORK:724バイト)
| 項目 |
内容 |
| LOOP_FLG・OKFLG |
全体チェック結果('1':エラー、'2':OK) |
| FLG(35) |
項目ごとのチェック結果(2.1)。21~35 は次の指令書 3枚分×5項目(FLGL(3,5)) |
| BACK_AREA |
名称の保存域:便名、傭車会社名、乗務員A名・B名、発店名、最終卸店名、最終着店名、発店・最終卸店の所在地コード(先頭5桁)、次の指令書ごとの発送店名・最終卸店名・次回運行便出発店所名と所在地コード |
| REVE_DATA |
照会結果(DEFPBU04:配車 照会、検証後(増、傭)DEFIN、410バイト)。本プログラムのチェック結果を書き込み、BU06 に渡す |
3.3 チェック結果としてセットする主な項目(DEFPBU04)
| 項目ID |
項目名 |
セットする値 |
| DNKTERM |
DDP端末ID |
端末ID |
| DNKIYMD |
入力年月日 |
処理日付 |
| DNKSHCN・DNKKEIT・DNKKUBN |
指令書発行枚数・運行形態区分・運行車区分 |
画面の入力値 |
| DNKCARS・DNKTONS・DNKSYAS |
積載車番・積載車標屯・積載車種 |
画面の積載車番と、車両マスターから決めた標屯・車種(4.2 No.5) |
| DNKCART・DNKTONT・DNKSYAT |
トレーラ頭・コンテナ車・標屯・車種 |
画面のトレーラーと、車両マスターから決めた標屯・車種(4.2 No.6) |
| DNKDRIA・DNKDRIB |
乗務員 A・B |
画面の入力値(未入力は 000000) |
| DNKSTTC・DNKSTID |
発店・発支社区分 |
発店コードと店所マスターの支社区分(店所内部コードの1桁目) |
| DNKSTYY~DNKSTMI |
出発 年・月・日・時・分 |
発送日の入力値。年は 4.3 で決める |
| DNKENTC・DNKENID |
最終卸店・最終卸支社区分 |
最終卸店コードと支社区分 |
| DNKENYY~DNKENMI |
最終卸店到着 年・月・日・時・分 |
最終卸店着日の入力値。年は 4.3 で決める |
| DNKFUTC・DNKFUID |
次運行発店・次運行発支社 |
最終着店コードと支社区分 |
| DNKGHKB・DNKGHCD・DNKGHTC |
直配区分・直配着地コード・直配着地最寄りの店所 |
入力値と、地名マスターの扱店コード |
| DNKFRCD |
フェリー、ライナーコード |
フェリー会社の入力値 |
| DNKINFO |
連絡事項 |
入力値(26バイト) |
| DNKKBID・DNKTKCD |
特定便区分・特定便NO |
携帯管理№の1桁目・2~4桁目 |
| DNKFISH |
一車保険料(自社、鮮魚の場合) |
鮮魚保険の入力値 |
| DNKBNCD・DNKBNNM・DNKNAMC |
計画便コード・便名(漢字)・便名(カナ) |
新規(データ区分 'N')のとき組み立てる(4.5) |
| DNKNSNO(3) |
次の運行の指令書NO |
2~4枚目の指令書№(4.4) |
| DNKNSTT・DNKNSTI・DNKNSYY~DD・DNKNKEI・DNKNENT・DNKNENI・DNKNEYY~DD・DNKNFUT・DNKNFUI・DNKNGNM・DNKNCNM(各3件) |
次の指令書情報 |
2~4枚目の入力値と名称 |
| DNKNYUK・DNKINKB |
入力結果・入力区分 |
通常は '1'・1、減便は '9'・9 |
4. 処理仕様
4.1 処理の流れ
flowchart TD
S([開始]) --> AID{押されたキー}
AID -- CLEAR --> CLR[印刷装置解放・TSキュー削除<br/>終了画面]
AID -- PFキー --> PF[ファンクションキー処理 2.3]
AID -- 実行 --> RCV[MPBU040 を受信<br/>TSキューを読んで削除]
RCV -- TSキューなし --> CLR
RCV --> CHK[項目チェック 4.2<br/>関連チェック 4.3<br/>次の指令書 4.4<br/>便コード 4.5]
CHK --> DSP[表示の編集 4.6]
DSP -- エラー --> ERR[TSキュー保存<br/>エラー表示] --> W05([BU05 で待機])
DSP -- OK --> OK[TSキュー保存<br/>確認メッセージ表示] --> W06([BU06 で待機])
4.2 開始時の処理と項目チェック(CHECK_SUB_RTN_LVL1)
- 例外条件(画面データなし・レコードなし・ファイルの終わり)と CLEAR は終了処理へ。それ以外のPFキーは 2.3。
- 画面を受信し、TSキューを読んで削除する。読めなければ終了処理へ。
- TSキューの全体チェック結果が OK(BU10400P から来たとき)なら、FLG(1~35) をすべて '1' にして全項目をチェックし直す。
- DDP端末ID・入力年月日をセットし、次の順にチェックする。FLG が '2' の項目はチェックしない。
| No |
項目 |
未入力 |
チェック内容(満たさなければエラー) |
| 1 |
指令書№ |
未入力('0') |
数字で、照会結果の指令書NO と同じ。'999999999' のときは減便とし、全項目のチェック結果をOKにして入力結果を '9' にする |
| 2 |
発行枚数 |
エラー |
1~4 |
| 3 |
運行形態 |
0(OK) |
0・3・4・5・6・7・8 のいずれか |
| 4 |
運行車区分 |
エラー |
数字で 01・03・04・05 のいずれか |
| 5 |
積載車番 |
車番 0、標屯 0、車種空白 |
数字。標屯・車種は下表で決める(車種が決まらない場合は 'X') |
| 6 |
トレーラー |
車番 0、標屯 0、車種空白 |
数字。車両マスターを読み、車両現廃区分(VESYGHKB)が 1 以下なら、標屯=最大積載量÷1000、車種は車両車種(VESYSYAS)が 01→'R'、03→'F'、04→'G'、それ以外→'X'。マスターになければ 'X' |
| 7 |
乗務員Aコード |
未入力('0') |
運行形態・運行車区分がOKのときだけチェックする。数字で、従業員マスターにあり採用・退職区分(VEJYSTKB)が 0(氏名を表示)。マスターになく 999999 なら「ダミーコード」。それ以外はエラー(氏名に「??????」) |
| 8 |
乗務員Bコード |
未入力('0') |
乗務員Aと同じ |
| ― |
発店コード |
― |
初回だけ(発店の所在地コードが未設定のとき)店所マスターを読み、店所名・所在地コードを取得する。店所区分(VETNGETA)が 1、または 4 で店所 0641 でなければ店所名に「??????」を表示する(チェック結果には反映しない)。支社区分は 4.3 |
| 9 |
発送日 月・日 |
エラー |
数字。月 01~12、日 01~31 |
| 10 |
発送日 時・分 |
エラー |
数字。時 00 なら分 01~59、時 01~23 なら分 00~59 |
| 11 |
最終卸店コード |
エラー |
数字で店所マスターにあり、店所区分が 1 または 8 |
| 12 |
最終卸店着日 月・日 |
エラー |
9 と同じ |
| 13 |
最終卸店着日 時・分 |
エラー |
10 と同じ |
| 14 |
最終着店コード |
エラー |
数字で店所マスターにあり、店所区分が 1 |
| 15 |
直配区分 |
0(未入力) |
0 または 1 |
| 16 |
直配着地コード |
直配区分が 1 ならエラー(直配区分もエラー)、それ以外は 0 |
数字で地名マスターにあり、入力区分(VCHIIKUB)が 1。直配区分が 1 なら扱店コード(VCHIATCD)を直配着地最寄りの店所にセット、1 以外ならエラー(直配区分もエラー) |
| 17 |
フェリー会社 |
運行車区分 03・04・05 または運行形態 4 ならエラー、それ以外はOK |
数字で 9950000~9989999。運賃計算荷主マスター(1)(キー:コード+'00000001')にあり、運行車区分 03・04(ライナー)はフェリー会社区分(KDEXKBNN)が 2、それ以外(フェリー)は 1 |
| 18 |
連絡事項 |
未入力('0') |
チェックなし |
| 19 |
携帯管理№ |
OK |
1桁目(特定便区分)が S・F・R のいずれか、2~4桁目(特定便NO)が数字で 000 より大きい。特定便区分 R は発店が 0407・0405・0404・0326 のときだけ |
| 20 |
鮮魚保険 |
0(OK) |
数字 |
積載車番の標屯・車種:
| 条件 |
標屯 |
車種 |
| 運行車区分 03 |
13.8(以前は 10.0) |
'1' |
| 運行車区分 04 |
5.0 |
'5' |
| 上記以外で車両マスターにない、または車両現廃区分が 2 以上 |
― |
'X' |
| 車両車種 14・26(26 はリース) |
最大積載量÷1000 |
最大積載量 0:'X'、2000 以下:'2'、4000 以下:運行車区分 04 なら '5'、それ以外 '4'、4000 超:'T' |
| 車両車種 01/02/03/04/07 |
同上 |
'R'/'S'/'T'/'G'/'T' |
| 車両車種 91 |
13.8(運行車区分 04 なら 5.0) |
'1'(運行車区分 04 なら '5') |
| 車両車種 92 |
5.0 |
'5' |
| 車両車種 その他 |
最大積載量÷1000 |
'X' |
4.3 関連チェック
減便(入力結果 '9')のときは行わない。
| No |
条件 |
チェック内容(満たさなければエラー) |
| 1 |
運行形態・運行車区分がOK |
運行車区分が 01 以外なら発行枚数は 1(エラーは発行枚数)。運行形態が 4(手当付きフェリー)なら運行車区分は 01・05、運行形態が 0・8 以外(3・5・6・7)なら運行車区分は 01(エラーは運行形態・運行車区分) |
| 2 |
運行形態・運行車区分がOK(積載車番・トレーラーがともにOKでない場合) |
車両の組合せ(下表)。満たさなければ積載車番・トレーラーをエラー。運行形態・運行車区分がエラーなら積載車番・トレーラーもエラー |
| 3 |
運行形態・運行車区分がOK |
運行車区分 01:乗務員Aが必須。乗務員Aと乗務員Bが同じ(999999 を除く)ならエラー。運行車区分 01 以外:乗務員A・Bとも未入力でなければエラー。運行形態・運行車区分がエラーなら乗務員A・Bもエラー |
| 4 |
発店 |
店所区分が 1、または 4 で店所 0641 のとき、既存の指令書(データ区分 'D')は照会結果の発支社区分と店所の支社区分が同じであること(大阪第一 'B' と大阪第二 'C' は同一管内として可)。新規('N')は店所の支社区分をセット。最終卸店・最終着店も同様(最終卸店は店所区分 1・8、最終着店は 1) |
| 5 |
発送日・時分、最終卸店着日・時分がすべてOK |
日付の範囲(下表)。発送日・最終卸店着日をエラーにする。同じ日の場合は発送時分 < 最終卸店着時分でなければ、4項目すべてエラー。OKなら出発年・最終卸店到着年をセット |
| 6 |
運行形態・運行車区分・フェリー会社がOK |
フェリー会社は、運行車区分 03・04・05 または運行形態 4 のときだけ入力できる。それ以外で入力されていれば運行車区分・フェリー会社をエラー |
| 7 |
携帯管理№・鮮魚保険・運行車区分がOK |
特定便区分 R:運行車区分 01 なら鮮魚保険 0~3000、それ以外はエラー(鮮魚保険 0 なら携帯管理№だけ、それ以外は両方)。特定便区分 R 以外:鮮魚保険は 0。エラーは関連エラー('3') |
車両の組合せ(No.2):
| 運行車区分 |
OKの組合せ(積載車種・トレーラー車種) |
| 01(自社)・05(フェリー) |
積載が F・T・2・4 でトレーラーなし、積載 S+トレーラー R、積載 G+トレーラー F |
| 03(31FT) |
積載 '1' でトレーラーなし |
| 04(5Tコン) |
積載 '5' でトレーラーなし |
| その他 |
エラー |
日付の範囲(No.5):
| データ区分 |
発送日の範囲 |
発送日~最終卸店着日の日数 |
| 'D'(既存の指令書) |
計画の出発年月日(COMM_START_YMD)の 0~1日後 |
計画の所要日数(計画の出発~最終卸)が 0 なら 0~1日、それ以外は「計画の所要日数-1」~計画の所要日数。計画の所要日数が取れなければエラー |
| 'N'(新規) |
処理日付の ±20日以内(以前は ±7日) |
0~3日 |
年は基準日の年とし、基準日が12月で入力が1月なら翌年、基準日が1月で入力が12月なら前年とする(最終卸店着日は、発送日が12月で着日が1月なら翌年)。
4.4 次の指令書(2~4枚目)のチェック
減便のときは行わない。2枚目から順に 3枚分、次のようにする(以下「n枚目」)。
- 発行枚数がOKで n ≦ 発行枚数なら「発行する」。発行枚数がエラーの場合も「発行する」とする。
- 発行する場合、指令書№ を「1枚目の指令書NO の頭7桁+n」にチェックデジットを付けて作る(LSO0020)。失敗したら 999999999。発行しない場合・発行枚数がエラーの場合は 0。
- 発送店:2枚目は1枚目の最終着店、3・4枚目は前の枚の次回運行便出発店所(支社区分・店所名も引き継ぐ)。
- 各項目をチェックする。発行しない枚は、未入力(運行形態は 0)でなければエラー。
| 項目 |
発行する場合のチェック(満たさなければエラー) |
| 出発日付 月・日 |
必須。数字で月 01~12、日 01~31 |
| 運行形態 |
未入力は 0(未入力扱い)。0・3・5・6・7・8 のいずれか。運行形態・運行車区分がOKなら、0・8 以外は運行車区分 01 のときだけ |
| 最終卸店コード |
必須。数字で店所マスターにあり、店所区分が 1・8(それ以外は大阪第一・第二の支社区分の読替えができなければエラー) |
| 最終卸店到着日 月・日 |
必須。出発日付と同じ |
| 次回運行便出発店所コード |
必須。数字で店所マスターにあり、店所区分が 1(それ以外は最終卸店と同じ) |
| 日付の関連 |
出発日付・最終卸店到着日がOKで、1枚目の日付(4.3 No.5)がOKのとき:出発日付は前の枚の最終卸店到着日(2枚目は1枚目の最終卸店着日)の 0~1日後、最終卸店到着日は出発日付の 0~2日後。年は1枚目の最終卸店到着年を基準に、12月→1月の年またぎを補正する |
4.5 入力結果・便コードの設定
- 減便なら入力結果 '9'・入力区分 9、それ以外は入力結果 '1'・入力区分 1 にする。
- 新規(データ区分 'N')で最終卸店がOKなら、計画便コードを「'9'+発店の頭2桁+最終卸店の頭2桁+'1'」にする。
- 新規の場合、便名を組み立てる。
- 便名(漢字):「*」+発店の店所略名(先頭6バイト)+「~」+最終卸店の店所略名(先頭6バイト)。
- 便名(カナ):発店の店所名(カナ)先頭7桁+'-'+最終卸店の店所名(カナ)先頭7桁。
- 次の指令書の便名も、発送店(前の枚の着店)から同様に組み立てる。
- 店所 2303・2304 の店所略名は、それぞれ「名古南 支店」「名古西 支店」に置き換える。
4.6 表示の編集(DISPLAY_SUB_RTN_LVL1)と終了処理
- 次の指令書(2~4枚目):指令書№、発送店コード・名、出発日付、運行形態、最終卸店コード・名、最終卸店到着日、次回運行便出発店所コード・名を表示する。OK・未入力の項目は入力不可、エラーの項目は入力可・高輝度でカーソルを置く。
- 1枚目の各項目:OK・未入力は入力不可、エラー(関連エラーを含む)は入力可・高輝度でカーソルを置く。0 の項目(車番・乗務員・直配着地・フェリー会社など)は空欄にする。発店は属性を変えない。
- 計画便コード・便名を表示し(入力不可)、運行車区分名・運行車形態名を 2.2 のとおり表示する。
- 全体のチェック結果(FLG(1~35) に '1' または '3' があればエラー)で、メッセージをセットする。
| 状態 |
エラーコード |
メッセージ |
次の処理 |
| エラー |
ERR 1 |
エラー項目あり,再入力して下さい。 |
TSキューを書き、画面のデータ部分を送信して BU05 で待機 |
| OK(入力結果 '1') |
OK 2 |
確認OKなら実行キーを押して下さい。修正なら、PF5 |
TSキューを書き(失敗したら終了処理)、画面のデータ部分を送信して BU06 で待機 |
| OK(入力結果 '9') |
OK 2 |
減便になります。 修正なら、PF5 |
同上 |
5. メッセージ一覧
| No |
エラーコード |
メッセージ |
表示するとき |
| 1 |
ERR 1 |
エラー項目あり,再入力して下さい。 |
項目エラー・関連エラーがある |
| 2 |
OK 2 |
確認OKなら実行キーを押して下さい。修正なら、PF5 |
チェックOK |
| 3 |
OK 2 |
減便になります。 修正なら、PF5 |
指令書№に 999999999 を入力 |
| 4 |
― |
定便=>便コード・出発月日、又は指令NO 増便=>PF10 / PF10を押して、指令書NOを表示してください。 |
PF2(初期画面に戻る) |
6. 画面遷移
flowchart LR
BU04[BU04 照会] --> BU05[BU05<br/>本プログラム]
BU05 -- 実行(エラー) --> BU05
BU05 -- 実行(OK) --> BU06[BU06 更新]
BU05 -- PF2 --> BU04
BU05 -- PF9/PF11/その他 --> BU05
BU05 -- PF3 --> PREV[一つ前の画面]
BU05 -- PF4 --> MAIN[メインメニュー]
BU05 -- CLEAR --> END[ELEPHAN 終了]
7. 補足・留意事項
-
減便は画面から入力できない:指令書№に 999999999 を入れると減便になる処理があるが、自社増便の画面では指令書№が入力不可(BU10400P・本プログラムとも)のため、実際には入力できない。
-
発店のエラーがチェック結果に反映されない:発店の店所区分が合わない、または支社区分が違う場合でも、店所名が「??????」になるだけで、エラーにならない。
-
積載車番は実質必須:積載車番が未入力だと車種が空白になり、車両の組合せ(4.3 No.2)でエラーになる。
-
フェリー会社の関連チェックの書き方:関連チェック(4.3 No.6)は条件を8つ並べているが、実質は「フェリー会社は運行車区分 03・04・05 または運行形態 4 のときだけ入力可」となる。
-
特定便区分 R の扱い:運行車区分が 01 以外で特定便区分 R の場合は、鮮魚保険の値に関係なくエラーになる。
-
次の指令書の年:3・4枚目の日付チェックで、年は1枚目の最終卸店到着年を基準にするため、2枚目以降で年をまたぐ場合に正しく判定されない可能性がある。また、1月→12月(前年)の補正はない。
-
運行車区分 03 の表示名:本プログラムは「31FT」と表示するが、BU10400P は「10Tコン」のまま。
-
発行枚数がエラーのときの次の指令書:発行枚数がエラーでも次の指令書は「発行する」扱いになり、全3枚分が必須チェックされる(指令書№は 0)。
-
PF9 のテスト印刷:印刷装置のチェックは行わず、BU04 でチェック済み(COMM_PRI_FLG = '2')の場合だけ印刷する。
-
使っていない領域:MAXL・MAX・YCNT・CNT_MAX・TANERR・END_MSG などのワークは使っていない。センター照会は行わない。