#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：料金グループ割当
#
# 機能          ：請求契約番号単位に契約の状態を確認し、契約中の料金グループの中から、
#会計計上先優先順位に従い、料金グループコードを取得し料金グループコードを付与し、
#利用料金情報（料金グループ割当）へ編集出力する。
#※ACPRC2603_会計用計上先料金グループ割当と同処理
#※当処理はジョブ分割により一部（EO3014121J0.sh）へ移動
#
#
# コマンド形式  ：EO3014120J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v3.00           2012/05/06  FJ) 永田     新規作成
# v4.00           2013/03/19  FJ) 後藤    【ST4-2013-0000211】性能改善
# v4.01           2013/03/18  FJ）広野     性能改善: ワークファイルの取り扱い方法を揃える修正
# v4.02           2013/04/08  FJ) 狭間    【ST4-2013-0000286】性能改善の為、アンロード並列化及び処理見直しと水平展開
# v4.03           2013/04/15  FJ) 早崎    【TG1-2013-0000161】
# v6.00           2013/11/28  FJ) 伊藤    【OM-2013-0004274】サービス契約が取得できなかった場合、課金先適用終了しているサービス契約からコードを取得するよう変更。
# v7.00           2014/02/20  FJ) 伊藤    【OM-2014-0000518】課金先適用中かつ、サービス解約済みのレコードからもコードを取得するよう変更。
# v19.00          2015/10/06  FJ) 中嶋    【OM-2015-0001446】サービス契約の絞り込みで、サービス開始日に設定値がないと取得できないように変更。
# v20.00          2015/11/18  FJ) 有本    【OM-2015-0003006】性能改善：不要なソート削除
# v22.00          2016/01/18  FJ) 福山    【OM-2016-0000114】性能改善：共通アンロードファイル参照対応
# v47.00          2019/12/10  FJ) 大崎    【ANK-3674-00-00】請求書発行手数料の料金集計先の優先順変更
# v53.00          2021/05/06  FJ) 寺園    【ANK-4015-07-00】性能改善：ジョブ分割
##############################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

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

#
#---業務で必要な変数定義
#
# v53.00.00 DEL START
#[ $# -eq 2 ] &&TAJUKIDO="_$2" ;
##---ワークファイル削除モード
#WK_RM=true
#
##---マッチング処理でLeftjoinがNULL時に"を付けなくする（マッチング使用時は必須）
#export ZTLQUOTES=''
# v53.00.00 DEL END

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

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

P1="OPD=,"
P2="SVCCTL=JBSbatMatchServiceControl,"
P3="JOB=EO3014120J0,"
P4="IND1=ACIFI016.def,"
P5="INF1=${MID_DIR_AC}/ACIFI016077.csv,"
P6="IND2=ACIFM198.def,"
P7="INF2=${MID_DIR_AC}/ACIFM198001.csv,"
P8="OTD1=ACIFI016.def,"
P9="OTF1=${MID_DIR_AC}/ACIFI016079.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

