#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：顧客管理
#
# シェル名      ：機器オプションサービス解約予約確定抽出
#
# 機能          ：異動予約に解約予約が積まれている機器オプションを解約対象として抽出する。
#詳細仕様は、「SSA10_EO2920410J0_機器ＯＰサービス解約予約確定抽出(補足説明）.xlsx」参照
#
# コマンド形式  ：EO2920410J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v14.00.00      2015/05/20    FJ)有本      OM-2015-0001266 性能改善
# v14.01.00      2015/06/17    FJ)宇野      OM-2015-0001266 中間ファイル名変更
# v14.02.00      2015/06/25    FJ)土井      ST-2015-0000031 性能改善カレント抽出対応
# v14.03.00      2015/07/03    FJ)張本      OM-2015-0001275 障害対応
# v19.00.00      2015/10/08    FJ)有本      OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応
# v20.00.00      2015/11/18    FJ)福山      OM-2015-0003006 ソート削除対応
#
##############################################################

##############################################################
# 環境変数定義
##############################################################

#
#---ツール格納場所
#
G_TOOLSH=.

#
#---環境変数定義Shell呼び出し
#
. EOK010110J0.sh

#
#---ＪＯＢ名
#
JOBNAME=`basename $0 | sed -e "s/\.sh//g"`

#
#---サービス（業務プロセス）
#
SVC=$JOBNAME

#
#---OPD
#
OPD=$1

#
#---業務で必要な変数定義
#
#xxx=xxxxxxx
##############################################################
# 業務処理
##############################################################
sh ${G_TOOLSH}/EOK010210J0.sh CS00025I $JOBNAME

#
#---運用日付取得
#
if [ "${OPD}" = "" ]; then
   . EOK010310J0.sh "BDATE"
   OPD=${RSLT_OPEDATE}
else
   RSLT_OPEDATE=${OPD}
fi

#
#---パラメタ定義
#

P1="OPD=$OPD,"
P2="SVCCTL=,"
P3="JOB=EO2920410J0,"
P4="IND1=,"
P5="INF1=,"
P6="IND2=,"
P7="INF2=,"
P8="OTD1=,"
P9="OTF1=,"
P10="OTD2=,"
P11="OTF2=,"
P12="TABLENAME=,"
P13="SQLKEY=,"
P14="SQLPARAM=,"
P15="ERRFILE=,"
P16="RECOVERY=,"
P17="BREAKPTN=,"
P18="FREE="
PARA="$P1$P2$P3$P4$P5$P6$P7$P8$P9$P10$P11$P12$P13$P14$P15$P16$P17$P18"

sh ${G_TOOLSH}/EOK010210J0.sh CS00027I $JOBNAME

#
#--- アンロード関数
#       p1：テーブル名／クエリファイル名
EXEC_UNLOAD()
{
   sh ${G_TOOLSH}/EOKULD02.sh $1 $2
   
   rc=$?
   if [ $rc -ne 0 ]
   then
      sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " unload error($2:rc=$rc) "
      echo $JOBNAME " unload error($2:rc=$rc) "
      exit ${G_RTN_ERROR}
   fi
}

#
#--- 存在チェック関数
#       p1：ファイルパス
EXEC_CHECK()
{
   if [ ! -r $1 ]
   then
       sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($1) "
       echo $JOBNAME " File is nonexist($1) "
       exit ${G_RTN_ERROR}
   fi
}

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING()
{
   OUTFILE=$1
   DEF=$2
   TMPDEF=$3

   # 出力ファイルの初期化
   cat /dev/null > ${OUTFILE}
   cat /dev/null > ${TMPDEF}
   rc=$?
   if [ $rc -ne 0 ]
   then
      sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File cat error(${OUTFILE}:rc=$rc) "
      echo $JOBNAME " File cat error(${OUTFILE}:rc=$rc) "
      exit ${G_RTN_ERROR}
   fi

   # DEFTMPファイル作成
   cat ${DEF}>${TMPDEF}
   sed -i -e s@'${MID_DIR_KK}'@${MID_DIR_KK}@g ${TMPDEF}

   # マッチング実行
   export ZTLOUTFILE=${OUTFILE}
   ${G_TOOLSH}/util/bin/ZTLMAT01 ${TMPDEF}
   rc=$?
   if [ $rc -ne 0 ]
   then
      sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " matching error($2:rc=$rc) "
      echo $JOBNAME " matching error($2:rc=$rc) "
      exit ${G_RTN_ERROR}
   fi
}

#
#--- 中間ファイルクリア関数
#       p1：ファイルパス
EXEC_CLEAR()
{
   FILE=$1
   # 出力ファイルの初期化
   cat /dev/null > ${FILE}
   rc=$?
   if [ $rc -ne 0 ]
   then
      sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File cat error(${FILE}:rc=$rc) "
      echo $JOBNAME " File cat error(${FILE}:rc=$rc) "
      exit ${G_RTN_ERROR}
   fi
}


#
#--- ファイル定義
#

#アンロード用SQLファイル
SQLFILE_KK1681=${SQL_DIR}/KK_U_KK1681_06.sql

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLFILE_KK2811=${SQL_DIR}/KK_U_KK2811_04.sql
#SQLFILE_KK0341=${SQL_DIR}/KK_U_KK0341_21.sql
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END

