#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：請求収納
#
# シェル名      ：請求契約配下契約状態判定
#
# 機能          ：請求書作成条件や督促管理条件の取得を目的に、すべての請求先を対象に、請求先配下の契約状態、解約理由を優先順に従って取得し、請求契約番号単位に請求契約配下サービス契約状態コードと請求契約配下サービス契約解約理由識別コードを求めて、請求契約配下契約状態情報を作成する。
#
#入力情報はアンローダ等により抽出を行い、CSVファイルとして処理を行う。
#入力のCSVファイルに抽出されるスキーマ
#・債権
#・請求契約
#・課金先
#・サービス契約
#・機器提供サービス契約
#・オプションサービス契約
#・割引サービス契約
#・サービス契約内訳
#・サブオプションサービス契約
#
# コマンド形式  ：EO6010510J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v4.00           2013/03/23  FJ）藤田     性能改善
# v4.01           2013/04/23  FJ) 藤田     【ST4-2013-0000286】性能改善の為、各アンロード処理及び各マッチング処理をバックグラウンドジョブに変更する。
#                                                              子シェルを廃止して処理を親シェルに移動する。
# v4.02           2013/05/24  FJ）狭間     【TG1-2013-0000499】アンロード＆マッチング後のソート順を修正。
# v4.03           2013/06/13  FJ）藤田     【TG1-2013-0000638】各サービス契約スキーマからの抽出条件から締結済みを削除する。
# v5.00           2013/06/26  FJ）藤田     【ST4-2013-0000479】性能改善 nkfの使用を廃止する。
# v5.01           2013/07/25  FJ) 小柴     【IT1-2013-0001443】機器提供サービス契約、割引サービス契約に、抽出対象とするサービス契約ステータス条件を追加
# v5.02           2013/08/12  FJ) 小柴     【TG1-2013-0000930】抽出対象とするサービス契約ステータス条件を追加(030:締結済)
# v6.00           2013/12/17  FJ) 伊藤     【OM-2013-0003715,3791】最新世代の割引サービス契約がキャンペーン、または最新世代の機器提供サービス契約にサービス契約回線内訳番号が設定されているものを除外するよう修正。
# v6.01           2013/12/19  FJ) 田内,伊藤【OM-2013-0004788】撤去解約対象サービス契約情報が存在する場合は、サービス契約番号に紐付く全てサービスを解約済とする。
# v6.02           2013/12/28  FJ) 伊藤     【OM-2013-0004788】撤去解約対象サービス契約情報に紐付くサービス契約内訳と紐付く場合、解約撤去対象とする
# v6.03           2014/01/23  FJ) 伊藤     【OM-2014-0000084】機器提供契約サービスに解約撤去対象のオプションサービスを。割引サービス解約撤去判定に、解約撤去対象の機器提供契約サービス、オプションサービスも参照するように修正。
# v11.00          2014/10/08  FJ) 鈴木     【ST4-2014-0000069(OM-2014-0002636)】割引サービス契約、割引サービス対象契約は判定対象外とする
# v20.00          2015/11/18  FJ) 有本     【OM-2015-0003006】性能改善対応：不要なソート削除
# v22.00          2016/01/18  FJ) 有本     【OM-2016-0000115】性能改善対応：バックグラウンド対応
##############################################################
#---ワークファイル削除モード
WK_RM=true
##############################################################
# 環境変数定義
##############################################################

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

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