#
#--- ファイル定義
#
# OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 ADD START
# 共通アンロードファイル名
# v53.00.00 DEL START
## サービス契約(全件)
#COMULD2_KK0081_ALL=${MID_DIR_CC}/CCIFM020001.csv
## サービス契約(カレント)
#COMULD2_KK0081_CUR=${MID_DIR_CC}/CCIFM020002.csv
##課金先(全件)
#COMULD2_KK0321_ALL=${MID_DIR_CC}/CCIFM024001.csv
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 ADD END
#
## 料金集計先
#CH_M_PRC_SHUK_SK_ULD=${SQL_DIR}/AC_U_CH0701_01.sql
#
## 課金先
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##KK_T_KAKINS_ULD=${SQL_DIR}/AC_U_KK0321_04.sql
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#KK_T_KAKINS_ULD_2=${SQL_DIR}/AC_U_KK0321_11.sql
#
## サービス契約
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##KK_T_SVC_KEI_ULD=${SQL_DIR}/AC_U_KK0081_08.sql
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
## 料金スケジュール定義
#CH_M_PRC_SCHDL_TEIGI_ULD=${SQL_DIR}/AC_U_CH0501_04.sql
#
## マッチング用def
#AC_CM_0029=${G_TOOLSH}/util/def/AC_CM_0029.def
## v47.00.00 ANK-3674 ADD START
#AC_CM_0167=${G_TOOLSH}/util/def/AC_CM_0167.def
## v47.00.00 ANK-3674 ADD END
#
## 入力ファイル
#INFILE=${MID_DIR_AC}/ACIFM198001.csv
#
## ワークファイル
#CH_M_PRC_SHUK_SK_ULD_WRK=${SQL_DIR}/${JOBNAME}_AC_U_CH0701_01_UNLOADER_WK_1$TAJUKIDO.sql
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##KK_T_KAKINS_ULD_WRK=${SQL_DIR}/${JOBNAME}_AC_U_KK0321_04_UNLOADER_WK_1$TAJUKIDO.sql
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#KK_T_KAKINS_ULD_2_WRK=${SQL_DIR}/${JOBNAME}_AC_U_KK0321_11_UNLOADER_WK_1$TAJUKIDO.sql
#CH_M_PRC_SCHDL_TEIGI_ULD_WRK=${SQL_DIR}/${JOBNAME}_AC_U_CH0501_04_UNLOADER_WK_1$TAJUKIDO.sql
#CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2=${SQL_DIR}/${JOBNAME}_AC_U_CH0501_04_UNLOADER_WK_2$TAJUKIDO.sql
#
#AC_CM_0029_WRK=${G_TOOLSH}/util/def/${JOBNAME}_AC_CM_0029_MATCHING_WK_1$TAJUKIDO.def
#AC_CM_0029_WRK2=${G_TOOLSH}/util/def/${JOBNAME}_AC_CM_0029_MATCHING_WK_2$TAJUKIDO.def
#AC_CM_0029_WRK3=${G_TOOLSH}/util/def/${JOBNAME}_AC_CM_0029_MATCHING_WK_3$TAJUKIDO.def
## v47.00.00 ANK-3674 ADD START
#AC_CM_0167_WRK=${G_TOOLSH}/util/def/${JOBNAME}_AC_CM_0167_MATCHING_WK$TAJUKIDO.def
## v47.00.00 ANK-3674 ADD END
#
#CH_M_PRC_SHUK_SK_ULD_FILE=${MID_DIR_AC}/${JOBNAME}_AC_U_CH0701_01_UNLOADER_WK_1$TAJUKIDO.csv
#KK_T_KAKINS_ULD_FILE=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0321_04_UNLOADER_WK_1$TAJUKIDO.csv
#KK_T_KAKINS_ULD_FILE_WK=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0321_04_UNLOADER_WK_2$TAJUKIDO.csv
#KK_T_KAKINS_ULD_2_FILE=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0321_11_UNLOADER_WK_1$TAJUKIDO.csv
#KK_T_KAKINS_ULD_2_FILE_WK=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0321_11_UNLOADER_WK_2$TAJUKIDO.csv
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##KK_T_SVC_KEI_ULD_FILE=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0081_UNLOADER_WK_1$TAJUKIDO.csv
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#KK_T_SVC_KEI_ULD_FILE_WK=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0081_UNLOADER_WK_2$TAJUKIDO.csv
#KK_T_SVC_KEI_ULD_FILE_WK_2=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0081_UNLOADER_WK_3$TAJUKIDO.csv
#KK_T_SVC_KEI_ULD_FILE_WK_3=${MID_DIR_AC}/${JOBNAME}_AC_U_KK0081_UNLOADER_WK_4$TAJUKIDO.csv
#CH_M_PRC_SCHDL_TEIGI_ULD_FILE=${MID_DIR_AC}/${JOBNAME}_AC_U_CH0501_04_UNLOADER_WK_1$TAJUKIDO.csv
#CH_M_PRC_SCHDL_TEIGI_ULD_FILE_2=${MID_DIR_AC}/${JOBNAME}_AC_U_CH0501_04_UNLOADER_WK_2$TAJUKIDO.csv
#
#INFILE_WRK=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_1$TAJUKIDO.csv
#INFILE_WRK2=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_2$TAJUKIDO.csv
#INFILE_WRK3=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_3$TAJUKIDO.csv
#INFILE_WRK4=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_4$TAJUKIDO.csv
#INFILE_WRK5=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_5$TAJUKIDO.csv
#INFILE_WRK6=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_6$TAJUKIDO.csv
#INFILE_WRK7=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_7$TAJUKIDO.csv
## v47.00.00 ANK-3674 ADD START
#INFILE_WRK8=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_8$TAJUKIDO.csv
#INFILE_WRK9=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_9$TAJUKIDO.csv
#INFILE_WRK10=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_10$TAJUKIDO.csv
#INFILE_WRK11=${MID_DIR_AC}/${JOBNAME}_AC_CM_0029_MATCHING_WK_11$TAJUKIDO.csv
## v47.00.00 ANK-3674 ADD END
#
##
##--- 各ファイルの存在チェックを行う
##
#if [ ! -r $CH_M_PRC_SHUK_SK_ULD ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($CH_M_PRC_SHUK_SK_ULD) "
#    echo $JOBNAME " File is nonexist($CH_M_PRC_SHUK_SK_ULD) "
#    exit ${G_RTN_ERROR}
#fi
#
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##if [ ! -r $KK_T_KAKINS_ULD ]
##then
##    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($KK_T_KAKINS_ULD) "
##    echo $JOBNAME " File is nonexist($KK_T_KAKINS_ULD) "
##    exit ${G_RTN_ERROR}
##fi
##
##if [ ! -r $KK_T_SVC_KEI_ULD ]
##then
##    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($KK_T_SVC_KEI_ULD) "
##    echo $JOBNAME " File is nonexist($KK_T_SVC_KEI_ULD) "
##    exit ${G_RTN_ERROR}
##fi
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
#if [ ! -r $CH_M_PRC_SCHDL_TEIGI_ULD ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($CH_M_PRC_SCHDL_TEIGI_ULD) "
#    echo $JOBNAME " File is nonexist($CH_M_PRC_SCHDL_TEIGI_ULD) "
#    exit ${G_RTN_ERROR}
#fi
#
#if [ ! -r $AC_CM_0029 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " File is nonexist($AC_CM_0029) "
#    echo $JOBNAME " File is nonexist($AC_CM_0029) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##--- 請求年月取得
##
#EVENT_CD_01="03"
#. EO3SEIKYYM.sh ${EVENT_CD_01} ${RSLT_OPEDATE} ${JOBNAME}
#
###############################################################
##--- バインド置換
###############################################################
##１．請求年月：請求年月
##　　SEIKY_YM="${SEIKY_YM}"
##２．イベントコード２：利用終了日
##　　EVENT_CD="02"
##３．バッチ運用日：バッチ運用日
##　　OPEDATE="${RSLT_OPEDATE}"
##４．イベントコード１：利用開始日
##　　EVENT_CD_2="01"
##
#
#SEIKY_YM="'${SEIKY_YM}'"
#EVENT_CD="'02'"
#EVENT_CD_2="'01'"
#OPEDATE="'${RSLT_OPEDATE}'"
#
#cp -f ${CH_M_PRC_SHUK_SK_ULD} ${CH_M_PRC_SHUK_SK_ULD_WRK}
#sed -i -e "s/:OPEDATE/${OPEDATE}/"     ${CH_M_PRC_SHUK_SK_ULD_WRK}
#
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##cp -f ${KK_T_KAKINS_ULD} ${KK_T_KAKINS_ULD_WRK}
##sed -i -e "s/:OPEDATE/${OPEDATE}/"     ${KK_T_KAKINS_ULD_WRK}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
#cp -f ${KK_T_KAKINS_ULD_2} ${KK_T_KAKINS_ULD_2_WRK}
#sed -i -e "s/:OPEDATE/${OPEDATE}/"     ${KK_T_KAKINS_ULD_2_WRK}
#
#cp -f ${CH_M_PRC_SCHDL_TEIGI_ULD} ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK}
#sed -i -e "s/:SEIKY_YM/${SEIKY_YM}/"   ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK}
#sed -i -e "s/:EVENT_CD/${EVENT_CD}/"   ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK}
#
#cp -f ${CH_M_PRC_SCHDL_TEIGI_ULD} ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2}
#sed -i -e "s/:SEIKY_YM/${SEIKY_YM}/"   ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2}
#sed -i -e "s/:EVENT_CD/${EVENT_CD_2}/" ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2}
#
#cp -f ${AC_CM_0029} ${AC_CM_0029_WRK}
#sed -i -e "s%:KK0081%${KK_T_SVC_KEI_ULD_FILE_WK}%"     ${AC_CM_0029_WRK}
#sed -i -e "s%:KK0321%${KK_T_KAKINS_ULD_FILE_WK}%"      ${AC_CM_0029_WRK}
#sed -i -e "s%:CH0701%${CH_M_PRC_SHUK_SK_ULD_FILE}%"    ${AC_CM_0029_WRK}
#
#cp -f ${AC_CM_0029} ${AC_CM_0029_WRK2}
#sed -i -e "s%:KK0081%${KK_T_SVC_KEI_ULD_FILE_WK_2}%"   ${AC_CM_0029_WRK2}
#sed -i -e "s%:KK0321%${KK_T_KAKINS_ULD_FILE_WK}%"      ${AC_CM_0029_WRK2}
#sed -i -e "s%:CH0701%${CH_M_PRC_SHUK_SK_ULD_FILE}%"    ${AC_CM_0029_WRK2}
#
#cp -f ${AC_CM_0029} ${AC_CM_0029_WRK3}
#sed -i -e "s%:KK0081%${KK_T_SVC_KEI_ULD_FILE_WK_3}%"   ${AC_CM_0029_WRK3}
#sed -i -e "s%:KK0321%${KK_T_KAKINS_ULD_2_FILE_WK}%"    ${AC_CM_0029_WRK3}
#sed -i -e "s%:CH0701%${CH_M_PRC_SHUK_SK_ULD_FILE}%"    ${AC_CM_0029_WRK3}
#
## v47.00.00 ANK-3674 ADD START
#cp -f ${AC_CM_0167} ${AC_CM_0167_WRK}
#sed -i -e "s%:MASTER%${INFILE_WRK8}%"   ${AC_CM_0167_WRK}
#sed -i -e "s%:TRAN%${INFILE_WRK9}%"     ${AC_CM_0167_WRK}
#
## v47.00.00 ANK-3674 ADD END
#
###############################################################
##--- サブルーチン（UNLOAD）
###############################################################
#UNLOAD(){
#
##unload
#sh ${G_TOOLSH}/EOKULD03.sh $1 $2
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#      sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " unload error($1:rc=$rc) "
#      echo $JOBNAME " unload error($1:rc=$rc) "
#      exit ${G_RTN_ERROR}
#fi
#}
#
#############################################################################################
##--- サブルーチン（KK_T_SVC_KEI_SORT）
#############################################################################################
#KK_T_SVC_KEI_SORT(){
## OM-2015-0001446  2015/10/07 中嶋 MOD STA
## サービス契約取得結果から、世代最新を抽出する。
##bsortex \
##	-sort key="0.10asc,1.8asc,2.17asc" \
##	-input reclen=100 file=${KK_T_SVC_KEI_ULD_FILE} \
##	-record recform=txtcsv \
##	-output include="1.8asc.le.'${RSLT_OPEDATE}'.and.3.1asc.eq.'2'" \
##| bsortex \
##	-merge key="0.10asc" \
##	-input reclen=100 \
##	-record recform=txtcsv \
##	-summary suppress last \
##	-output reconst=0.10,4.8,7.2,9.8 \
##| bsortex \
##	-copy \
##	-input reclen=100 \
##	-record recform=txtcsv \
##	-output include="1.8asc.le.'${YMD}'" reconst=0.10,2.2,3.8 \
##| bsortex \
##	-copy -record recform=txtcsv \
##	-input reclen=100 \
##	-output case="2.8asc.gt.'${YMD_2}'.or.2.8asc.lt.'0'" reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK} \
##	-output case=other reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK_2}
## サービス契約取得結果から、世代最新を抽出する。
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##bsortex \
##	-sort key="0.10asc,1.8asc,2.17asc" \
##	-input reclen=100 file=${KK_T_SVC_KEI_ULD_FILE} \
##	-record recform=txtcsv \
##	-output include="1.8asc.le.'${RSLT_OPEDATE}'.and.3.1asc.eq.'2'" \
##| bsortex \
##	-merge key="0.10asc" \
##	-input reclen=100 \
##	-record recform=txtcsv \
##	-summary suppress last \
##	-output reconst=0.10,4.8,7.2,9.8 \
##| bsortex \
##	-copy \
##	-input reclen=100 \
##	-record recform=txtcsv \
##	-output include="1.8asc.le.'${YMD}'.and.1.8asc.ge.'0'" reconst=0.10,2.2,3.8 \
##| bsortex \
##	-copy -record recform=txtcsv \
##	-input reclen=100 \
##	-output case="2.8asc.gt.'${YMD_2}'.or.2.8asc.lt.'0'" reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK} \
##	-output case=other reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK_2}
#bsortex \
#	-copy -record recform=txtcsv -input file=${COMULD2_KK0081_CUR} reclen=${ULD2_REC_LEN_KK0081} reconst=0.10,7.2,31.8 \
#	 include="22.8asc.le.'${YMD}'.and.22.8asc.ge.'0'" \
#	| sed 's/\"//g' \
# | bsortex \
#	-copy -record recform=txtcsv \
#	-input reclen=100 \
#	-output case="2.8asc.gt.'${YMD_2}'.or.2.8asc.lt.'0'" reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK} \
#	-output case=other reconst=0.10,1.2 file=${KK_T_SVC_KEI_ULD_FILE_WK_2}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
#}
## OM-2015-0001446  2015/10/07 中嶋 MOD END
#
#############################################################################################
##--- サブルーチン（KK_T_SVC_KEI_SORT2）
#############################################################################################
#KK_T_SVC_KEI_SORT2(){
## サービス契約取得結果から、サービス契約番号と料金グループコードに絞り込む。
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##bsortex \
##	-sort key="0.10asc,7.2asc" \
##	-input reclen=100 file=${KK_T_SVC_KEI_ULD_FILE} \
##	-record recform=txtcsv \
##	-output reconst=0.10,7.2 \
##			file=${KK_T_SVC_KEI_ULD_FILE_WK_3}
#bsortex \
#	-sort key="0.10asc,1.2asc" -record recform=txtcsv \
#	-input file=${COMULD2_KK0081_ALL} reconst=0.10,7.2 \
#	  reclen=${ULD2_REC_LEN_KK0081} \
#		| sed 's/\"//g' > ${KK_T_SVC_KEI_ULD_FILE_WK_3}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
#}
#
#############################################################################################
##--- サブルーチン（KK_T_KAKINS_SORT）
#############################################################################################
#KK_T_KAKINS_SORT(){
## 課金先取得結果から、有効なレコードを抽出する。
#bsortex \
#	-copy\
#	-input reclen=100 file=$1 \
#	-record recform=txtcsv \
#	-output include="1.8asc.gt.'0'" \
#			file=$2
#}
#
#############################################################################################
##--- MAIN
#############################################################################################
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##UNLOAD ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK} ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE} &
##UNLOAD ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2} ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE_2} &
#UNLOAD ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK} ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE}
#UNLOAD ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2} ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE_2}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 ADD START
#UNLOAD ${CH_M_PRC_SHUK_SK_ULD_WRK} ${CH_M_PRC_SHUK_SK_ULD_FILE}
#UNLOAD ${KK_T_KAKINS_ULD_2_WRK} ${KK_T_KAKINS_ULD_2_FILE} &
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 ADD END
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##UNLOAD ${KK_T_SVC_KEI_ULD} ${KK_T_SVC_KEI_ULD_FILE}
#
##wait
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
## 月末日
#eval YMD=`cat ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE}`
## 月初日
#eval YMD_2=`cat ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE_2}`
#
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##KK_T_SVC_KEI_SORT &
##KK_T_SVC_KEI_SORT2 &
#KK_T_SVC_KEI_SORT
#KK_T_SVC_KEI_SORT2
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
#
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##UNLOAD ${KK_T_KAKINS_ULD_WRK}   ${KK_T_KAKINS_ULD_FILE}
#bsortex \
#    -copy -record recform=txtcsv \
#    -input file=${COMULD2_KK0321_ALL} \
#           reclen=${ULD2_REC_LEN_KK0321} \
#           reconst="0.10,1.10,9.8" \
#           include="8.8asc.le.'${RSLT_OPEDATE}',9.8asc.ge.'${RSLT_OPEDATE}',8.8asc.ge.' '" \
#         | sed 's/\"//g' > ${KK_T_KAKINS_ULD_FILE}
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##UNLOAD ${KK_T_KAKINS_ULD_2_WRK} ${KK_T_KAKINS_ULD_2_FILE}
#
##wait
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD START
##KK_T_KAKINS_SORT ${KK_T_KAKINS_ULD_FILE} ${KK_T_KAKINS_ULD_FILE_WK} &
##KK_T_KAKINS_SORT ${KK_T_KAKINS_ULD_2_FILE} ${KK_T_KAKINS_ULD_2_FILE_WK} &
#KK_T_KAKINS_SORT ${KK_T_KAKINS_ULD_FILE} ${KK_T_KAKINS_ULD_FILE_WK}
#
## v47.00.00 ANK-3674 ADD START KK_T_KAKINS_ULD_2_FILEの結果を待つ
#wait
## v47.00.00 ANK-3674 ADD END
#
#KK_T_KAKINS_SORT ${KK_T_KAKINS_ULD_2_FILE} ${KK_T_KAKINS_ULD_2_FILE_WK}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 MOD END
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##UNLOAD ${CH_M_PRC_SHUK_SK_ULD_WRK} ${CH_M_PRC_SHUK_SK_ULD_FILE}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#
## v47.00.00 ANK-3674 DEL START
##wait
## v47.00.00 ANK-3674 DEL END
#
#(export ZTLOUTFILE=${INFILE_WRK}
#${G_TOOLSH}/util/bin/ZTLMAT01 ${AC_CM_0029_WRK})
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    echo $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
#(export ZTLOUTFILE=${INFILE_WRK2}
#${G_TOOLSH}/util/bin/ZTLMAT01 ${AC_CM_0029_WRK2})
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    echo $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
#(export ZTLOUTFILE=${INFILE_WRK3}
#${G_TOOLSH}/util/bin/ZTLMAT01 ${AC_CM_0029_WRK3})
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    echo $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##- 請求契約番号単位に、優先順位が最高のレコードのみ抽出する。
##
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD START
## bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK} \
## | bsortex -sort key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'1'.1asc" file=${INFILE_WRK4}
# bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK} \
# | bsortex -merge key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'1'.1asc" file=${INFILE_WRK4}
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD END
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD START
## bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK2} \
## | bsortex -sort key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'2'.1asc" file=${INFILE_WRK5}
# bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK2} \
# | bsortex -merge key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'2'.1asc" file=${INFILE_WRK5}
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD END
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD START
## bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK3} \
## | bsortex -sort key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'3'.1asc" file=${INFILE_WRK6}
# bsortex -sort key=0.10asca,1.3ascaN -record recform=txtcsv -input reclen=30 file=${INFILE_WRK3} \
# | bsortex -merge key=0.10asca -summary suppress first -record recform=txtcsv -input reclen=30 -output reconst="0.END,'3'.1asc" file=${INFILE_WRK6}
## OM-2015-0003006 性能改善対応 2015/11/18 有本 MOD END
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##- 請求契約番号単位に、取得優先順位・課金先適用終了年月日が最高のレコードのみ抽出する。
##- また取得優先順位が"2"かつ会計計上先優先順位が"999"（廃止サービス）を別ファイルへ出力する。
##
## v47.00.00 ANK-3674 MOD START
## bsortex -sort key=4.1asca,0.10asca,3.8ascr -record recform=txtflt fldsep=, -input reclen=30 file=${INFILE_WRK4},${INFILE_WRK5},${INFILE_WRK6} \
## | bsortex -sort key=0.10asca -summary suppress first -record recform=txtflt fldsep=, -input reclen=30 -output reconst=0.10,1.3,2.2 file=${INFILE}
# bsortex -sort key=4.1asca,0.10asca,3.8ascr -record recform=txtflt fldsep=, -input reclen=30 file=${INFILE_WRK4},${INFILE_WRK5},${INFILE_WRK6} \
# | bsortex -sort key=0.10asca -summary suppress first -record recform=txtflt fldsep=, -input reclen=30 \
#  -output reconst=0.10,1.3,2.2 file=${INFILE_WRK8} case="4.1asc.eq.'2'.and.1.3asc.eq.'999'" \
#  -output reconst=0.10,1.3,2.2 file=${INFILE_WRK7} case=other
## v47.00.00 ANK-3674 MOD END
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    echo $JOBNAME " SORT Error($SVC sort:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
## v47.00.00 ANK-3674 ADD START
##
##- 取得優先順位が"3"（紐づきがないサービス）から会計計上先優先順位が"999"を除外する。
##
#bsortex -copy -record recform=txtflt fldsep=, -input reclen=30 file=${INFILE_WRK6} include="1.3asc.ne.'999'" \
# -output reconst=0.10,1.3,2.2 file=${INFILE_WRK9}
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex error(input file=${INFILE_WRK6}:rc=$1) "
#    echo $JOBNAME " bsortex error(input file=${INFILE_WRK6}:rc=$1) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##- 取得優先順位が"3"から取得優先順位が"2"かつ会計計上先優先順位が"999"に紐づくレコードを抽出する。
##
#(export ZTLOUTFILE=${INFILE_WRK10}
#${G_TOOLSH}/util/bin/ZTLMAT01 ${AC_CM_0167_WRK})
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    echo $JOBNAME " Matching Error($SVC matching:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##- 取得優先順位が"2"かつ会計計上先優先順位が"999"と取得優先順位が"3"から再取得したレコードをソート・マージ
##
#bsortex -sort key=0.10asca,1.3ascaN -record recform=txtflt fldsep=, -input reclen=30 file=${INFILE_WRK8},${INFILE_WRK10} \
# | bsortex -sort key=0.10asca -summary suppress first -record recform=txtflt fldsep=, -input reclen=30 \
#    -output file=${INFILE_WRK11}
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex error(input file=${INFILE_WRK8},${INFILE_WRK10}:rc=$1) "
#    echo $JOBNAME " bsortex error(input file=${INFILE_WRK8},${INFILE_WRK10}:rc=$1) "
#    exit ${G_RTN_ERROR}
#fi
#
##
##- 「請求契約番号単位に、取得優先順位・課金先適用終了年月日が最高のレコード」
##- へマージする。
##
#bsortex -sort key=0.10asca -record recform=txtflt fldsep=, -input reclen=30 file=${INFILE_WRK7},${INFILE_WRK11} \
# -output file=${INFILE}
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " bsortex error(input file=${INFILE_WRK7},${INFILE_WRK11}:rc=$1) "
#    echo $JOBNAME " bsortex error(input file=${INFILE_WRK7},${INFILE_WRK11}:rc=$1) "
#    exit ${G_RTN_ERROR}
#fi
#
## v47.00.00 ANK-3674 ADD END
## v53.00.00 DEL END
#
#
#---ＡＰＬ起動
#

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
##
##--- ワーク削除
##
## v53.00.00 DEL START
#if [ $WK_RM = "true" ]
#then
#    rm -f ${CH_M_PRC_SHUK_SK_ULD_WRK}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##    rm -f ${KK_T_KAKINS_ULD_WRK}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#    rm -f ${KK_T_KAKINS_ULD_2_WRK}
#    rm -f ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK}
#    rm -f ${CH_M_PRC_SCHDL_TEIGI_ULD_WRK_2}
#    rm -f ${AC_CM_0029_WRK}
#    rm -f ${AC_CM_0029_WRK2}
#    rm -f ${CH_M_PRC_SHUK_SK_ULD_FILE}
#    rm -f ${KK_T_KAKINS_ULD_FILE}
#    rm -f ${KK_T_KAKINS_ULD_FILE_WK}
#    rm -f ${KK_T_KAKINS_ULD_2_FILE}
#    rm -f ${KK_T_KAKINS_ULD_2_FILE_WK}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL START
##    rm -f ${KK_T_SVC_KEI_ULD_FILE}
## OM-2016-0000114 性能改善：共通アンロードファイル参照対応 2016/01/18 福山 DEL END
#    rm -f ${KK_T_SVC_KEI_ULD_FILE_WK}
#    rm -f ${KK_T_SVC_KEI_ULD_FILE_WK_2}
#    rm -f ${KK_T_SVC_KEI_ULD_FILE_WK_3}
#    rm -f ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE}
#    rm -f ${CH_M_PRC_SCHDL_TEIGI_ULD_FILE_2}
#    rm -f ${INFILE_WRK}
#    rm -f ${INFILE_WRK2}
#    rm -f ${INFILE_WRK3}
#    rm -f ${INFILE_WRK4}
#    rm -f ${INFILE_WRK5}
#    rm -f ${INFILE_WRK6}
#    rm -f ${INFILE_WRK7}
## v47.00.00 ANK-3674 ADD START
#    rm -f ${INFILE_WRK8}
#    rm -f ${INFILE_WRK9}
#    rm -f ${INFILE_WRK10}
#    rm -f ${INFILE_WRK11}
## v47.00.00 ANK-3674 ADD END
#fi
## v53.00.00 DEL END
# v53.00.00 DEL END

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

exit $exit_rc