SQLFILE_KK0771=${SQL_DIR}/KK_U_KK0771_01.sql

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLFILE_KK0081=${SQL_DIR}/KK_U_KK0081_83.sql
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END

SQLFILE_KK0781=${SQL_DIR}/KK_U_KK0781_08.sql
SQLFILE_KK2851=${SQL_DIR}/KK_U_KK2851_01.sql

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLFILE_KK0241=${SQL_DIR}/KK_U_KK0241_18.sql
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END

SQLFILE_KK0791=${SQL_DIR}/KK_U_KK0791_06.sql

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLFILE_KK0251=${SQL_DIR}/KK_U_KK0251_13.sql
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END


#アンロード結果出力ファイル
SQLOUT_KK1681=${MID_DIR_KK}/KKIFM551001_UL_KK1681.csv

# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#SQLOUT_KK2811=${MID_DIR_KK}/KKIFM551001_UL_KK2811.csv
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#SQLOUT_KK0341=${MID_DIR_KK}/KKIFM551001_UL_KK0341.csv

SQLOUT_KK0771=${MID_DIR_KK}/KKIFM551001_UL_KK0771.csv

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLOUT_KK0081=${MID_DIR_KK}/KKIFM551001_UL_KK0081.csv
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END

SQLOUT_KK0781=${MID_DIR_KK}/KKIFM551001_UL_KK0781.csv
SQLOUT_KK2851=${MID_DIR_KK}/KKIFM551001_UL_KK2851.csv

### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#SQLOUT_KK0241=${MID_DIR_KK}/KKIFM551001_UL_KK0241.csv
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END

SQLOUT_KK0791=${MID_DIR_KK}/KKIFM551001_UL_KK0791.csv

# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#SQLOUT_KK0251=${MID_DIR_KK}/KKIFM551001_UL_KK0251.csv


#bsortexソート結果出力
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#KK1681_SORT=${MID_DIR_KK}/KKIFM551001_KK1681_SORT.tmp
#KK2811_SORT=${MID_DIR_KK}/KKIFM551001_KK2811_SORT.tmp
#KK0341_SORT=${MID_DIR_KK}/KKIFM551001_KK0341_SORT.tmp
#KK0771_SORT=${MID_DIR_KK}/KKIFM551001_KK0771_SORT.tmp
#KK0081_SORT=${MID_DIR_KK}/KKIFM551001_KK0081_SORT.tmp
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END

KK0781_SORT=${MID_DIR_KK}/KKIFM551001_KK0781_SORT.tmp

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#KK2851_SORT=${MID_DIR_KK}/KKIFM551001_KK2851_SORT.tmp
#KK0241_SORT=${MID_DIR_KK}/KKIFM551001_KK0241_SORT.tmp
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END

KK0791_SORT=${MID_DIR_KK}/KKIFM551001_KK0791_SORT.tmp

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#KK0251_SORT=${MID_DIR_KK}/KKIFM551001_KK0251_SORT.tmp
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END


#bsortex結果出力ファイル
KK1681_CRNT=${MID_DIR_KK}/KKIFM551001_KK1681_CRNT.tmp
KK2811_CRNT=${MID_DIR_KK}/KKIFM551001_KK2811_CRNT.tmp
KK0341_CRNT=${MID_DIR_KK}/KKIFM551001_KK0341_CRNT.tmp
KK0771_CRNT=${MID_DIR_KK}/KKIFM551001_KK0771_CRNT.tmp
KK0081_CRNT=${MID_DIR_KK}/KKIFM551001_KK0081_CRNT.tmp
KK0781_CRNT=${MID_DIR_KK}/KKIFM551001_KK0781_CRNT.tmp
KK2851_CRNT=${MID_DIR_KK}/KKIFM551001_KK2851_CRNT.tmp
KK0241_CRNT=${MID_DIR_KK}/KKIFM551001_KK0241_CRNT.tmp
KK0791_CRNT=${MID_DIR_KK}/KKIFM551001_KK0791_CRNT.tmp
KK0251_CRNT=${MID_DIR_KK}/KKIFM551001_KK0251_CRNT.tmp


#マッチング用defファイル
DEF_0339=${G_TOOLSH}/util/def/KK_CM_0339.def
DEF_0340=${G_TOOLSH}/util/def/KK_CM_0340.def
DEF_0341=${G_TOOLSH}/util/def/KK_CM_0341.def
DEF_0342=${G_TOOLSH}/util/def/KK_CM_0342.def
DEF_0343=${G_TOOLSH}/util/def/KK_CM_0343.def

DEF_TMP_0339=${G_TOOLSH}/util/def/KK_CM_0339.tmp.def
DEF_TMP_0340=${G_TOOLSH}/util/def/KK_CM_0340.tmp.def
DEF_TMP_0341=${G_TOOLSH}/util/def/KK_CM_0341.tmp.def
DEF_TMP_0342=${G_TOOLSH}/util/def/KK_CM_0342.tmp.def
DEF_TMP_0343=${G_TOOLSH}/util/def/KK_CM_0343.tmp.def