#
#---ＪＯＢ名
#
JOBNAME=`basename $0 | sed -e "s/\.sh//g"`
if [ $# -eq 2 ]
then
     JOBNAME=${JOBNAME}_$2;
fi

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

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

#
#---業務で必要な変数定義
#
#xxx=xxxxxxx

#---マッチング処理でLeftjoinがNULL時に"を付けなくする（マッチング使用時は必須）
export ZTLQUOTES=''

##############################################################
# 業務処理
##############################################################
sh ${G_TOOLSH}/EOK010210J0.sh CS00025I $JOBNAME

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

P1="OPD=${RSLT_OPEDATE},"
P2="SVCCTL=JBSbatMultiServiceControl,"
P3="JOB=EO6010510J0,"
P4="IND1=CHIFM155.def,"
P5="INF1=${MID_DIR_CH}/CHIFM155001.csv,"
P6="IND2=,"
P7="INF2=,"
P8="OTD1=CHIFM139.def,"
P9="OTF1=${MID_DIR_CH}/CHIFM139001.csv,"
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

#
#--- ファイル定義
#
SQLFILE=$SQLFILE
OUTFILE=${MID_DIR_CH}/CHIFM155001.csv

#
#--- 各ファイルの存在チェックを行う
#
if [ ! -r $SQLFILE ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($SQLFILE) "
    echo $JOBNAME " File is nonexist($SQLFILE) "
    exit ${G_RTN_ERROR}
fi

#
#--- アンロードファイルのクリアを行う
#
cat /dev/null > $OUTFILE

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

#
#--- UNLOAD処理
#
SHORI_YMD=${RSLT_OPEDATE}
#--- アンロードモジュール
UNLOADER=${G_TOOLSH}/EOKULD03.sh
#--- ファイルマッチングモジュール
MATCHING=${G_TOOLSH}/util/bin/ZTLMAT01

#--- 課金先と各サービス契約とをJOINする元表（csvファイル）
KAKINSAKI_BASE=${MID_DIR_CH}/${JOBNAME}_KK0321_01; export KAKINSAKI_BASE
#--- 請求契約と債権のマッチング後ファイル（csvファイル）
SEIKY_KEI_BASE=${MID_DIR_CH}/${JOBNAME}_KK0491_01; export SEIKY_KEI_BASE

#--- マッチング定義ファイルの変数置き換え時のワークファイル
DEF_DIR=${G_TOOLSH}/util/def
DEF_FILE_WK1=${DEF_DIR}/${JOBNAME}_MATCHING_WK_1.def
DEF_FILE_WK2=${DEF_DIR}/${JOBNAME}_MATCHING_WK_2.def
#--- SQLファイルの変数置き換え時のワークファイル
SQL_FILE_WK1=${SQL_DIR}/${JOBNAME}_UNLOADER_WK_1.sql
SQL_FILE_KK_T_SEIKY_KEI_WK1=${SQL_DIR}/${JOBNAME}_UNLOADER_KK_T_SEIKY_KEI_WK_1.sql
SQL_FILE_KK_T_KAKINS_WK1=${SQL_DIR}/${JOBNAME}_UNLOADER_KK_T_KAKINS_WK_1.sql

KK_T_SVC_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0081_01; export KK_T_SVC_KEI_01
KK_T_SVC_KEI_02=${MID_DIR_CH}/${JOBNAME}_KK0081_02; export KK_T_SVC_KEI_02
KK_T_SVC_KEI_03=${MID_DIR_CH}/${JOBNAME}_KK0081_03; export KK_T_SVC_KEI_03
KK_T_SVC_KEI_UCWK_01=${MID_DIR_CH}/${JOBNAME}_KK0161_01; export KK_T_SVC_KEI_UCWK_01
KK_T_SVC_KEI_UCWK_02=${MID_DIR_CH}/${JOBNAME}_KK0161_02; export KK_T_SVC_KEI_UCWK_02
KK_T_SVC_KEI_UCWK_03=${MID_DIR_CH}/${JOBNAME}_KK0161_03; export KK_T_SVC_KEI_UCWK_03
KK_T_KKTK_SVC_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0341_01; export KK_T_KKTK_SVC_KEI_01
KK_T_KKTK_SVC_KEI_02=${MID_DIR_CH}/${JOBNAME}_KK0341_02; export KK_T_KKTK_SVC_KEI_02
KK_T_KKTK_SVC_KEI_03=${MID_DIR_CH}/${JOBNAME}_KK0341_03; export KK_T_KKTK_SVC_KEI_03
KK_T_OP_SVC_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0351_01; export KK_T_OP_SVC_KEI_01
KK_T_OP_SVC_KEI_02=${MID_DIR_CH}/${JOBNAME}_KK0351_02; export KK_T_OP_SVC_KEI_02
KK_T_OP_SVC_KEI_03=${MID_DIR_CH}/${JOBNAME}_KK0351_03; export KK_T_OP_SVC_KEI_03
KK_T_WRIB_SVC_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0451_01; export KK_T_WRIB_SVC_KEI_01
KK_T_WRIB_SVC_KEI_02=${MID_DIR_CH}/${JOBNAME}_KK0451_02; export KK_T_WRIB_SVC_KEI_02
KK_T_WRIB_SVC_KEI_03=${MID_DIR_CH}/${JOBNAME}_KK0451_03; export KK_T_WRIB_SVC_KEI_03
KK_T_SBOP_SVC_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0401_01; export KK_T_SBOP_SVC_KEI_01
KK_T_SBOP_SVC_KEI_02=${MID_DIR_CH}/${JOBNAME}_KK0401_02; export KK_T_SBOP_SVC_KEI_02
KK_T_SBOP_SVC_KEI_03=${MID_DIR_CH}/${JOBNAME}_KK0401_03; export KK_T_SBOP_SVC_KEI_03
KK_T_WRISVC_TG_KEI_01=${MID_DIR_CH}/${JOBNAME}_KK0481_01; export KK_T_WRISVC_TG_KEI_01

CH_M_PRC_SCHDL_TEIGI=${MID_DIR_CH}/${JOBNAME}_CH0501; export CH_M_PRC_SCHDL_TEIGI
CH_T_SAIKEN=${MID_DIR_CH}/${JOBNAME}_CH0011; export CH_T_SAIKEN
KK_T_SEIKY_KEI=${MID_DIR_CH}/${JOBNAME}_KK0491; export KK_T_SEIKY_KEI
KK_T_KAKINS=${MID_DIR_CH}/${JOBNAME}_KK0321; export KK_T_KAKINS
KK_T_SVC_KEI=${MID_DIR_CH}/${JOBNAME}_KK0081; export KK_T_SVC_KEI
KK_T_KKTK_SVC_KEI=${MID_DIR_CH}/${JOBNAME}_KK0341; export KK_T_KKTK_SVC_KEI
KK_T_OP_SVC_KEI=${MID_DIR_CH}/${JOBNAME}_KK0351; export KK_T_OP_SVC_KEI
KK_T_WRIB_SVC_KEI=${MID_DIR_CH}/${JOBNAME}_KK0451; export KK_T_WRIB_SVC_KEI
KK_T_SVC_KEI_UCWK=${MID_DIR_CH}/${JOBNAME}_KK0161; export KK_T_SVC_KEI_UCWK
KK_T_SBOP_SVC_KEI=${MID_DIR_CH}/${JOBNAME}_KK0401; export KK_T_SBOP_SVC_KEI
KK_T_WRISVC_TG_KEI=${MID_DIR_CH}/${JOBNAME}_KK0481; export KK_T_WRISVC_TG_KEI

SQL_CH_U_KK0081=${SQL_DIR}/${JOBNAME}_CH_U_KK0081_01_WK_1.sql
DEF_CH_CM_0003=${DEF_DIR}/${JOBNAME}_CH_CM_0003_WK_1.def

SQL_CH_U_KK0341=${SQL_DIR}/${JOBNAME}_CH_U_KK0341_01_WK_1.sql
DEF_CH_CM_0004=${DEF_DIR}/${JOBNAME}_CH_CM_0004_WK_1.def

SQL_CH_U_KK0351=${SQL_DIR}/${JOBNAME}_CH_U_KK0351_01_WK_1.sql
DEF_CH_CM_0005=${DEF_DIR}/${JOBNAME}_CH_CM_0005_WK_1.def

SQL_CH_U_KK0451=${SQL_DIR}/${JOBNAME}_CH_U_KK0451_01_WK_1.sql
DEF_CH_CM_0006=${DEF_DIR}/${JOBNAME}_CH_CM_0006_WK_1.def

SQL_CH_U_KK0161=${SQL_DIR}/${JOBNAME}_CH_U_KK0161_01_WK_1.sql
DEF_CH_CM_0007=${DEF_DIR}/${JOBNAME}_CH_CM_0007_WK_1.def

SQL_CH_U_KK0401=${SQL_DIR}/${JOBNAME}_CH_U_KK0401_01_WK_1.sql
DEF_CH_CM_0009=${DEF_DIR}/${JOBNAME}_CH_CM_0009_WK_1.def

SQL_CH_U_KK0481=${SQL_DIR}/${JOBNAME}_CH_U_KK0481_01_WK_1.sql

DEF_CH_CM_0115_01=${DEF_DIR}/${JOBNAME}_CH_CM_0115_01_WK_1.def
DEF_CH_CM_0115_02=${DEF_DIR}/${JOBNAME}_CH_CM_0115_02_WK_1.def
DEF_CH_CM_0116=${DEF_DIR}/${JOBNAME}_CH_CM_0116_WK_1.def
DEF_CH_CM_0117=${DEF_DIR}/${JOBNAME}_CH_CM_0117_WK_1.def
DEF_CH_CM_0118=${DEF_DIR}/${JOBNAME}_CH_CM_0118_WK_1.def
DEF_CH_CM_0119=${DEF_DIR}/${JOBNAME}_CH_CM_0119_WK_1.def

OUTFILE=${MID_DIR_CH}/CHIFM155001; export OUTFILE

#
#--- 撤去解約対象サービス契約情報の取得
#

#
#---ファイルの存在チェック
#
TEKKYO_SVC_KEI=${SEND_DIR}/CHIFI010001.csv
if [ ! -r ${TEKKYO_SVC_KEI} ]
then
  cat /dev/null > ${MID_DIR_CH}/CHIFI010001_TEMP.csv
else
  cp ${TEKKYO_SVC_KEI} ${MID_DIR_CH}/CHIFI010001_TEMP.csv
  mv ${TEKKYO_SVC_KEI} ${SEND_DIR}/CHIFI010001.csv_${SHORI_YMD}
fi

TEKKYO_SVC_KEI_TEMP=${MID_DIR_CH}/CHIFI010001_TEMP
TEKKYO_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0115.def
TEKKYO_SVC_KEI_DEF2=${DEF_DIR}/CH_CM_0116.def
TEKKYO_SVC_KEI_DEF3=${DEF_DIR}/CH_CM_0117.def
TEKKYO_SVC_KEI_DEF4=${DEF_DIR}/CH_CM_0118.def
TEKKYO_SVC_KEI_DEF5=${DEF_DIR}/CH_CM_0119.def

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#(
#	################################################################################
#	#
#	#--- 請求契約よりバッチ運用日'$SHORI_YMD'に有効なレコードを抽出する。
#	#
#	################################################################################
#	(
#		#-抽出SQLの変数を書き換える
#		sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0491_02.sql > ${SQL_FILE_KK_T_SEIKY_KEI_WK1}
#		#アンロード
#		${UNLOADER} ${SQL_FILE_KK_T_SEIKY_KEI_WK1} ${KK_T_SEIKY_KEI}_WK.csv
#		rc=$?
#		if [ $rc -ne 0 ]
#		then
#		    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0491_02.sql:rc=$rc) "
#		    echo $JOBNAME " UNLOAD Error(CH_U_KK0491_02.sql:rc=$rc) "
#		    exit ${G_RTN_ERROR}
#		fi
#		bsortex \
#		  -record recform=txtcsv \
#		  -input reclen=33 \
#		  -merge key="0.10asc" \
#		  -summary suppress last \
#		 < ${KK_T_SEIKY_KEI}_WK.csv \
#		 > ${KK_T_SEIKY_KEI}.csv
#		rc=$?
#		if [ $rc -ne 0 ]
#		then
#		    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SEIKY_KEI}.csv:rc=$rc) "
#		    echo $JOBNAME " bsortex Error(${KK_T_SEIKY_KEI}.csv:rc=$rc) "
#		    exit ${G_RTN_ERROR}
#		fi
#	) &
#	pidSEIKY_KEI=$!
#	################################################################################
#	#
#	#--- 課金先よりバッチ運用日'$SHORI_YMD'に有効なレコードを抽出する。
#	#
#	################################################################################
#	(
#		#-抽出SQLの変数を書き換える
#		sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0321_01.sql > ${SQL_FILE_KK_T_KAKINS_WK1}
#		#アンロード
#		${UNLOADER} ${SQL_FILE_KK_T_KAKINS_WK1} ${KK_T_KAKINS}_WK.csv
#		rc=$?
#		if [ $rc -ne 0 ]
#		then
#		    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0321_01.sql:rc=$rc) "
#		    echo $JOBNAME " UNLOAD Error(CH_U_KK0321_01.sql:rc=$rc) "
#		    exit ${G_RTN_ERROR}
#		fi
#		bsortex \
#		  -record recform=txtcsv \
#		  -input reclen=117 \
#		         reconst="0.10,1.10,2.12,3.12,4.12,5.12,6.12,7.12" \
#		  -copy \
#		 < ${KK_T_KAKINS}_WK.csv \
#		 > ${KK_T_KAKINS}.csv
#		rc=$?
#		if [ $rc -ne 0 ]
#		then
#		    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_KAKINS}.csv:rc=$rc) "
#		    echo $JOBNAME " bsortex Error(${KK_T_KAKINS}.csv:rc=$rc) "
#		    exit ${G_RTN_ERROR}
#		fi
#	) &
#	pidKAAKINS=$!
#
#	#- 請求契約アンロード処理の終了待ち
#	wait ${pidSEIKY_KEI}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " KK_T_SEIKY_KEI UNLOAD Error(rc=$rc) "
#	    echo $JOBNAME " KK_T_SEIKY_KEI UNLOAD Error(rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#	#- 課金先アンロード処理の終了待ち
#	wait ${pidKAAKINS}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " KK_T_KAKINS UNLOAD Error(rc=$rc) "
#	    echo $JOBNAME " KK_T_KAKINS UNLOAD Error(rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#	################################################################################
#	#
#	#--- 請求契約と課金先のマッチング処理
#	#
#	################################################################################
#	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
#	KK_CM_KAKINS_DEF=${G_TOOLSH}/util/def/CH_CM_0058.def
#	cp ${KK_CM_KAKINS_DEF} ${DEF_FILE_WK1}
#	sed -i -e "s%:KK_T_KAKINS%${KK_T_KAKINS}.csv%g"       ${DEF_FILE_WK1}
#	sed -i -e "s%:KK_T_SEIKY_KEI%${KK_T_SEIKY_KEI}.csv%g" ${DEF_FILE_WK1}
#	#- 債権・請求契約・課金先を請求契約番号でマッチングする。
#	ZTLOUTFILE=${KAKINSAKI_BASE}.csv
#	export ZTLOUTFILE
#	${MATCHING} ${DEF_FILE_WK1}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0058.def:rc=$rc) "
#	    echo $JOBNAME " MATCHING Error(CH_CM_0058.def:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSEIKYKEI_KAKINS_MATCHING=$!
#################################################################################
##
##---サービス契約アンロード
##
################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0081_01.sql > ${SQL_CH_U_KK0081}
#	#--- サービス契約よりアンロードを行う。
#	${UNLOADER} ${SQL_CH_U_KK0081} ${KK_T_SVC_KEI}_WK.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0081_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0081_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後のサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=79 \
#	  -merge key="6.10asc" \
#	  -summary suppress last \
#	  -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
#	 < ${KK_T_SVC_KEI}_WK.csv \
#	 > ${KK_T_SVC_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SVC_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_SVC_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSVCKEI_UNLOAD=$!
#################################################################################
##
##---機器提供サービス契約アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0341_01.sql > ${SQL_CH_U_KK0341}
#	#--- 機器提供サービス契約よりアンロードを行う。
#	${UNLOADER} ${SQL_CH_U_KK0341} ${KK_T_KKTK_SVC_KEI}_WK.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0341_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0341_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後の提供機器サービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=100 \
#	  -merge key="6.12asc" \
#	  -summary suppress last \
#	  -output include="(0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'110'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910').and.7.12ascb.eq.' '" \
#	 < ${KK_T_KKTK_SVC_KEI}_WK.csv \
#	 > ${KK_T_KKTK_SVC_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_KKTK_SVC_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_KKTK_SVC_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidKKTKSVCKEI_UNLOAD=$!
#################################################################################
##
##---オプションサービス契約アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0351_01.sql > ${SQL_CH_U_KK0351}
#	#--- オプションサービス契約よりアンロードを行う。
#	${UNLOADER} ${SQL_CH_U_KK0351} ${KK_T_OP_SVC_KEI}_WK.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0351_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0351_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後のオプションサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=100 \
#	  -merge key="6.12asc" \
#	  -summary suppress last \
#	  -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
#	 < ${KK_T_OP_SVC_KEI}_WK.csv \
#	 > ${KK_T_OP_SVC_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_OP_SVC_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_OP_SVC_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidOPSVCKEI_UNLOAD=$!
#################################################################################
##
##---割引サービス契約アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0451_01.sql > ${SQL_CH_U_KK0451}
#	#--- 割引サービス契約よりアンロードを行う。
## 2014.10.08 ST4-2014-0000069 mod start
## 割引サービス契約：判定対象外とするので、アンロードはせずに０バイトのファイルを作り、後続はそのまま。
##	${UNLOADER} ${SQL_CH_U_KK0451} ${KK_T_WRIB_SVC_KEI}_WK.csv
#	cp /dev/null ${KK_T_WRIB_SVC_KEI}_WK.csv
## 2014.10.08 ST4-2014-0000069 mod end
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0451_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0451_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後の割引サービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=100 \
#	  -merge key="6.12asc" \
#	  -summary suppress last \
#	  -output include="(0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'300'.or.0.3asc.eq.'910').and.7.2asc.ne.'50'" \
#	 < ${KK_T_WRIB_SVC_KEI}_WK.csv \
#	 > ${KK_T_WRIB_SVC_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_WRIB_SVC_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_WRIB_SVC_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidWRIBSVCKEI_UNLOAD=$!
#################################################################################
##
##---サービス契約内訳アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0161_01.sql > ${SQL_CH_U_KK0161}
#	#--- サービス契約内訳よりアンロードを行う。
#	${UNLOADER} ${SQL_CH_U_KK0161} ${KK_T_SVC_KEI_UCWK}_WK.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0161_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0161_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後のサービス契約内訳よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=100 \
#	  -merge key="6.12asc" \
#	  -summary suppress last \
#	  -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
#	 < ${KK_T_SVC_KEI_UCWK}_WK.csv \
#	 > ${KK_T_SVC_KEI_UCWK}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SVC_KEI_UCWK}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_SVC_KEI_UCWK}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSVCKEIUCWK_UNLOAD=$!
#################################################################################
##
##---サブオプションサービス契約アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0401_01.sql > ${SQL_CH_U_KK0401}
#	#--- サブオプションサービス契約より全件アンロードを行う。
#	${UNLOADER} ${SQL_CH_U_KK0401} ${KK_T_SBOP_SVC_KEI}_WK.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0401_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0401_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後のサブオプションサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=98 \
#	  -merge key="6.12asc,7.12asc" \
#	  -summary suppress last \
#	  -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
#	 < ${KK_T_SBOP_SVC_KEI}_WK.csv \
#	 > ${KK_T_SBOP_SVC_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SBOP_SVC_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_SBOP_SVC_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSBOPSVCKEI_UNLOAD=$!
#
#################################################################################
##
##---割引サービス対象契約アンロード
##
#################################################################################
##
#(
#	#-抽出SQLの変数を書き換える
#	cp ${SQL_DIR}/CH_U_KK0481_01.sql ${SQL_CH_U_KK0481}
#	#--- 割引サービス対象契約より全件アンロードを行う。
## 2014.10.08 ST4-2014-0000069 mod start
## 割引サービス契約を判定対象外とするので割引サービス対象契約もアンロードはせずに０バイトのファイルを作り、後続はそのまま。
##	${UNLOADER} ${SQL_CH_U_KK0481} ${KK_T_WRISVC_TG_KEI}_WK.csv
#	cp /dev/null ${KK_T_WRISVC_TG_KEI}_WK.csv
## 2014.10.08 ST4-2014-0000069 mod end
#
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0481_01.sql:rc=$rc) "
#	    echo $JOBNAME " UNLOAD Error(CH_U_KK0481_01.sql:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#
#	#--- アンロード後の割引サービス対象契約より割引サービス契約番号内のカレントレコードが有効なレコードを抽出する。
#	bsortex \
#	  -record recform=txtcsv \
#	  -input reclen=180 \
#	  -merge key="0.12asc,1.12asc" \
#	  -summary suppress last \
#	  -output omit="3.10ascb.eq.' '.and.4.12ascb.eq.' '.and.5.12ascb.eq.' '.and.6.12ascb.eq.' '" < ${KK_T_WRISVC_TG_KEI}_WK.csv > ${KK_T_WRISVC_TG_KEI}.csv
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_WRISVC_TG_KEI}.csv:rc=$rc) "
#	    echo $JOBNAME " bsortex Error(${KK_T_WRISVC_TG_KEI}.csv:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidWRISVC_TG_KEI=$!
#
##- 請求契約と課金先のマッチング処理の終了待ち
#wait ${pidSEIKYKEI_KAKINS_MATCHING}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSEIKYKEI_KAKINS_MATCHING Error(rc=$rc) "
#    echo $JOBNAME " pidSEIKYKEI_KAKINS_MATCHING Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- サービス契約アンロード処理の終了待ち
#wait ${pidSVCKEI_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEI_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidSVCKEI_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- 機器提供サービス契約アンロード処理の終了待ち
#wait ${pidKKTKSVCKEI_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidKKTKSVCKEI_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidKKTKSVCKEI_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- オプションサービス契約アンロード処理の終了待ち
#wait ${pidOPSVCKEI_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidOPSVCKEI_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidOPSVCKEI_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- 割引サービス契約アンロード処理の終了待ち
#wait ${pidWRIBSVCKEI_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidWRIBSVCKEI_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidWRIBSVCKEI_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- サービス契約内訳アンロード処理の終了待ち
#wait ${pidSVCKEIUCWK_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEIUCWK_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidSVCKEIUCWK_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- サブオプションサービス契約アンロード処理の終了待ち
#wait ${pidSBOPSVCKEI_UNLOAD}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSBOPSVCKEI_UNLOAD Error(rc=$rc) "
#    echo $JOBNAME " pidSBOPSVCKEI_UNLOAD Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- 割引サービス対象契約アンロード処理の終了待ち
#wait ${pidWRISVC_TG_KEI}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidWRISVC_TG_KEI Error(rc=$rc) "
#    echo $JOBNAME " pidWRISVC_TG_KEI Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD START
#pidA
################################################################################
#
#---オプションサービス契約アンロード
#
################################################################################
#
(
    #-抽出SQLの変数を書き換える
    sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0351_01.sql > ${SQL_CH_U_KK0351}
    #--- オプションサービス契約よりアンロードを行う。
    ${UNLOADER} ${SQL_CH_U_KK0351} ${KK_T_OP_SVC_KEI}_WK.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0351_01.sql:rc=$rc) "
        echo $JOBNAME " UNLOAD Error(CH_U_KK0351_01.sql:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi
    ################################################################################
    #
    #--- 請求契約よりバッチ運用日'$SHORI_YMD'に有効なレコードを抽出する。
    #
    ################################################################################
    (
        #-抽出SQLの変数を書き換える
        sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0491_02.sql > ${SQL_FILE_KK_T_SEIKY_KEI_WK1}
        #アンロード
        ${UNLOADER} ${SQL_FILE_KK_T_SEIKY_KEI_WK1} ${KK_T_SEIKY_KEI}_WK.csv
        rc=$?
        if [ $rc -ne 0 ]
        then
            sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0491_02.sql:rc=$rc) "
            echo $JOBNAME " UNLOAD Error(CH_U_KK0491_02.sql:rc=$rc) "
            exit ${G_RTN_ERROR}
        fi
    ) &
    pidSEIKY_KEI=$!

    #--- アンロード後のオプションサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=100 \
      -merge key="6.12asc" \
      -summary suppress last \
      -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
     < ${KK_T_OP_SVC_KEI}_WK.csv \
     > ${KK_T_OP_SVC_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_OP_SVC_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_OP_SVC_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    #- 請求契約アンロード処理の終了待ち
    wait ${pidSEIKY_KEI}
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " KK_T_SEIKY_KEI UNLOAD Error(rc=$rc) "
        echo $JOBNAME " KK_T_SEIKY_KEI UNLOAD Error(rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    bsortex \
      -record recform=txtcsv \
      -input reclen=33 \
      -merge key="0.10asc" \
      -summary suppress last \
     < ${KK_T_SEIKY_KEI}_WK.csv \
     > ${KK_T_SEIKY_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
       sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SEIKY_KEI}.csv:rc=$rc) "
       echo $JOBNAME " bsortex Error(${KK_T_SEIKY_KEI}.csv:rc=$rc) "
       exit ${G_RTN_ERROR}
    fi

    ################################################################################
    #
    #---割引サービス契約アンロード
    #
    ################################################################################
    #-抽出SQLの変数を書き換える
    sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0451_01.sql > ${SQL_CH_U_KK0451}
    # 割引サービス契約：判定対象外とするので、アンロードはせずに０バイトのファイルを作り、後続はそのまま。
    cp /dev/null ${KK_T_WRIB_SVC_KEI}_WK.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0451_01.sql:rc=$rc) "
        echo $JOBNAME " UNLOAD Error(CH_U_KK0451_01.sql:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    #--- アンロード後の割引サービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=100 \
      -merge key="6.12asc" \
      -summary suppress last \
      -output include="(0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'300'.or.0.3asc.eq.'910').and.7.2asc.ne.'50'" \
     < ${KK_T_WRIB_SVC_KEI}_WK.csv \
     > ${KK_T_WRIB_SVC_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_WRIB_SVC_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_WRIB_SVC_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    ################################################################################
    #
    #---割引サービス対象契約アンロード
    #
    ################################################################################
    #-抽出SQLの変数を書き換える
    cp ${SQL_DIR}/CH_U_KK0481_01.sql ${SQL_CH_U_KK0481}
    # 割引サービス契約を判定対象外とするので割引サービス対象契約もアンロードはせずに０バイトのファイルを作り、後続はそのまま。
    cp /dev/null ${KK_T_WRISVC_TG_KEI}_WK.csv

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

    #--- アンロード後の割引サービス対象契約より割引サービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=180 \
      -merge key="0.12asc,1.12asc" \
      -summary suppress last \
      -output omit="3.10ascb.eq.' '.and.4.12ascb.eq.' '.and.5.12ascb.eq.' '.and.6.12ascb.eq.' '" < ${KK_T_WRISVC_TG_KEI}_WK.csv > ${KK_T_WRISVC_TG_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_WRISVC_TG_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_WRISVC_TG_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi
) &
pidA=$!