OUT_0339=${MID_DIR_KK}/KKIFM553001.0339.tmp
OUT_0339_SORT=${MID_DIR_KK}/KKIFM553001.0339.sort.tmp
OUT_0339_SUM=${MID_DIR_KK}/KKIFM553001.0339.sum.tmp
OUT_0340=${MID_DIR_KK}/KKIFM553001.0340.tmp
OUT_0340_G01=${MID_DIR_KK}/KKIFM553001.0340.g01.tmp
OUT_0340_G02=${MID_DIR_KK}/KKIFM553001.0340.g02.tmp

OUT_0341_DMY=${MID_DIR_KK}/KKIFM553001.0341.dmy.tmp
OUT_0341_SORT=${MID_DIR_KK}/KKIFM553001.0341.sort.tmp
OUT_0341=${MID_DIR_KK}/KKIFM553001.0341.tmp

OUT_0342_TMP=${MID_DIR_KK}/KKIFM551001.tmp
OUT_0343_TMP=${MID_DIR_KK}/KKIFM552001.tmp

OUT_0342_SORT=${MID_DIR_KK}/KKIFM551001.sort.tmp
OUT_0343_SORT=${MID_DIR_KK}/KKIFM552001.sort.tmp

OUT_551=${MID_DIR_KK}/KKIFM551001.csv
OUT_552=${MID_DIR_KK}/KKIFM552001.csv

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
### OM-2015-0001266 性能改善対応 2015/05/20 有本 ADD START
#共通アンロードファイル
#--サービス契約
### OM-2015-0001266 2015/06/17 宇野 MOD START
##COMULD_KK0081_ALL=${MID_DIR_CC}/CCIFM002001.csv
#COMULD_KK0081_ALL=${MID_DIR_CC}/CCIFM018001.csv
COMULD_KK0081_CUR=${MID_DIR_CC}/CCIFM018002.csv
### OM-2015-0001266 2015/06/17 宇野 MOD END

#--回線対象サービス契約
#COMULD_KK0241_ALL=${MID_DIR_CC}/CCIFM004001.csv
### OM-2015-0001275 2015/07/03 張本 障害対応 MOD START
#COMULD_KK0241_CUR=${MID_DIR_CC}/CCIFM004002.csv
COMULD_KK0241_ALL=${MID_DIR_CC}/CCIFM004001.csv
### OM-2015-0001275 2015/07/03 張本 障害対応 MOD END
#--サービス契約回線内訳
#COMULD_KK0251_ALL=${MID_DIR_CC}/CCIFM005001.csv
COMULD_KK0251_CUR=${MID_DIR_CC}/CCIFM005002.csv
#--機器提供サービス契約
#COMULD_KK0341_ALL=${MID_DIR_CC}/CCIFM007001.csv
COMULD_KK0341_CUR=${MID_DIR_CC}/CCIFM007002.csv
#機器オプションサービス契約スキーマ取得
#COMULD_KK2811_ALL=${MID_DIR_CC}/CCIFM015001.csv
COMULD_KK2811_CUR=${MID_DIR_CC}/CCIFM015002.csv
### OM-2015-0001266 性能改善対応 2015/05/20 有本 ADD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END

#
#--- 初期処理 前回実施時に出力したファイルを全てクリアする。
#
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#EXEC_CLEAR ${KK1681_SORT}
#EXEC_CLEAR ${KK2811_SORT}
#EXEC_CLEAR ${KK0341_SORT}
#EXEC_CLEAR ${KK0771_SORT}
#EXEC_CLEAR ${KK0081_SORT}
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END

EXEC_CLEAR ${KK0781_SORT}

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#EXEC_CLEAR ${KK2851_SORT}
#EXEC_CLEAR ${KK0241_SORT}
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END

EXEC_CLEAR ${KK0791_SORT}

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL START
#EXEC_CLEAR ${KK0251_SORT}
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 DEL END

EXEC_CLEAR ${KK1681_CRNT}
EXEC_CLEAR ${KK2811_CRNT}
EXEC_CLEAR ${KK0341_CRNT}
EXEC_CLEAR ${KK0771_CRNT}
EXEC_CLEAR ${KK0081_CRNT}
EXEC_CLEAR ${KK0781_CRNT}
EXEC_CLEAR ${KK2851_CRNT}
EXEC_CLEAR ${KK0241_CRNT}
EXEC_CLEAR ${KK0791_CRNT}
EXEC_CLEAR ${KK0251_CRNT}

EXEC_CLEAR ${OUT_0339}
EXEC_CLEAR ${OUT_0339_SORT}
EXEC_CLEAR ${OUT_0339_SUM}
EXEC_CLEAR ${OUT_0340}
EXEC_CLEAR ${OUT_0340_G01}
EXEC_CLEAR ${OUT_0340_G02}
EXEC_CLEAR ${OUT_0341_DMY}
EXEC_CLEAR ${OUT_0341_SORT}
EXEC_CLEAR ${OUT_0341}
EXEC_CLEAR ${OUT_0342_TMP}
EXEC_CLEAR ${OUT_0343_TMP}
EXEC_CLEAR ${OUT_0342_SORT}
EXEC_CLEAR ${OUT_0343_SORT}
EXEC_CLEAR ${OUT_551}
EXEC_CLEAR ${OUT_552}
EXEC_CLEAR ${SQLOUT_KK1681}
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CLEAR ${SQLOUT_KK2811}
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CLEAR ${SQLOUT_KK0341}
EXEC_CLEAR ${SQLOUT_KK0771}
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_CLEAR ${SQLOUT_KK0081}
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
EXEC_CLEAR ${SQLOUT_KK0781}
EXEC_CLEAR ${SQLOUT_KK2851}
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_CLEAR ${SQLOUT_KK0241}
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
EXEC_CLEAR ${SQLOUT_KK0791}
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CLEAR ${SQLOUT_KK0251}