#pidB
################################################################################
#
#---機器提供サービス契約アンロード
#
################################################################################
#
(
    #-抽出SQLの変数を書き換える
    sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0341_01.sql > ${SQL_CH_U_KK0341}
    #--- 機器提供サービス契約よりアンロードを行う。
    ${UNLOADER} ${SQL_CH_U_KK0341} ${KK_T_KKTK_SVC_KEI}_WK.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0341_01.sql:rc=$rc) "
        echo $JOBNAME " UNLOAD Error(CH_U_KK0341_01.sql:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    ################################################################################
    #
    #--- 課金先よりバッチ運用日'$SHORI_YMD'に有効なレコードを抽出する。
    #
    ################################################################################
    (
        #-抽出SQLの変数を書き換える
        sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0321_01.sql > ${SQL_FILE_KK_T_KAKINS_WK1}
        #アンロード
        ${UNLOADER} ${SQL_FILE_KK_T_KAKINS_WK1} ${KK_T_KAKINS}_WK.csv
        rc=$?
        if [ $rc -ne 0 ]
        then
            sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0321_01.sql:rc=$rc) "
            echo $JOBNAME " UNLOAD Error(CH_U_KK0321_01.sql:rc=$rc) "
            exit ${G_RTN_ERROR}
        fi
    ) &
    pidKAAKINS=$!

    #--- アンロード後の提供機器サービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=100 \
      -merge key="6.12asc" \
      -summary suppress last \
      -output include="(0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'110'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910').and.7.12ascb.eq.' '" \
     < ${KK_T_KKTK_SVC_KEI}_WK.csv \
     > ${KK_T_KKTK_SVC_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_KKTK_SVC_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_KKTK_SVC_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi
    
    #- 課金先アンロード処理の終了待ち
    wait ${pidKAAKINS}
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " KK_T_KAKINS UNLOAD Error(rc=$rc) "
        echo $JOBNAME " KK_T_KAKINS UNLOAD Error(rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    bsortex \
      -record recform=txtcsv \
      -input reclen=117 \
             reconst="0.10,1.10,2.12,3.12,4.12,5.12,6.12,7.12" \
      -copy \
     < ${KK_T_KAKINS}_WK.csv \
     > ${KK_T_KAKINS}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_KAKINS}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_KAKINS}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

) &
pidB=$!

#pidC
################################################################################
#
#---サービス契約アンロード
#
###############################################################################
#
(
    #-抽出SQLの変数を書き換える
    sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0081_01.sql > ${SQL_CH_U_KK0081}
    #--- サービス契約よりアンロードを行う。
    ${UNLOADER} ${SQL_CH_U_KK0081} ${KK_T_SVC_KEI}_WK.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0081_01.sql:rc=$rc) "
        echo $JOBNAME " UNLOAD Error(CH_U_KK0081_01.sql:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    ################################################################################
    #
    #---サービス契約内訳アンロード
    #
    ################################################################################
    #
    (
        #-抽出SQLの変数を書き換える
        sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0161_01.sql > ${SQL_CH_U_KK0161}
        #--- サービス契約内訳よりアンロードを行う。
        ${UNLOADER} ${SQL_CH_U_KK0161} ${KK_T_SVC_KEI_UCWK}_WK.csv
        rc=$?
        if [ $rc -ne 0 ]
        then
            sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0161_01.sql:rc=$rc) "
            echo $JOBNAME " UNLOAD Error(CH_U_KK0161_01.sql:rc=$rc) "
            exit ${G_RTN_ERROR}
        fi
    ) &
    pidSVCKEIUCWK_UNLOAD=$!

    #--- アンロード後のサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=79 \
      -merge key="6.10asc" \
      -summary suppress last \
      -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
     < ${KK_T_SVC_KEI}_WK.csv \
     > ${KK_T_SVC_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SVC_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_SVC_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    #- サービス契約内訳アンロード処理の終了待ち
    wait ${pidSVCKEIUCWK_UNLOAD}
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEIUCWK_UNLOAD Error(rc=$rc) "
        echo $JOBNAME " pidSVCKEIUCWK_UNLOAD Error(rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    ################################################################################
    #
    #---サブオプションサービス契約アンロード
    #
    ################################################################################
    #
    (
        #-抽出SQLの変数を書き換える
        sed -e "s/:SHORI_YMD/${SHORI_YMD}/g" ${SQL_DIR}/CH_U_KK0401_01.sql > ${SQL_CH_U_KK0401}
        #--- サブオプションサービス契約より全件アンロードを行う。
        ${UNLOADER} ${SQL_CH_U_KK0401} ${KK_T_SBOP_SVC_KEI}_WK.csv
        rc=$?
        if [ $rc -ne 0 ]
        then
            sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " UNLOAD Error(CH_U_KK0401_01.sql:rc=$rc) "
            echo $JOBNAME " UNLOAD Error(CH_U_KK0401_01.sql:rc=$rc) "
            exit ${G_RTN_ERROR}
        fi
    ) &
    pidSBOPSVCKEI_UNLOAD=$!

    #--- アンロード後のサービス契約内訳よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=100 \
      -merge key="6.12asc" \
      -summary suppress last \
      -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
     < ${KK_T_SVC_KEI_UCWK}_WK.csv \
     > ${KK_T_SVC_KEI_UCWK}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SVC_KEI_UCWK}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_SVC_KEI_UCWK}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    #- サブオプションサービス契約アンロード処理の終了待ち
    wait ${pidSBOPSVCKEI_UNLOAD}
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSBOPSVCKEI_UNLOAD Error(rc=$rc) "
        echo $JOBNAME " pidSBOPSVCKEI_UNLOAD Error(rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

    #--- アンロード後のサブオプションサービス契約よりサービス契約番号内のカレントレコードが有効なレコードを抽出する。
    bsortex \
      -record recform=txtcsv \
      -input reclen=98 \
      -merge key="6.12asc,7.12asc" \
      -summary suppress last \
      -output include="0.3asc.eq.'030'.or.0.3asc.eq.'100'.or.0.3asc.eq.'210'.or.0.3asc.eq.'220'.or.0.3asc.eq.'910'" \
     < ${KK_T_SBOP_SVC_KEI}_WK.csv \
     > ${KK_T_SBOP_SVC_KEI}.csv
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${KK_T_SBOP_SVC_KEI}.csv:rc=$rc) "
        echo $JOBNAME " bsortex Error(${KK_T_SBOP_SVC_KEI}.csv:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi

) &
pidC=$!