#
#--- 各ファイルの存在チェックを行う
#
EXEC_CHECK $SQLFILE_KK1681
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CHECK $SQLFILE_KK2811
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CHECK $SQLFILE_KK0341
EXEC_CHECK $SQLFILE_KK0771
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_CHECK $SQLFILE_KK0081
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
EXEC_CHECK $SQLFILE_KK0781
EXEC_CHECK $SQLFILE_KK2851
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_CHECK $SQLFILE_KK0241
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
EXEC_CHECK $SQLFILE_KK0791
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_CHECK $SQLFILE_KK0251

EXEC_CHECK $DEF_0339
EXEC_CHECK $DEF_0340
EXEC_CHECK $DEF_0341
EXEC_CHECK $DEF_0342
EXEC_CHECK $DEF_0343

#--- UNLOAD処理
EXEC_UNLOAD $SQLFILE_KK1681 $SQLOUT_KK1681
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_UNLOAD $SQLFILE_KK0341 $SQLOUT_KK0341
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_UNLOAD $SQLFILE_KK2811 $SQLOUT_KK2811
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_UNLOAD $SQLFILE_KK0081 $SQLOUT_KK0081
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
EXEC_UNLOAD $SQLFILE_KK0771 $SQLOUT_KK0771
EXEC_UNLOAD $SQLFILE_KK0781 $SQLOUT_KK0781
EXEC_UNLOAD $SQLFILE_KK0791 $SQLOUT_KK0791
EXEC_UNLOAD $SQLFILE_KK2851 $SQLOUT_KK2851
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL START
#EXEC_UNLOAD $SQLFILE_KK0241 $SQLOUT_KK0241
### OM-2015-0001266 性能改善対応 2015/05/20 有本 DEL END
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 １行コメント化
#EXEC_UNLOAD $SQLFILE_KK0251 $SQLOUT_KK0251