wait ${pidA}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidA Error(rc=$rc) "
    echo $JOBNAME " pidA Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi

wait ${pidB}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidB Error(rc=$rc) "
    echo $JOBNAME " pidB Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi

(
    ################################################################################
    #
    #--- 請求契約と課金先のマッチング処理
    #
    ################################################################################
    #- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
    KK_CM_KAKINS_DEF=${G_TOOLSH}/util/def/CH_CM_0058.def
    cp ${KK_CM_KAKINS_DEF} ${DEF_FILE_WK1}
    sed -i -e "s%:KK_T_KAKINS%${KK_T_KAKINS}.csv%g"       ${DEF_FILE_WK1}
    sed -i -e "s%:KK_T_SEIKY_KEI%${KK_T_SEIKY_KEI}.csv%g" ${DEF_FILE_WK1}
    #- 債権・請求契約・課金先を請求契約番号でマッチングする。
    ZTLOUTFILE=${KAKINSAKI_BASE}.csv
    export ZTLOUTFILE
    ${MATCHING} ${DEF_FILE_WK1}
    rc=$?
    if [ $rc -ne 0 ]
    then
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0058.def:rc=$rc) "
        echo $JOBNAME " MATCHING Error(CH_CM_0058.def:rc=$rc) "
        exit ${G_RTN_ERROR}
    fi
) &
pidSEIKYKEI_KAKINS_MATCHING=$!

wait ${pidC}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidC Error(rc=$rc) "
    echo $JOBNAME " pidC Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi

#- 請求契約と課金先のマッチング処理の終了待ち
wait ${pidSEIKYKEI_KAKINS_MATCHING}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSEIKYKEI_KAKINS_MATCHING Error(rc=$rc) "
    echo $JOBNAME " pidSEIKYKEI_KAKINS_MATCHING Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi

# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD END

################################################################################
#
#---サービス契約前処理
#
###############################################################################
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#(
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF} ${DEF_CH_CM_0115_01}
	sed -i -e "s%:TARGET%${KK_T_SVC_KEI}.csv%"                 ${DEF_CH_CM_0115_01}
	sed -i -e "s%:FIELD%6%"                                   ${DEF_CH_CM_0115_01}
	sed -i -e "s%:TEKKYO_SVC_KEI%${TEKKYO_SVC_KEI_TEMP}.csv%"  ${DEF_CH_CM_0115_01}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_SVC_KEI_01}.csv
	${MATCHING} ${DEF_CH_CM_0115_01}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
# OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD START
#	bsortex \
#	    -sort key=6.10asca -record recform=txtcsv \
#	    -input reclen=100 file=${KK_T_SVC_KEI_01}.csv \
#	    -output file=${KK_T_SVC_KEI_01}_WK1.csv case="7.1asc.lt.'0'" \
#	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.10 \
#	    -output file=${KK_T_SVC_KEI_01}_WK2.csv case=other \
#	        reconst="'910'.3asc","'01'.2asc",7.8,3.8,4.17,5.2,6.10
	bsortex \
	    -copy -record recform=txtcsv \
	    -input reclen=100 file=${KK_T_SVC_KEI_01}.csv \
	    -output file=${KK_T_SVC_KEI_01}_WK1.csv case="7.1asc.lt.'0'" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.10 \
	    -output file=${KK_T_SVC_KEI_01}_WK2.csv case=other \
	        reconst="'910'.3asc","'01'.2asc",7.8,3.8,4.17,5.2,6.10
# OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD END
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi

	#--- マージ
	bsortex \
		-sort key="6.10asca"  -record recform=txtcsv \
		-input reclen=100 file=${KK_T_SVC_KEI_01}_WK1.csv,${KK_T_SVC_KEI_01}_WK2.csv \
		-output file=${KK_T_SVC_KEI_02}.csv
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#) &
#pidSVCKEI_MATCHING_BEFORE=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---サービス契約内訳前処理
#
################################################################################
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#(
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF} ${DEF_CH_CM_0115_02}
	sed -i -e "s%:TARGET%${KK_T_SVC_KEI_UCWK}.csv%"         ${DEF_CH_CM_0115_02}
	sed -i -e "s%:FIELD%7%"                                ${DEF_CH_CM_0115_02}
	sed -i -e "s%:TEKKYO_SVC_KEI%${TEKKYO_SVC_KEI_TEMP}.csv%"  ${DEF_CH_CM_0115_02}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_SVC_KEI_UCWK_01}.csv
	${MATCHING} ${DEF_CH_CM_0115_02}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
	bsortex \
	    -sort key=6.10asca -record recform=txtcsv \
	    -input reclen=100 file=${KK_T_SVC_KEI_UCWK_01}.csv \
	    -output file=${KK_T_SVC_KEI_UCWK_02}.csv case="7.1asc.lt.'0'" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12 \
	    -output file=${KK_T_SVC_KEI_UCWK_01}_WK.csv case=other \
	        reconst=6.12,7.8
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#) &
#pidSVCKEIUCWK_MATCHING_BEFORE=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
##- サービス契約前処理処理の終了待ち
#wait ${pidSVCKEI_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
##- サービス契約内訳前処理処理の終了待ち
#wait ${pidSVCKEIUCWK_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEIUCWK_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidSVCKEIUCWK_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---オプションサービス契約前処理
#
################################################################################