##bsortex処理
##################################
#ソート 機器提供サービス契約
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 既存処理コメント化
#bsortex \
#   -sort key=0.12asc,18.8asc,16.17asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0341} \
#        reclen=300 \
#        include="18.8asc.le.'${OPD}',19.1asc.eq.'0',17.1asc.eq.'2'" \
#   -output file=${KK0341_SORT}

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
## 2015/05/22 土井 【OM-2015-0001266】アンロード対応
#bsortex \
#   -sort key=0.12asc,18.8asc,16.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0341_ALL} \
#        reclen=${ULD_REC_LEN_KK0341} \
#        reconst="0.12,2.3,27.12,3.4,19.12,34.1,32.6,33.3,14.20,35.6,36.3,7.2,37.6,38.3,15.20,177.10,1.17,100.1,98.8,161.1" \
#   -output file=${KK0341_SORT} include="18.8asc.le.'${OPD}',19.1asc.eq.'0',17.1asc.eq.'2'"
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0341 Sort Error(KK0341 sort:$rc) "
#  echo $JOBNAME " KK0341 Sort Error(KK0341 sort:$rc)"
#  exit ${G_RTN_ERROR}
#fi
##マージ
#bsortex \
#    -merge key=0.12asc \
#    -record recform=txtcsv \
#    -input file=${KK0341_SORT} \
#         reclen=300 \
#    -summary suppress last \
#    -output file=${KK0341_CRNT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.12asc,18.8asc,16.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0341_CUR} \
#        reclen=${ULD_REC_LEN_KK0341} \
#        reconst="0.12,2.3,27.12,3.4,19.12,34.1,32.6,33.3,14.20,35.6,36.3,7.2,37.6,38.3,15.20,177.10,1.17,100.1,98.8,161.1" \
#   -output file=${KK0341_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.12asc,18.8asc,16.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0341_CUR} \
#        reclen=${ULD_REC_LEN_KK0341} \
#        reconst="0.12,2.3,11.12,3.4,9.12,15.1,13.6,14.3,7.20,16.6,17.3,6.2,18.6,19.3,8.20,26.10,1.17,21.1,20.8,24.1" \
#   -output file=${KK0341_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${COMULD_KK0341_CUR} \
        reclen=${ULD_REC_LEN_KK0341} \
        reconst="0.12,2.3,11.12,3.4,9.12,15.1,13.6,14.3,7.20,16.6,17.3,6.2,18.6,19.3,8.20,26.10,1.17,21.1,20.8,24.1" \
   -output file=${KK0341_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END

rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0341 Merge Error(KK0341 merge:$rc)"
  echo $JOBNAME " KK0341 Merge Error(KK0341 merge:$rc)"
  exit ${G_RTN_ERROR}
fi
##################################
#ソート KK0771 機器提供サービス(MAST)
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.4asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0771} \
#        reclen=50 \
#        include="2.8asc.le.'${OPD}',3.8asc.ge.'${OPD}',4.1asc.eq.'0'" \
#   -output file=${KK0771_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${SQLOUT_KK0771} \
        reclen=50 \
        include="2.8asc.le.'${OPD}',3.8asc.ge.'${OPD}',4.1asc.eq.'0'" \
   -output file=${KK0771_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0771 Sort Error(KK0771 sort:$rc) "
  echo $JOBNAME " KK0771 Sort Error(KK0771 sort:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート KK2811 機器OPサービス契約
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 既存処理コメント化
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK2811} \
#        reclen=300 \
#        include="1.8asc.le.'${OPD}',4.1asc.eq.'0',3.1asc.eq.'2'" \
#   -output file=${KK2811_SORT}

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
## 2015/05/22 土井 【OM-2015-0001266】アンロード対応
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK2811_ALL} \
#        reconst="0.12,9.8,1.17,11.1,66.1,6.12,2.3,3.3,4.3" \
#        reclen=${ULD_REC_LEN_KK2811} \
#   -output file=${KK2811_SORT} include="1.8asc.le.'${OPD}',4.1asc.eq.'0',3.1asc.eq.'2'" 
#rc=$?
#if [ $rc -ne 0 ]
#then
#  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK2811 Sort Error(KK2811 sort:$rc) "
#  echo $JOBNAME " KK2811 Sort Error(KK2811 sort:$rc)"
#  exit ${G_RTN_ERROR}
#fi
##マージ
#bsortex \
#    -merge key=0.12asc \
#    -record recform=txtcsv \
#    -input file=${KK2811_SORT} \
#         reclen=300 \
#    -summary suppress last \
#    -output file=${KK2811_CRNT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK2811_CUR} \
#        reconst="0.12,9.8,1.17,11.1,66.1,6.12,2.3,3.3,4.3" \
#        reclen=${ULD_REC_LEN_KK2811} \
#   -output file=${KK2811_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK2811_CUR} \
#        reconst="0.12,6.8,1.17,7.1,8.1,5.12,2.3,3.3,4.3" \
#        reclen=${ULD_REC_LEN_KK2811} \
#   -output file=${KK2811_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${COMULD_KK2811_CUR} \
        reconst="0.12,6.8,1.17,7.1,8.1,5.12,2.3,3.3,4.3" \
        reclen=${ULD_REC_LEN_KK2811} \
   -output file=${KK2811_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK2811 Merge Error(KK2811 merge:$rc)"
  echo $JOBNAME " KK2811 Merge Error(KK2811 merge:$rc)"
  exit ${G_RTN_ERROR}
fi

#################################
#ソート KK0791 料金コース
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.3asc,2.8asc,1.17asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0791} \
#        reclen=400 \
#        include="2.8asc.le.'${OPD}',3.1asc.eq.'0'" \
#   -output file=${KK0791_SORT}
bsortex \
   -sort key=0.3asc,2.8asc,1.17asc \
   -record recform=txtcsv \
   -input file=${SQLOUT_KK0791} \
        reclen=286 \
        include="2.8asc.le.'${OPD}',3.1asc.eq.'0'" \
   -output file=${KK0791_SORT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0791 Sort Error(KK0791 sort:$rc) "
  echo $JOBNAME " KK0791 Sort Error(KK0791 sort:$rc)"
  exit ${G_RTN_ERROR}
fi

#マージ
bsortex \
    -merge key=0.3asc \
    -record recform=txtcsv \
    -input file=${KK0791_SORT} \
         reclen=400 \
    -summary suppress last \
    -output file=${KK0791_CRNT}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0791 Merge Error(KK0791 merge:$rc)"
  echo $JOBNAME " KK0791 Merge Error(KK0791 merge:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート KK0081 サービス契約
### OM-2015-0001266 性能改善対応 2015/05/20 有本 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0081} \
#        reclen=300 \
#        include="1.8asc.le.'${OPD}',4.1asc.eq.'0',3.1asc.eq.'2'" \
#   -output file=${KK0081_SORT}
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0081_ALL} \
#        reclen=${ULD_REC_LEN_KK0081} \
#        reconst="0.10,33.8,1.17,35.1,96.1,8.2,92.17,4.2,38.8,30.8" \
#   -output file=${KK0081_SORT} include="1.8asc.le.'${OPD}',4.1asc.eq.'0',3.1asc.eq.'2'"
#### OM-2015-0001266 性能改善対応 2015/05/20 有本 MOD END
#rc=$?
#if [ $rc -ne 0 ]
#then
#  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0081 Sort Error(KK0081 sort:$rc) "
#  echo $JOBNAME " KK0081 Sort Error(KK0081 sort:$rc)"
#  exit ${G_RTN_ERROR}
#fi
##マージ
#bsortex \
#    -merge key=0.12asc \
#    -record recform=txtcsv \
#    -input file=${KK0081_SORT} \
#         reclen=300 \
#    -summary suppress last \
#    -output file=${KK0081_CRNT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0081_CUR} \
#        reclen=${ULD_REC_LEN_KK0081} \
#        reconst="0.10,33.8,1.17,35.1,96.1,8.2,92.17,4.2,38.8,30.8" \
#   -output file=${KK0081_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.12asc,1.8asc,2.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0081_CUR} \
#        reclen=${ULD_REC_LEN_KK0081} \
#        reconst="0.10,15.8,1.17,17.1,35.1,7.2,34.17,4.2,19.8,13.8" \
#   -output file=${KK0081_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${COMULD_KK0081_CUR} \
        reclen=${ULD_REC_LEN_KK0081} \
        reconst="0.10,15.8,1.17,17.1,35.1,7.2,34.17,4.2,19.8,13.8" \
   -output file=${KK0081_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END


### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0081 Merge Error(KK0081 merge:$rc)"
  echo $JOBNAME " KK0081 Merge Error(KK0081 merge:$rc)"
  exit ${G_RTN_ERROR}
fi

#################################
#ソート KK2851 eoブランド_機器オプションサービス
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.2asc,4.3asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK2851} \
#        reclen=50 \
#        include="1.8asc.le.'${OPD}',2.8asc.ge.'${OPD}',3.1asc.eq.'0'" \
#   -output file=${KK2851_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${SQLOUT_KK2851} \
        reclen=50 \
        include="1.8asc.le.'${OPD}',2.8asc.ge.'${OPD}',3.1asc.eq.'0'" \
   -output file=${KK2851_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK2851 Sort Error(KK2851 sort:$rc) "
  echo $JOBNAME " KK2851 Sort Error(KK2851 sort:$rc)"
  exit ${G_RTN_ERROR}
fi

#################################
#ソート KK0241 回線対象サービス契約
### OM-2015-0001266 性能改善対応 2015/05/20 有本 MOD START
#bsortex \
#   -sort key=0.10asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0241} \
#        reclen=70 \
#        include="2.8asc.le.'${OPD}',3.8asc.ge.'${OPD}',4.1asc.eq.'0'" \
#   -output file=${KK0241_CRNT}
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
#bsortex \
#   -sort key=0.10asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0241_ALL} \
#        reclen=${ULD_REC_LEN_KK0241} \
#        reconst="0.10,1.12,2.8,3.8,10.1" \
#   -output file=${KK0241_CRNT} include="2.8asc.le.'${OPD}',3.8asc.ge.'${OPD}',4.1asc.eq.'0'"
### OM-2015-0001275 2015/07/03 張本 障害対応 MOD START
#bsortex \
#   -sort key=0.10asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0241_CUR} \
#        reclen=${ULD_REC_LEN_KK0241} \
#        reconst="0.10,1.12,2.8,3.8,10.1" \
#   -output file=${KK0241_CRNT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.10asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0241_ALL} \
#        reclen=${ULD_REC_LEN_KK0241} \
#        reconst="0.10,1.12,2.8,3.8,10.1" \
#   -output file=${KK0241_CRNT} include="4.1asc.eq.'0'"
bsortex \
   -sort key=0.10asc \
   -record recform=txtcsv \
   -input file=${COMULD_KK0241_ALL} \
        reclen=${ULD_REC_LEN_KK0241} \
        reconst="0.10,1.12,2.8,3.8,4.1" \
   -output file=${KK0241_CRNT} include="4.1asc.eq.'0'"
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
### OM-2015-0001275 2015/07/03 張本 障害対応 MOD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END
### OM-2015-0001266 性能改善対応 2015/05/20 有本 MOD END
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0241 Sort Error(KK0241 sort:$rc) "
  echo $JOBNAME " KK0241 Sort Error(KK0241 sort:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート KK0251 サービス契約回線内訳
# 2015/05/22 土井 【OM-2015-0001266】アンロード対応 既存処理コメント化
#bsortex \
#   -sort key=0.12asc,1.17asc \
#   -record recform=txtcsv \
#   -input file=${SQLOUT_KK0251} \
#        reclen=50 \
#        include="2.1asc.eq.'0'" \
#   -output file=${KK0251_SORT}

### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD START
## 2015/05/22 土井 【OM-2015-0001266】アンロード対応
#bsortex \
#   -sort key=0.12asc,1.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0251_ALL} \
#        reclen=${ULD_REC_LEN_KK0251} \
#        reconst="0.12,1.17,78.1,2.3" \
#   -output file=${KK0251_SORT} include="2.1asc.eq.'0'"
#rc=$?
#if [ $rc -ne 0 ]
#then
#  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0251 Sort Error(KK0251 sort:$rc) "
#  echo $JOBNAME " KK0251 Sort Error(KK0251 sort:$rc)"
#  exit ${G_RTN_ERROR}
#fi
##マージ
#bsortex \
#    -merge key=0.12asc \
#    -record recform=txtcsv \
#    -input file=${KK0251_SORT} \
#         reclen=50 \
#    -summary suppress last \
#    -output file=${KK0251_CRNT}
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD START
#bsortex \
#   -sort key=0.12asc,1.17asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0251_CUR} \
#        reclen=${ULD_REC_LEN_KK0251} \
#        reconst="0.12,1.17,78.1,2.3" \
#   -output file=${KK0251_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD START
#bsortex \
#   -sort key=0.12asc \
#   -record recform=txtcsv \
#   -input file=${COMULD_KK0251_CUR} \
#        reclen=${ULD_REC_LEN_KK0251} \
#        reconst="0.12,1.17,18.1,2.3" \
#   -output file=${KK0251_CRNT}
bsortex \
   -copy \
   -record recform=txtcsv \
   -input file=${COMULD_KK0251_CUR} \
        reclen=${ULD_REC_LEN_KK0251} \
        reconst="0.12,1.17,18.1,2.3" \
   -output file=${KK0251_CRNT}
# OM-2015-0003006 ソート削除対応 2015/11/18 福山 MOD END
### OM-2015-0002578 共通ＵＮＬＯＡＤ項目削除対応 2015/10/08 有本 MOD END
### ST-2015-0000031 2015/06/25 土井 性能改善カレント抽出対応 MOD END

rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0251 Merge Error(KK0251 merge:$rc)"
  echo $JOBNAME " KK0251 Merge Error(KK0251 merge:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート KK1681 異動予約
bsortex \
   -sort key=0.15asc \
   -record recform=txtcsv \
   -input file=${SQLOUT_KK1681} \
        reclen=200 \
        include="1.8asc.le.'${OPD}',2.1asc.eq.'0',5.2asc.eq.'00',6.3asc.eq.'024',(7.5asc.eq.'00019'.or.7.5asc.eq.'00026')" \
   -output file=${KK1681_CRNT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK1681 Sort Error(KK1681 sort:$rc) "
  echo $JOBNAME " KK1681 Sort Error(KK1681 sort:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート KK0781 料金グループ
bsortex \
   -sort key=0.2asc,1.8asc,2.17asc \
   -record recform=txtcsv \
   -input file=${SQLOUT_KK0781} \
        reclen=50 \
        include="1.8asc.le.'${OPD}',3.1asc.eq.'0'" \
   -output file=${KK0781_SORT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0781 Sort Error(KK0781 sort:$rc) "
  echo $JOBNAME " KK0781 Sort Error(KK0781 sort:$rc)"
  exit ${G_RTN_ERROR}
fi
#マージ
bsortex \
    -merge key=0.2asc \
    -record recform=txtcsv \
    -input file=${KK0781_SORT} \
         reclen=300 \
    -summary suppress last \
    -output file=${KK0781_CRNT}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0781 Merge Error(KK0781 merge:$rc)"
  echo $JOBNAME " KK0781 Merge Error(KK0781 merge:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#マッチング実施
# 解約対象の機器オプションに紐づく機器提供サービス契約情報を取得する
# P1 DEF_0339=${G_TOOLSH}/util/def/KK_CM_0339.def
# P2 DEF_TMP_0339=${G_TOOLSH}/util/def/KK_CM_0339.tmp.def
# P3 OUT_0339=${MID_DIR_KK}/KKIFM553001.0339.tmp

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING ${OUT_0339} ${DEF_0339} ${DEF_TMP_0339}

##################################
#KKIFM553001.0339.tmpの機器提供サービス契約番号で一意にする
bsortex \
   -sort key=0.12asc \
   -record recform=txtcsv \
   -input file=${OUT_0339} \
        reclen=400 \
   -output file=${OUT_0339_SORT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0781 Sort Error(KK0781 sort:$rc) "
  echo $JOBNAME " KK0781 Sort Error(KK0781 sort:$rc)"
  exit ${G_RTN_ERROR}
fi
#マージ
bsortex \
    -merge key=0.12asc \
    -record recform=txtcsv \
    -input file=${OUT_0339_SORT} \
         reclen=400 \
    -summary suppress last \
    -output file=${OUT_0339_SUM}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " KK0781 Merge Error(KK0781 merge:$rc)"
  echo $JOBNAME " KK0781 Merge Error(KK0781 merge:$rc)"
  exit ${G_RTN_ERROR}
fi


##################################
#マッチング実施
# KKIFM553001.0340.tmpの機器提供サービス契約に紐づく機器オプションサービス契約の全量を取得
# P1 DEF_0340=${G_TOOLSH}/util/def/KK_CM_0340.def
# P2 DEF_TMP_0340=${G_TOOLSH}/util/def/KK_CM_0340.tmp.def
# P3 OUT_0340=${MID_DIR_KK}/KKIFM553001.0340.tmp

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING ${OUT_0340} ${DEF_0340} ${DEF_TMP_0340}

#
#--- ジョブの終了メッセージを出力する
#

##################################
# ファイル追記

##################################
#ソート ネット
bsortex \
   -sort key=0.12asc \
   -record recform=txtcsv \
   -input file=${OUT_0340} \
        reclen=1000 \
        include="32.3asc.eq.'G01'" \
   -output file=${OUT_0340_G01}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0340_G01} Sort Error(${OUT_0340_G01} sort:$rc) "
  echo $JOBNAME " ${OUT_0340_G01} Sort Error(${OUT_0340_G01} sort:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#ソート 電話
bsortex \
   -sort key=0.12asc \
   -record recform=txtcsv \
   -input file=${OUT_0340} \
        reclen=1000 \
        include="32.3asc.eq.'G02'" \
   -output file=${OUT_0340_G02}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0340_G02} Sort Error(${OUT_0340_G02} sort:$rc) "
  echo $JOBNAME " ${OUT_0340_G02} Sort Error(${OUT_0340_G02} sort:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#マッチング実施
# 同一機器提供サービス契約番号の情報で機器オプション情報を1レコードにサマリする。
# P1 DEF_0341=${G_TOOLSH}/util/def/KK_CM_0341.def
# P2 DEF_TMP_0341=${G_TOOLSH}/util/def/KK_CM_0341.tmp.def
# P3 OUT_0341=${MID_DIR_KK}/KKIFM553001.0341.tmp

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING ${OUT_0341_DMY} ${DEF_0341} ${DEF_TMP_0341}

##################################
#KKIFM553001.0339.tmpの機器提供サービス契約番号で一意にする
bsortex \
   -sort key=0.12asc \
   -record recform=txtcsv \
   -input file=${OUT_0341_DMY} \
        reclen=1000 \
   -output file=${OUT_0341_SORT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0341_SORT} Sort Error(${OUT_0341_SORT} sort:$rc) "
  echo $JOBNAME " ${OUT_0341_SORT} Sort Error(${OUT_0341_SORT} sort:$rc)"
  exit ${G_RTN_ERROR}
fi
#マージ
bsortex \
    -merge key=0.12asc \
    -record recform=txtcsv \
    -input file=${OUT_0341_SORT} \
         reclen=1000 \
    -summary suppress last \
    -output file=${OUT_0341}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0341} Merge Error(${OUT_0341} merge:$rc)"
  echo $JOBNAME " ${OUT_0341} Merge Error(${OUT_0341} merge:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#マッチング実施
# 本体解約コード=1：必須の情報を出力
# P1 DEF_0342=${G_TOOLSH}/util/def/KK_CM_0342.def
# P2 DEF_TMP_0342=${G_TOOLSH}/util/def/KK_CM_0342.tmp.def
# P3 OUT_0342=${MID_DIR_KK}/KKIFM551001.csv

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING ${OUT_0342_TMP} ${DEF_0342} ${DEF_TMP_0342}

##################################
#KKIFM551001.csvを機器提供サービス契約番号、オプションサービス契約番号で一意にする。
bsortex \
   -sort key=0.12asc,2.15asc \
   -record recform=txtcsv \
   -input file=${OUT_0342_TMP} \
        reclen=100 \
   -output file=${OUT_0342_SORT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0342_SORT} Sort Error(${OUT_0342_SORT} sort:$rc) "
  echo $JOBNAME " ${OUT_0342_SORT} Sort Error(${OUT_0342_SORT} sort:$rc)"
  exit ${G_RTN_ERROR}
fi

#マージ
bsortex \
    -merge key=0.12asc,2.15asc \
    -record recform=txtcsv \
    -input file=${OUT_0342_SORT} \
         reclen=1000 \
    -summary suppress last \
    -output file=${OUT_551}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_551} Merge Error(${OUT_551} merge:$rc)"
  echo $JOBNAME " ${OUT_551} Merge Error(${OUT_551} merge:$rc)"
  exit ${G_RTN_ERROR}