(
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF4} ${DEF_CH_CM_0118}
	sed -i -e "s%:KK_T_OP_SVC_KEI%${KK_T_OP_SVC_KEI}.csv%"              ${DEF_CH_CM_0118}
	sed -i -e "s%:TEKKYO_SVC_KEI_UCWK%${KK_T_SVC_KEI_UCWK_01}_WK.csv%"  ${DEF_CH_CM_0118}
	sed -i -e "s%:TEKKYO_SVC_KEI%${TEKKYO_SVC_KEI_TEMP}.csv%"           ${DEF_CH_CM_0118}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_OP_SVC_KEI_01}.csv
	${MATCHING} ${DEF_CH_CM_0118}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0118.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
	bsortex \
	    -sort key=6.10asca -record recform=txtcsv \
	    -input reclen=120 file=${KK_T_OP_SVC_KEI_01}.csv \
	    -output file=${KK_T_OP_SVC_KEI_02}.csv case="7.1asc.lt.'0'.and.8.1asc.lt.'0'" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12 \
	    -output file=${KK_T_OP_SVC_KEI_01}_WK1.csv case="7.1asc.ge.'0'" \
	        reconst=6.12,7.8 \
	    -output file=${KK_T_OP_SVC_KEI_01}_WK2.csv case="8.1asc.ge.'0'" \
	        reconst=6.12,8.8
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	
	#--- マージ
	bsortex \
		-sort key=0.12asca,1.8asca -record recform=txtcsv \
		-input reclen=50 file=${KK_T_OP_SVC_KEI_01}_WK1.csv,${KK_T_OP_SVC_KEI_01}_WK2.csv \
		-summary suppress first \
		-output file=${KK_T_OP_SVC_KEI_01}_WK.csv
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 MOD START
#) &
#pidOPSVCKEI_MATCHING_BEFORE=$!
)
# OM-2016-0000115 性能改善対応 2016/01/18 有本 MOD END

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#- オプションサービス契約前処理処理の終了待ち
#wait ${pidOPSVCKEI_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidOPSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidOPSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---機器提供サービス契約前処理
#
################################################################################
(
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF5} ${DEF_CH_CM_0119}
	sed -i -e "s%:KK_T_KKTK_SVC_KEI%${KK_T_KKTK_SVC_KEI}.csv%"          ${DEF_CH_CM_0119}
	sed -i -e "s%:TEKKYO_SVC_KEI_UCWK%${KK_T_SVC_KEI_UCWK_01}_WK.csv%"  ${DEF_CH_CM_0119}
	sed -i -e "s%:TEKKYO_OP_SVC_KEI%${KK_T_OP_SVC_KEI_01}_WK.csv%"      ${DEF_CH_CM_0119}
	sed -i -e "s%:TEKKYO_SVC_KEI%${TEKKYO_SVC_KEI_TEMP}.csv%"           ${DEF_CH_CM_0119}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_KKTK_SVC_KEI_01}.csv
	${MATCHING} ${DEF_CH_CM_0119}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0117.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0115.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
	bsortex \
	    -sort key=6.10asca -record recform=txtcsv \
	    -input reclen=120 file=${KK_T_KKTK_SVC_KEI_01}.csv \
	    -output file=${KK_T_KKTK_SVC_KEI_02}.csv case="7.1asc.lt.'0'.and.8.1asc.lt.'0'.and.9.1asc.lt.'0'" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12 \
	    -output file=${KK_T_KKTK_SVC_KEI_01}_WK1.csv case="7.1asc.ge.'0'" \
	        reconst=6.12,7.8 \
	    -output file=${KK_T_KKTK_SVC_KEI_01}_WK2.csv case="8.1asc.ge.'0'" \
	        reconst=6.12,8.8 \
	    -output file=${KK_T_KKTK_SVC_KEI_01}_WK3.csv case="9.1asc.ge.'0'" \
	        reconst=6.12,9.8
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	
	#--- マージ
	bsortex \
		-sort key=0.12asca,1.8asca -record recform=txtcsv \
		-input reclen=50 file=${KK_T_KKTK_SVC_KEI_01}_WK1.csv,${KK_T_KKTK_SVC_KEI_01}_WK2.csv,${KK_T_KKTK_SVC_KEI_01}_WK3.csv \
		-summary suppress first \
		-output file=${KK_T_KKTK_SVC_KEI_01}_WK.csv
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT2 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 MOD START
#) &
#pidKKTKSVCKEI_MATCHING_BEFORE=$!
)
# OM-2016-0000115 性能改善対応 2016/01/18 有本 MOD END

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#- 機器提供サービス契約前処理処理の終了待ち
#wait ${pidKKTKSVCKEI_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidKKTKSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidKKTKSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---サブオプションサービス契約前処理
#
################################################################################
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#(
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF3} ${DEF_CH_CM_0117}
	sed -i -e "s%:KK_T_SBOP_SVC_KEI%${KK_T_SBOP_SVC_KEI}.csv%"      ${DEF_CH_CM_0117}
	sed -i -e "s%:TEKKYO_OP_SVC_KEI%${KK_T_OP_SVC_KEI_01}_WK.csv%"  ${DEF_CH_CM_0117}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_SBOP_SVC_KEI_01}.csv
	${MATCHING} ${DEF_CH_CM_0117}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0117.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0117.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
	
	bsortex \
	    -sort key=6.10asca -record recform=txtcsv \
	    -input reclen=100 file=${KK_T_SBOP_SVC_KEI_01}.csv \
	    -output file=${KK_T_SBOP_SVC_KEI_02}.csv include="8.1asc.lt.'0'" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12,7.12
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#) &
#pidSBOPSVCKEI_MATCHING_BEFORE=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---割引サービス契約前処理
#
################################################################################
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#(
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	cp ${TEKKYO_SVC_KEI_DEF2} ${DEF_CH_CM_0116}
	sed -i -e "s%:KK0451%${KK_T_WRIB_SVC_KEI}.csv%"                      ${DEF_CH_CM_0116}
	sed -i -e "s%:KK0481%${KK_T_WRISVC_TG_KEI}.csv%"                     ${DEF_CH_CM_0116}
	sed -i -e "s%:TEKKYO_SVC_KEI_UCWK%${KK_T_SVC_KEI_UCWK_01}_WK.csv%"   ${DEF_CH_CM_0116}
	sed -i -e "s%:TEKKYO_SVC_KEI%${TEKKYO_SVC_KEI_TEMP}.csv%"            ${DEF_CH_CM_0116}
	sed -i -e "s%:TEKKYO_OP_SVC_KEI%${KK_T_OP_SVC_KEI_01}_WK.csv%"       ${DEF_CH_CM_0116}
	sed -i -e "s%:TEKKYO_KKTK_SVC_KEI%${KK_T_KKTK_SVC_KEI_01}_WK.csv%"   ${DEF_CH_CM_0116}
	#- 撤去解約対象サービス契約情報・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_WRIB_SVC_KEI_01}.csv
	${MATCHING} ${DEF_CH_CM_0116}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0116.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0116.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	#--- ファイル分割
# OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD START
#	bsortex \
#	    -sort key=6.10asca -record recform=txtcsv \
#	    -input reclen=180 file=${KK_T_WRIB_SVC_KEI_01}.csv \
#	    -output file=${KK_T_WRIB_SVC_KEI_02}.csv include="7.8ascb.eq.' '.and.8.8ascb.eq.' '.and.9.8ascb.eq.' '.and.10.8ascb.eq.' '" \
#	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12
	bsortex \
	    -copy -record recform=txtcsv \
	    -input reclen=180 file=${KK_T_WRIB_SVC_KEI_01}.csv \
	    -output file=${KK_T_WRIB_SVC_KEI_02}.csv include="7.8ascb.eq.' '.and.8.8ascb.eq.' '.and.9.8ascb.eq.' '.and.10.8ascb.eq.' '" \
	        reconst=0.3,1.2,2.8,3.8,4.17,5.2,6.12
# OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD END
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    echo $JOBNAME " SORT1 Error($SVC sort:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#) &
#pidWRIBSVCKEI_MATCHING_BEFORE=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
##- サブオプションサービス契約前処理処理の終了待ち
#wait ${pidSBOPSVCKEI_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSBOPSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidSBOPSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
##- 割引サービス契約前処理処理の終了待ち
#wait ${pidWRIBSVCKEI_MATCHING_BEFORE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidWRIBSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    echo $JOBNAME " pidWRIBSVCKEI_MATCHING_BEFORE Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

################################################################################
#
#---サービス契約マッチング
#
###############################################################################
(
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_CM_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0003.def
	cp ${KK_CM_SVC_KEI_DEF} ${DEF_CH_CM_0003}
	sed -i -e "s%:KK_T_SVC_KEI%${KK_T_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0003}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%" ${DEF_CH_CM_0003}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_SVC_KEI_03}.csv
	${MATCHING} ${DEF_CH_CM_0003}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0003.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0003.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD START
	################################################################################
	#
	#---機器提供サービス契約マッチング
	#
	################################################################################
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_CM_KKTK_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0004.def
	cp ${KK_CM_KKTK_SVC_KEI_DEF} ${DEF_CH_CM_0004}
	sed -i -e "s%:KK_T_KKTK_SVC_KEI%${KK_T_KKTK_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0004}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0004}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_KKTK_SVC_KEI_03}.csv
	${MATCHING} ${DEF_CH_CM_0004}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0004.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0004.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	################################################################################
	#
	#---割引サービス契約マッチング
	#
	################################################################################
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_CM_WRIB_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0006.def
	cp ${KK_CM_WRIB_SVC_KEI_DEF} ${DEF_CH_CM_0006}
	sed -i -e "s%:KK_T_WRIB_SVC_KEI%${KK_T_WRIB_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0006}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0006}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_WRIB_SVC_KEI_03}.csv
	${MATCHING} ${DEF_CH_CM_0006}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0006.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0006.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	################################################################################
	#
	#---サブオプションサービス契約マッチング
	#
	################################################################################
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_T_SBOP_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0009.def
	cp ${KK_T_SBOP_SVC_KEI_DEF} ${DEF_CH_CM_0009}
	sed -i -e "s%:KK_T_SBOP_SVC_KEI%${KK_T_SBOP_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0009}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0009}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_SBOP_SVC_KEI_03}.csv
	${MATCHING} ${DEF_CH_CM_0009}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0009.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0009.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD END
) &
pidSVCKEI_MATCHING=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#################################################################################
##
##---機器提供サービス契約マッチング
##
#################################################################################
#(
#	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
#	KK_CM_KKTK_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0004.def
#	cp ${KK_CM_KKTK_SVC_KEI_DEF} ${DEF_CH_CM_0004}
#	sed -i -e "s%:KK_T_KKTK_SVC_KEI%${KK_T_KKTK_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0004}
#	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0004}
#	#- 課金先・サービス契約をサービス契約番号でマッチングする。
#	export ZTLOUTFILE=${KK_T_KKTK_SVC_KEI_03}.csv
#	${MATCHING} ${DEF_CH_CM_0004}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0004.def:rc=$rc) "
#	    echo $JOBNAME " MATCHING Error(CH_CM_0004.def:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidKKTKSVCKEI_MATCHING=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
################################################################################
#
#---オプションサービス契約マッチング
#
################################################################################
(
	#- 増幅防止に重複をマージ
	bsortex \
		-sort key=0.10asc,4.12asc \
		-record recform=txtcsv \
		-input reclen=100 file=${KAKINSAKI_BASE}.csv \
		-summary suppress last \
		-output file=${KAKINSAKI_BASE}_WK.csv omit="4.1asc.lt.'0'"

	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_T_OP_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0005.def
	cp ${KK_T_OP_SVC_KEI_DEF} ${DEF_CH_CM_0005}
	sed -i -e "s%:KK_T_OP_SVC_KEI%${KK_T_OP_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0005}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}_WK.csv%"       ${DEF_CH_CM_0005}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	export ZTLOUTFILE=${KK_T_OP_SVC_KEI_03}.csv
	${MATCHING} ${DEF_CH_CM_0005}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0005.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0005.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD START
	################################################################################
	#
	#---サービス契約内訳マッチング
	#
	################################################################################
	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
	KK_T_SVC_KEI_UCWK_DEF=${DEF_DIR}/CH_CM_0007.def
	cp ${KK_T_SVC_KEI_UCWK_DEF} ${DEF_CH_CM_0007}
	sed -i -e "s%:KK_T_SVC_KEI_UCWK%${KK_T_SVC_KEI_UCWK_02}.csv%"  ${DEF_CH_CM_0007}
	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0007}
	#- 課金先・サービス契約をサービス契約番号でマッチングする。
	ZTLOUTFILE=${KK_T_SVC_KEI_UCWK_03}.csv
	export ZTLOUTFILE
	${MATCHING} ${DEF_CH_CM_0007}
	rc=$?
	if [ $rc -ne 0 ]
	then
	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0007.def:rc=$rc) "
	    echo $JOBNAME " MATCHING Error(CH_CM_0007.def:rc=$rc) "
	    exit ${G_RTN_ERROR}
	fi
	# OM-2016-0000115 性能改善対応 2016/01/18 有本 ADD END
) &
pidOPSVCKEI_MATCHING=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
#################################################################################
##
##---割引サービス契約マッチング
##
#################################################################################
#(
#	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
#	KK_CM_WRIB_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0006.def
#	cp ${KK_CM_WRIB_SVC_KEI_DEF} ${DEF_CH_CM_0006}
#	sed -i -e "s%:KK_T_WRIB_SVC_KEI%${KK_T_WRIB_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0006}
#	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0006}
#	#- 課金先・サービス契約をサービス契約番号でマッチングする。
#	export ZTLOUTFILE=${KK_T_WRIB_SVC_KEI_03}.csv
#	${MATCHING} ${DEF_CH_CM_0006}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0006.def:rc=$rc) "
#	    echo $JOBNAME " MATCHING Error(CH_CM_0006.def:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidWRIBSVCKEI_MATCHING=$!
################################################################################
#
#---サービス契約内訳マッチング
#
################################################################################
#(
#	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
#	KK_T_SVC_KEI_UCWK_DEF=${DEF_DIR}/CH_CM_0007.def
#	cp ${KK_T_SVC_KEI_UCWK_DEF} ${DEF_CH_CM_0007}
#	sed -i -e "s%:KK_T_SVC_KEI_UCWK%${KK_T_SVC_KEI_UCWK_02}.csv%"  ${DEF_CH_CM_0007}
#	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0007}
#	#- 課金先・サービス契約をサービス契約番号でマッチングする。
#	ZTLOUTFILE=${KK_T_SVC_KEI_UCWK_03}.csv
#	export ZTLOUTFILE
#	${MATCHING} ${DEF_CH_CM_0007}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0007.def:rc=$rc) "
#	    echo $JOBNAME " MATCHING Error(CH_CM_0007.def:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSVCKEIUCWK_MATCHING=$!
#################################################################################
##
##---サブオプションサービス契約マッチング
##
#################################################################################
#(
#	#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
#	KK_T_SBOP_SVC_KEI_DEF=${DEF_DIR}/CH_CM_0009.def
#	cp ${KK_T_SBOP_SVC_KEI_DEF} ${DEF_CH_CM_0009}
#	sed -i -e "s%:KK_T_SBOP_SVC_KEI%${KK_T_SBOP_SVC_KEI_02}.csv%"  ${DEF_CH_CM_0009}
#	sed -i -e "s%:KK_T_KAKINS%${KAKINSAKI_BASE}.csv%"           ${DEF_CH_CM_0009}
#	#- 課金先・サービス契約をサービス契約番号でマッチングする。
#	export ZTLOUTFILE=${KK_T_SBOP_SVC_KEI_03}.csv
#	${MATCHING} ${DEF_CH_CM_0009}
#	rc=$?
#	if [ $rc -ne 0 ]
#	then
#	    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0009.def:rc=$rc) "
#	    echo $JOBNAME " MATCHING Error(CH_CM_0009.def:rc=$rc) "
#	    exit ${G_RTN_ERROR}
#	fi
#) &
#pidSBOPSVCKEI_MATCHING=$!
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END