fi

##################################
#マッチング実施
# 本体解約コード=0：任意の情報を出力
# P1 OUT_0343=${G_TOOLSH}/util/def/KK_CM_0343.def
# P2 DEF_TMP_0343=${G_TOOLSH}/util/def/KK_CM_0343.tmp.def
# P3 OUT_0343=${MID_DIR_KK}/KKIFM552001.csv

#
#--- マッチング処理
#      p1：出力ファイルパス
#      p2：DEFファイルパス
#      p3：TMPDEFファイルパス
EXEC_MATCHING ${OUT_0343_TMP} ${DEF_0343} ${DEF_TMP_0343}

bsortex \
   -sort key=0.12asc,2.15asc \
   -record recform=txtcsv \
   -input file=${OUT_0343_TMP} \
        reclen=100 \
   -output file=${OUT_0343_SORT}
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_0343_SORT} Sort Error(${OUT_0343_SORT} sort:$rc) "
  echo $JOBNAME " ${OUT_0343_SORT} Sort Error(${OUT_0343_SORT} sort:$rc)"
  exit ${G_RTN_ERROR}
fi

#マージ
bsortex \
    -merge key=0.12asc,2.15asc \
    -record recform=txtcsv \
    -input file=${OUT_0343_SORT} \
         reclen=100 \
    -summary suppress last \
    -output file=${OUT_552}
    
rc=$?
if [ $rc -ne 0 ]
then
  sh ${G_TOOLSH}/EOK010210J0.sh JOBNAME " ${OUT_552} Merge Error(${OUT_552} merge:$rc)"
  echo $JOBNAME " ${OUT_552} Merge Error(${OUT_552} merge:$rc)"
  exit ${G_RTN_ERROR}
fi

sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME
sh ${G_TOOLSH}/EOK010210J0.sh CS00026I $JOBNAME

exit ${G_RTN_NORMAL}