# すべてのマッチングが終了するのを待つ

#- サービス契約マッチング処理の終了待ち
wait ${pidSVCKEI_MATCHING}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEI_MATCHING Error(rc=$rc) "
    echo $JOBNAME " pidSVCKEI_MATCHING Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
##- 機器提供サービス契約マッチング処理の終了待ち
#wait ${pidKKTKSVCKEI_MATCHING}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidKKTKSVCKEI_MATCHING Error(rc=$rc) "
#    echo $JOBNAME " pidKKTKSVCKEI_MATCHING Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
#- オプションサービス契約マッチング処理の終了待ち
wait ${pidOPSVCKEI_MATCHING}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidOPSVCKEI_MATCHING Error(rc=$rc) "
    echo $JOBNAME " pidOPSVCKEI_MATCHING Error(rc=$rc) "
    exit ${G_RTN_ERROR}
fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL START
##- 割引サービス契約マッチング処理の終了待ち
#wait ${pidWRIBSVCKEI_MATCHING}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidWRIBSVCKEI_MATCHING Error(rc=$rc) "
#    echo $JOBNAME " pidWRIBSVCKEI_MATCHING Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- サービス契約内訳マッチング処理の終了待ち
#wait ${pidSVCKEIUCWK_MATCHING}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSVCKEIUCWK_MATCHING Error(rc=$rc) "
#    echo $JOBNAME " pidSVCKEIUCWK_MATCHING Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
##- サブオプションサービス契約マッチング処理の終了待ち
#wait ${pidSBOPSVCKEI_MATCHING}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " pidSBOPSVCKEI_MATCHING Error(rc=$rc) "
#    echo $JOBNAME " pidSBOPSVCKEI_MATCHING Error(rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
# OM-2016-0000115 性能改善対応 2016/01/18 有本 DEL END
################################################################################
#
#---すべてのファイルを１つにまとめる
#
################################################################################
#
bsortex \
  -record recform=txtcsv \
  -input reclen=84 \
         file=${KK_T_SVC_KEI_03}.csv,${KK_T_SVC_KEI_UCWK_03}.csv,${KK_T_KKTK_SVC_KEI_03}.csv,${KK_T_OP_SVC_KEI_03}.csv,${KK_T_WRIB_SVC_KEI_03}.csv,${KK_T_SBOP_SVC_KEI_03}.csv \
  -copy \
 > ${OUTFILE}_WK1.csv
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex Error(${OUTFILE}_WK1.csv:rc=$rc) "
    echo $JOBNAME " bsortex Error(${OUTFILE}_WK1.csv:rc=$rc) "
    exit ${G_RTN_ERROR}
fi
################################################################################
#
#---請求契約とマッチング（LEFT JOIN）して請求契約にしか存在しないレコードを作成する
#
################################################################################
#
#- マッチング用のdefファイルのファイル名変数を実ファイル名に置き換える。
KAKINS_LEFT_JOIN_ALL_SERVICE=${G_TOOLSH}/util/def/CH_CM_0012.def
cp ${KAKINS_LEFT_JOIN_ALL_SERVICE} ${DEF_FILE_WK1}
sed -e "s%:KAKINSAKI_BASE%${KK_T_SEIKY_KEI}.csv%"  ${DEF_FILE_WK1} > ${DEF_FILE_WK2}
sed -e "s%:CHIFM155001%${OUTFILE}_WK1.csv%"             ${DEF_FILE_WK2} > ${DEF_FILE_WK1}
##- 課金先・サービス契約をサービス契約番号でマッチングする。
export ZTLOUTFILE=${OUTFILE}_WK2.csv
export ZTLQUOTES=''
${MATCHING} ${DEF_FILE_WK1}
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MATCHING Error(CH_CM_0012.def:rc=$rc) "
    echo $JOBNAME " MATCHING Error(CH_CM_0012.def:rc=$rc) "
    exit ${G_RTN_ERROR}
fi
#
##- マッチング後の請求契約番号（昇順）・サービス課金終了年月日（昇順）・サービス終了年月日（昇順）
##-               ・優先順（降順）・世代登録年月日時分秒（昇順）でソートする
#
bsortex \
  -record recform=txtcsv \
  -input reclen=84 \
  -sort key="0.10asca,3.8asca,4.8asca,6.2ascr,5.17asca" \
 < ${OUTFILE}_WK2.csv \
 > ${OUTFILE}.csv
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " BOSRTEX Error(${OUTFILE}.csv:rc=$rc) "
    echo $JOBNAME " BOSRTEX Error(${OUTFILE}.csv:rc=$rc) "
    exit ${G_RTN_ERROR}
fi

#
#---ＡＰＬ起動
#
java ${JAVA_OPTION} -jar ${JAR_DIR}/koptBatch.jar $PARA

rc=$?
ERR_FLG=0
if [ $rc -ne 0 ]
then
   if [ $rc -ne 4 ]
   then
       if [ $rc -ne 8 ]
       then
           if [ $rc -ne 127 ]
           then
              sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " PROGRAM Error($SVC program:rc=$rc) "
              echo $JOBNAME " PROGRAM Error($SVC program:rc=$rc) "
              exit ${G_RTN_ERROR}
           fi
       fi
    fi
    ERR_FLG=1
fi

exit_rc=$rc

#ワーク削除
if [ $WK_RM = "true" ]
then
    echo ワークファイル削除
    rm -f ${CH_M_PRC_SCHDL_TEIGI}_WK.csv
    rm -f ${SQL_FILE_KK_T_SEIKY_KEI_WK1}_WK.csv
    rm -f ${KK_T_SEIKY_KEI}_WK.csv
    rm -f ${SQL_FILE_KK_T_KAKINS_WK1}_WK.csv
    rm -f ${KK_T_KAKINS}_WK.csv
    rm -f ${KAKINSAKI_BASE}_WK.csv
    rm -f ${OUTFILE}_WK1.csv
    rm -f ${OUTFILE}_WK2.csv
    rm -f ${DEF_FILE_WK1}
    rm -f ${DEF_FILE_WK2}
    rm -f ${SQL_FILE_WK1}
    rm -f ${SQL_FILE_KK_T_SEIKY_KEI_WK1}
    rm -f ${SQL_FILE_KK_T_KAKINS_WK1}
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0491_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0491.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0481_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0481.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0451_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0451_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0451_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0451.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0401_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0401_01_WK.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0401_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0401_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0401.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_01_WK.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_01_WK1.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_01_WK2.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0351.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_01_WK.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_01_WK1.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_01_WK2.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_01_WK3.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0341.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0321_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0321.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0161_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0161_01_WK.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0161_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0161_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0161.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081_01.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081_01_WK1.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081_01_WK2.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081_02.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081_03.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_KK0081.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_CH0501.csv
    rm -f ${MID_DIR_CH}/${JOBNAME}_CH0011.csv
    rm -f ${KK_T_SVC_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0081}
    rm -f ${DEF_CH_CM_0003}
    rm -f ${KK_T_KKTK_SVC_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0341}
    rm -f ${DEF_CH_CM_0004}
    rm -f ${KK_T_OP_SVC_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0351}
    rm -f ${DEF_CH_CM_0005}
    rm -f ${KK_T_WRIB_SVC_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0451}
    rm -f ${DEF_CH_CM_0006}
    rm -f ${KK_T_SVC_KEI_UCWK}_WK.csv
    rm -f ${SQL_CH_U_KK0161}
    rm -f ${DEF_CH_CM_0007}
    rm -f ${KK_T_SBOP_SVC_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0401}
    rm -f ${DEF_CH_CM_0009}
    rm -f ${TEKKYO_SVC_KEI_TEMP}.csv
    rm -f ${KK_T_WRISVC_TG_KEI}_WK.csv
    rm -f ${SQL_CH_U_KK0481}
    rm -f ${DEF_CH_CM_0115_01}
    rm -f ${DEF_CH_CM_0115_02}
    rm -f ${DEF_CH_CM_0116}
    rm -f ${DEF_CH_CM_0117}
    rm -f ${DEF_CH_CM_0118}
    rm -f ${DEF_CH_CM_0119}
fi

#
#--- ジョブの終了メッセージを出力する
#
sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME
sh ${G_TOOLSH}/EOK010210J0.sh CS00026I $JOBNAME

exit $exit_rc
