#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：トビラシステムズ事業者間精算情報作成
#
# 機能          ：トビラシステムズ事業者間精算情報を作成する。
#
# コマンド形式  ：EO31P0110J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v50.00.00      2020/07/14   FJ)麻生     【ANK-3754-00-00】トビラフォン対応
# v50.00.01      2020/08/11   FJ)麻生     【IT1-2020-0000043】締結済から解約された場合に解約数に計上される不正
# v50.00.02      2020/08/21   FJ)西窪     【ANK-3754-14-00】トビラフォン対応
# v52.00.00      2021/02/15   FJ)西窪     【ANK-3987-00-00】【eo】照査前画面への転送電話項目追加
#
##############################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

# v52.00.00 ANK-3975-00-00 ADD START
##############################################################
#--- UNLOAD
##############################################################
UNLOAD(){
    sh ${G_TOOLSH}/EOKULD02.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
}
# v52.00.00 ANK-3975-00-00 ADD END

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

#
#---運用日付取得
#
if [ "${OPD}" = "" ]; then
   . EOK010310J0.sh "BDATE"
else
   RSLT_OPEDATE="${OPD}"
fi
# v50.00.02 ANK-3754-14-00 MOD START
##---今月1日を取得
#NOW_MONTH_ONEDAY=`date -d "${RSLT_OPEDATE}" +'%Y%m'`01
#---運用日の月の1日を取得
RSLT_OPEDATE_ONEDAY=`date -d "${RSLT_OPEDATE}" +'%Y%m'`01
#---今月1日を取得
NOW_MONTH_ONEDAY=`date -d "-1 month ${RSLT_OPEDATE_ONEDAY}" +'%Y%m%d'`
# v50.00.02 ANK-3754-14-00 MOD END
#---前月末日を取得
PREV_MONTH_LASTDAY=`date -d "-1 day ${NOW_MONTH_ONEDAY}" +'%Y%m%d'`
#---翌月1日を取得
NEXT_MONTH_ONEDAY=`date -d "1 month ${NOW_MONTH_ONEDAY}" +'%Y%m%d'`
#---請求年月を取得
# v50.00.02 ANK-3754-14-00 MOD START
#SEIKY_YM=`echo ${PREV_MONTH_LASTDAY} | cut -c 1-6`
SEIKY_YM=`echo ${NOW_MONTH_ONEDAY} | cut -c 1-6`
# v50.00.02 ANK-3754-14-00 MOD END

#
#---ファイル定義
#
# v52.00.00 ANK-3975-00-00 DEL START
#KK_CM_0726_DEF=${G_TOOLSH}/util/def/KK_CM_0726.def
# v52.00.00 ANK-3975-00-00 DEL END

# v52.00.00 ANK-3975-00-00 ADD START
# 他事業者契約異動通知アンロード定義
KK_T_TAJGS_KEI_IDT_ULD=${SQL_DIR}/KK_U_KK3081_01.sql
KK_CM_1034_DEF=${G_TOOLSH}/util/def/KK_CM_1034.def
# v52.00.00 ANK-3975-00-00 ADD END

#
#---ワークファイル
#
# v52.00.00 ANK-3975-00-00 DEL START
#EO31P0110J0_KK0351_SORT1=${MID_DIR_AC}/EO31P0110J0_KK0351_SORT1.csv
#MATCHFILE1=${MID_DIR_AC}/EO31P0110J0_MATCH1.csv
# v52.00.00 ANK-3975-00-00 DEL END
OUTFILE1=${MID_DIR_AC}/EO31P0110J0_OUT1.csv
OUTFILE2=${MID_DIR_AC}/EO31P0110J0_OUT2.csv
OUTFILE3=${MID_DIR_AC}/EO31P0110J0_OUT3.csv
ACIFM346001=${MID_DIR_AC}/ACIFM346001.csv
ACIFM347001=${MID_DIR_AC}/ACIFM347001.csv

# v52.00.00 ANK-3975-00-00 ADD START
KK3081_ULD=${LOC_DIR_AC}/${JOBNAME}_KK3081.csv
KK3081_STA=${LOC_DIR_AC}/${JOBNAME}_KK3081_STA.csv
KK3081_DEL=${LOC_DIR_AC}/${JOBNAME}_KK3081_DEL.csv
KK3081_MATCHFILE=${MID_DIR_AC}/EO31P0110J0_KK3081_MATCH.csv
# v52.00.00 ANK-3975-00-00 ADD END

# v52.00.00 ANK-3975-00-00 DEL START
##オプションサービス契約(カレント)
#COMULD2_KK0351_CUR=${MID_DIR_CC}/CCIFM026002.csv
##オプションサービス契約<電話>(カレント)
#COMULD2_KK0371_CUR=${MID_DIR_CC}/CCIFM044002.csv
##サービス契約内訳(カレント)
#COMULD2_KK0161_CUR=${MID_DIR_CC}/CCIFM021002.csv
# v52.00.00 ANK-3975-00-00 DEL END

# v52.00.00 ANK-3975-00-00 DEL START
##
##---キー項目でソート（オプションサービス契約(カレント)）
##   ソートＫＥＹ
##   0.12    オプションサービス契約番号
##   出力項目
##   9.10    SYSID
##   0.12    オプションサービス契約番号
##   2.3     オプションサービス契約ステータス
##   8.12    サービス契約内訳番号
##   18.8    サービス開始年月日
##   22.8    サービス終了年月日
##   24.8    サービス解約年月日
##   抽出条件
##   
##   
#BSORT_DEF_KK0351_CUR="@OP_SVC_KEI_NO_RECONST=1.12 @OP_SVC_KEI_NO=0.12 @OP_SVC_KEI_STAT=2.3 @OP_SVC_CD=3.4 @SVC_KEI_UCWK_NO=8.12 @SYSID=9.10 @SVC_STAYMD=18.8 @SVC_ENDYMD=22.8 @SVC_DSL_YMD=24.8"
#
#bsortex -define ${BSORT_DEF_KK0351_CUR} -sort key="@OP_SVC_KEI_NO_RECONSTasc" -record recform=txtcsv \
#        -input file=${COMULD2_KK0351_CUR} reclen=${ULD2_REC_LEN_KK0351} \
#            reconst="@SYSID,@OP_SVC_KEI_NO,@OP_SVC_KEI_STAT,@SVC_KEI_UCWK_NO,@SVC_STAYMD,@SVC_ENDYMD,@SVC_DSL_YMD" \
#            include="(@OP_SVC_KEI_STATasc.eq.'100'.or.@OP_SVC_KEI_STATasc.eq.'210'.or.@OP_SVC_KEI_STATasc.eq.'220'.or.@OP_SVC_KEI_STATasc.eq.'910').and.@OP_SVC_CDasc.eq.'B135'" \
#        -output file=${EO31P0110J0_KK0351_SORT1}
#        
#
#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
#
##
##--- ファイルマッチング処理
##     ・ソート後のオプションサービス契約アンロードファイル
##     ・オプションサービス契約<電話>アンロードファイル
##     ・サービス契約内訳アンロードファイル
##
#export ZTLTMPDIR=${ULD_WORK_DIR}
#export ZTLOUTFILE=${MATCHFILE1}
#export EO31P0110J0_KK0351_SORT1
#export COMULD2_KK0371_CUR
#export COMULD2_KK0161_CUR
#
#${G_TOOLSH}/util/bin/ZTLMAT01 ${KK_CM_0726_DEF}
#
#rc=$?
#if [ $rc -ne 0 ]
#then
#    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " matching Error($SVC cat:rc=$rc) "
#    echo $JOBNAME " matching Error($SVC cat:rc=$rc) "
#    exit ${G_RTN_ERROR}
#fi
#
#
##
##--- BSORT用定義
##
#BSORT_DEF_MATCH1="@SYSID=0.10 @TOBILAPH_ID=1.32 @OP_SVC_KEI_STAT=2.3 @SVC_STAYMD=3.8 @SVC_ENDYMD=4.8 @SVC_DSL_YMD=5.8 @KEIZK_MT_SVC_KEI_UCWK_NO=6.12 @IDO_DIV=7.5"
#REC_LEN_MATCH1=110
#
##
##---前月末時点累計契約者情報を抽出
##   出力項目
##   0.10    SYSID
##   1.32    トビラフォンID
##   3.8     サービス開始年月日
##   4.8     サービス終了年月日
##   6.12    継続元サービス契約内訳番号
##   7.5     異動区分
##           前月末時点累計契約者数（"1"を設定）
##           新規申込数（""を設定）
##           当月解約数（""を設定）
##   抽出条件
##   サービス開始年月日(年月) <= 運用日の前月(年月)
##   サービス終了年月日(年月) > 運用日の前月(年月)
## v50.00.01 IT1-2020-0000043 MOD START
##bsortex -define ${BSORT_DEF_MATCH1} -copy -record recform=txtcsv \
##        -input file=${MATCHFILE1} reclen=${REC_LEN_MATCH1} \
##            include="@SVC_STAYMDasc.le.'${PREV_MONTH_LASTDAY}'.and.@SVC_ENDYMDasc.gt.'${PREV_MONTH_LASTDAY}'" \
##        -output file=${OUTFILE1} reconst="@SYSID,@TOBILAPH_ID,@SVC_STAYMD,@SVC_ENDYMD,@KEIZK_MT_SVC_KEI_UCWK_NO,@IDO_DIV,'1'.1ascA,EMPTYA,EMPTYA"
#bsortex -define ${BSORT_DEF_MATCH1} -copy -record recform=txtcsv \
#        -input file=${MATCHFILE1} reclen=${REC_LEN_MATCH1} \
#            include="@SVC_STAYMDasc.gt.' '.and.@SVC_STAYMDasc.le.'${PREV_MONTH_LASTDAY}'.and.@SVC_ENDYMDasc.gt.'${PREV_MONTH_LASTDAY}'" \
#        -output file=${OUTFILE1} reconst="@SYSID,@TOBILAPH_ID,@SVC_STAYMD,@SVC_ENDYMD,@KEIZK_MT_SVC_KEI_UCWK_NO,@IDO_DIV,'1'.1ascA,EMPTYA,EMPTYA"
## v50.00.01 IT1-2020-0000043 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
#
#
##
##---新規申込情報を抽出
##   出力項目
##   0.10    SYSID
##   1.32    トビラフォンID
##   3.8     サービス開始年月日
##   4.8     サービス終了年月日
##   6.12    継続元サービス契約内訳番号
##   7.5     異動区分
##           前月末時点累計契約者数（""を設定）
##           新規申込数（"1"を設定）
##           当月解約数（""を設定）
##   抽出条件
##   サービス開始年月日(年月) = 運用日(年月)
#bsortex -define ${BSORT_DEF_MATCH1} -copy -record recform=txtcsv \
#        -input file=${MATCHFILE1} reclen=${REC_LEN_MATCH1} \
#            include="@SVC_STAYMDasc.ge.'${NOW_MONTH_ONEDAY}'.and.@SVC_STAYMDasc.lt.'${NEXT_MONTH_ONEDAY}'" \
#        -output file=${OUTFILE2} reconst="@SYSID,@TOBILAPH_ID,@SVC_STAYMD,@SVC_ENDYMD,@KEIZK_MT_SVC_KEI_UCWK_NO,@IDO_DIV,EMPTYA,'1'.1ascA,EMPTYA"
#
#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
#
#
##
##---当月解約情報を抽出
##   出力項目
##   0.10    SYSID
##   1.32    トビラフォンID
##   3.8     サービス開始年月日
##   4.8     サービス終了年月日
##   6.12    継続元サービス契約内訳番号
##   7.5     異動区分
##           前月末時点累計契約者数（""を設定）
##           新規申込数（""を設定）
##           当月解約数（"1"を設定）
##   抽出条件
##   オプションサービス契約ステータス = 「910:解約済」
##   サービス解約年月日(年月) = 運用日(年月)
##   サービス開始年月日 <> 未設定
## v50.00.01 IT1-2020-0000043 MOD START
##bsortex -define ${BSORT_DEF_MATCH1} -copy -record recform=txtcsv \
##        -input file=${MATCHFILE1} reclen=${REC_LEN_MATCH1} \
##            include="@OP_SVC_KEI_STATasc.eq.'910'.and.@SVC_DSL_YMDasc.ge.'${NOW_MONTH_ONEDAY}'.and.@SVC_DSL_YMDasc.lt.'${NEXT_MONTH_ONEDAY}'" \
##        -output file=${OUTFILE3} reconst="@SYSID,@TOBILAPH_ID,@SVC_STAYMD,@SVC_ENDYMD,@KEIZK_MT_SVC_KEI_UCWK_NO,@IDO_DIV,EMPTYA,EMPTYA,'1'.1ascA"
#bsortex -define ${BSORT_DEF_MATCH1} -copy -record recform=txtcsv \
#        -input file=${MATCHFILE1} reclen=${REC_LEN_MATCH1} \
#            include="@OP_SVC_KEI_STATasc.eq.'910'.and.@SVC_DSL_YMDasc.ge.'${NOW_MONTH_ONEDAY}'.and.@SVC_DSL_YMDasc.lt.'${NEXT_MONTH_ONEDAY}'.and.@SVC_STAYMDasc.gt.' '" \
#        -output file=${OUTFILE3} reconst="@SYSID,@TOBILAPH_ID,@SVC_STAYMD,@SVC_ENDYMD,@KEIZK_MT_SVC_KEI_UCWK_NO,@IDO_DIV,EMPTYA,EMPTYA,'1'.1ascA"
## v50.00.01 IT1-2020-0000043 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
#
#
##
##---あんしん発着信契約情報を作成
##   出力項目
##   0.10    SYSID
##   1.32    トビラフォンID
##   2.8     サービス開始年月日
##   3.8     サービス終了年月日
##   4.12    継続元サービス契約内訳番号
##   5.5     異動区分
##   6.1     前月末時点累計契約者数
##   7.1     新規申込数
##   8.1     当月解約数
#BSORT_DEF_ACIFM346="@TOBILAPH_ID=1.32 @ZEN_END_RK_KEISHA_CNT=6.1 @NEW_MSKM_CNT=7.1 @TOGTU_DSL_CNT=8.1"
#REC_LEN_ACIFM346=105
#
#bsortex -define ${BSORT_DEF_ACIFM346} -sort key="@TOBILAPH_IDasc,@ZEN_END_RK_KEISHA_CNTascr,@NEW_MSKM_CNTascr,@TOGTU_DSL_CNTascr" -record recform=txtcsv \
#        -input file=${OUTFILE1},${OUTFILE2},${OUTFILE3} reclen=${REC_LEN_ACIFM346} \
#        -output file=${ACIFM346001}
#
#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
## v52.00.00 ANK-3975-00-00 DEL END
#
# v52.00.00 ANK-3975-00-00 ADD START
# ****************************************************
#  他事業者契約異動通知アンロード処理
# ****************************************************
#  0.4:TAJGS_KEI_IDO_SBT_CD
#  1.32:TOBILAPH_ID
#  2.8:TAJGS_KEI_STA_END_YMD

UNLOAD ${KK_T_TAJGS_KEI_IDT_ULD} ${KK3081_ULD}

#---キー項目でソート（他事業者契約異動通知(開始依頼)）
#   ソートＫＥＹ
#   1.32    トビラフォンID
#   出力項目
#   1.32    トビラフォンID
#   2.8    他事業者契約開始年月日
#   抽出条件
#   0.4    他事業者契約異動種別コード = '0301'(あんしん発着信サービス提供開始依頼)
#   
BSORT_DEF_KK3081="@TAJGS_KEI_IDO_SBT_CD=0.4 @TOBILAPH_ID=1.32 @TAJGS_KEI_STA_END_YMD=2.8"

bsortex -define ${BSORT_DEF_KK3081} -sort key="@TOBILAPH_IDasc" -record recform=txtcsv \
        -input file=${KK3081_ULD} reclen=1000 \
            reconst="@TOBILAPH_ID,@TAJGS_KEI_STA_END_YMD" \
            include="@TAJGS_KEI_IDO_SBT_CDasc.eq.'0301'" \
        -output file=${KK3081_STA}

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

#---キー項目でソート（他事業者契約異動通知(解約依頼)）
#   ソートＫＥＹ
#   1.32    トビラフォンID
#   出力項目
#   1.32    トビラフォンID
#   2.8    他事業者契約終了年月日
#   抽出条件
#   0.4    他事業者契約異動種別コード = '0302'(あんしん発着信サービス解約依頼)
#   

bsortex -define ${BSORT_DEF_KK3081} -sort key="@TOBILAPH_IDasc" -record recform=txtcsv \
        -input file=${KK3081_ULD} reclen=1000 \
            reconst="@TOBILAPH_ID,@TAJGS_KEI_STA_END_YMD" \
            include="@TAJGS_KEI_IDO_SBT_CDasc.eq.'0302'" \
        -output file=${KK3081_DEL}

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

#
#--- ファイルマッチング処理
#     ・ソート後の他事業者契約異動通知(開始依頼)ファイル
#     ・ソート後の他事業者契約異動通知(解約依頼)ファイル
#
export ZTLTMPDIR=${ULD_WORK_DIR}
export ZTLOUTFILE=${KK3081_MATCHFILE}
export KK3081_STA
export KK3081_DEL

${G_TOOLSH}/util/bin/ZTLMAT01 ${KK_CM_1034_DEF}

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

#
#--- BSORT用定義
#
BSORT_DEF_KK3081_MATCH1="@TOBILAPH_ID=0.32 @TAJGS_KEI_STA_YMD=1.8 @TAJGS_KEI_END_YMD=2.8"
REC_LEN_KK3081_MATCH1=1000

#
#---前月末時点累計契約者情報を抽出
#   出力項目
#   1.32    トビラフォンID
#   1.8    他事業者契約開始年月日
#   2.8    他事業者契約終了年月日
#           前月末時点累計契約者数（"1"を設定）
#           新規申込数（""を設定）
#           当月解約数（""を設定）
#   抽出条件
#   他事業者契約開始年月日(年月) <= 運用日の前月(年月)
#   他事業者契約終了年月日(年月) > 運用日の前月(年月)または未設定

bsortex -define ${BSORT_DEF_KK3081_MATCH1} -copy -record recform=txtcsv \
        -input file=${KK3081_MATCHFILE} reclen=${REC_LEN_KK3081_MATCH1} \
            include="@TAJGS_KEI_STA_YMDasc.le.'${PREV_MONTH_LASTDAY}'.and.@TAJGS_KEI_STA_YMDasc.gt.' '.and.(@TAJGS_KEI_END_YMDasc.gt.'${PREV_MONTH_LASTDAY}'.or.@TAJGS_KEI_END_YMDasc.lt.' ')" \
        -output file=${OUTFILE1} reconst="@TOBILAPH_ID,@TAJGS_KEI_STA_YMD,@TAJGS_KEI_END_YMD,'1'.1ascA,EMPTYA,EMPTYA"

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

#
#---新規申込情報を抽出
#   出力項目
#   1.32    トビラフォンID
#   1.8    他事業者契約開始年月日
#   2.8    他事業者契約終了年月日
#           前月末時点累計契約者数（""を設定）
#           新規申込数（"1"を設定）
#           当月解約数（""を設定）
#   抽出条件
#   他事業者契約開始年月日(年月) = 運用日の前月(年月)

bsortex -define ${BSORT_DEF_KK3081_MATCH1} -copy -record recform=txtcsv \
        -input file=${KK3081_MATCHFILE} reclen=${REC_LEN_KK3081_MATCH1} \
            include="@TAJGS_KEI_STA_YMDasc.ge.'${NOW_MONTH_ONEDAY}'.and.@TAJGS_KEI_STA_YMDasc.lt.'${NEXT_MONTH_ONEDAY}'" \
        -output file=${OUTFILE2} reconst="@TOBILAPH_ID,@TAJGS_KEI_STA_YMD,@TAJGS_KEI_END_YMD,EMPTYA,'1'.1ascA,EMPTYA"
        
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

#
#---当月解約情報を抽出
#   出力項目
#   1.32    トビラフォンID
#   1.8    他事業者契約開始年月日
#   2.8    他事業者契約終了年月日
#           前月末時点累計契約者数（""を設定）
#           新規申込数（""を設定）
#           当月解約数（"1"を設定）
#   抽出条件
#   他事業者契約終了年月日(年月) = 運用日(年月)

bsortex -define ${BSORT_DEF_KK3081_MATCH1} -copy -record recform=txtcsv \
        -input file=${KK3081_MATCHFILE} reclen=${REC_LEN_KK3081_MATCH1} \
            include="@TAJGS_KEI_END_YMDasc.ge.'${NOW_MONTH_ONEDAY}'.and.@TAJGS_KEI_END_YMDasc.lt.'${NEXT_MONTH_ONEDAY}'" \
        -output file=${OUTFILE3} reconst="@TOBILAPH_ID,@TAJGS_KEI_STA_YMD,@TAJGS_KEI_END_YMD,EMPTYA,EMPTYA,'1'.1ascA"
        
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

#
#---あんしん発着信契約情報を作成
#   出力項目
#   0.32    トビラフォンID
#   1.8     他事業者契約開始年月日
#   2.8     他事業者契約終了年月日
#   3.1     前月末時点累計契約者数
#   4.1     新規申込数
#   5.1     当月解約数
BSORT_DEF_ACIFM346="@TOBILAPH_ID=0.32 @ZEN_END_RK_KEISHA_CNT=3.1 @NEW_MSKM_CNT=4.1 @TOGTU_DSL_CNT=5.1"
REC_LEN_ACIFM346=105

bsortex -define ${BSORT_DEF_ACIFM346} -sort key="@TOBILAPH_IDasc,@ZEN_END_RK_KEISHA_CNTascr,@NEW_MSKM_CNTascr,@TOGTU_DSL_CNTascr" -record recform=txtcsv \
        -input file=${OUTFILE1},${OUTFILE2},${OUTFILE3} reclen=${REC_LEN_ACIFM346} \
        -output file=${ACIFM346001}

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
# v52.00.00 ANK-3975-00-00 ADD END
#
#---パラメタ定義
#

P1="OPD=$OPD,"
P2="SVCCTL=JBSbatMultiServiceControl,"
P3="JOB=EO31P0110J0,"
P4="IND1=ACIFM346.def,"
P5="INF1=${ACIFM346001},"
P6="IND2=,"
P7="INF2=,"
P8="OTD1=ACIFM347.def,"
P9="OTF1=${ACIFM347001},"
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

#
#---ＡＰＬ起動
#

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

if [ "${ERR_FLG}" = "0" ];then
   #-- 出力ファイルパス
   OUTPUT_DATA_FILE=${MID_DIR_AC}/TOBILA_JIGYOSHA_CHK_DATA_${SEIKY_YM}.csv


   #
   #---トビラシステムズ事業者間精算情報にヘッダ情報を出力
   #
   echo '"トビラフォンID","開始日","終了日","前月末時点累計契約者数","新規申込数","当月解約数","合計件数"' | nkf -sLw > ${OUTPUT_DATA_FILE}

   rc=$?
   if [ $rc -ne 0 ]
   then
       sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC header output:rc=$rc) "
       echo $JOBNAME " HEADER OUTPUT Error($SVC sort:rc=$rc) "
       exit ${G_RTN_ERROR}
   fi


   if [ -s ${ACIFM347001} ]; then
      #
      #---トビラシステムズ事業者間精算情報に明細情報を出力(1列目は削除)
      #
      
      #
      #---明細情報をソート
      #   出力項目
      #   1.32    トビラフォンID
      #   2.10    開始日
      #   3.10    終了日
      #   4.1     前月末時点累計契約者数
      #   5.1     新規申込数
      #   6.1     当月解約数
      #   7.1     合計件数
      BSORT_DEF_ACIFM347="@TOBILAPH_ID_RECONST=0.32"
      REC_LEN_ACIFM347=91
      
# v52.00.00 ANK-3975-00-00 MOD START
#       bsortex -define ${BSORT_DEF_ACIFM347} -sort key="@TOBILAPH_ID_RECONSTasc" -record recform=txtcsv \
#              -input file=${ACIFM347001} reclen=${REC_LEN_ACIFM347} reconst="1.END" \
#             >> ${OUTPUT_DATA_FILE}
      bsortex -define ${BSORT_DEF_ACIFM347} -sort key="@TOBILAPH_ID_RECONSTasc" -record recform=txtcsv \
             -input file=${ACIFM347001} reclen=${REC_LEN_ACIFM347} \
             >> ${OUTPUT_DATA_FILE}
# v52.00.00 ANK-3975-00-00 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
      
      
      #
      #--- トビラシステムズ事業者間精算情報にフッタ情報を出力
      #
      
      #
      #---明細情報を合計
      #   出力項目
      #           "合計"
      #           ""
      #           ""
      #   4.10    前月末時点累計契約者数
      #   5.10    新規申込数
      #   6.10    当月解約数
      #   7.10    合計件数
# v52.00.00 ANK-3975-00-00 MOD START
#      awk -F '","' 'BEGIN{SUM1=0;SUM2=0;SUM3=0;SUM4=0;}$5!=""{SUM1+=$5};$6!=""{SUM2+=$6};$7!=""{SUM3+=$7};$8!="\""{sub($8,"\"","");SUM4+=$8}END{printf("\"合計\",\"\",\"\",\"%\047d\",\"%\047d\",\"%\047d\",\"%\047d\"\r\n",SUM1,SUM2,SUM3,SUM4)}' ${ACIFM347001} \
#              | nkf -s >> ${OUTPUT_DATA_FILE}
      awk -F '","' 'BEGIN{SUM1=0;SUM2=0;SUM3=0;SUM4=0;}$4!=""{SUM1+=$4};$5!=""{SUM2+=$5};$6!=""{SUM3+=$6};$7!="\""{sub($7,"\"","");SUM4+=$7}END{printf("\"合計\",\"\",\"\",\"%\047d\",\"%\047d\",\"%\047d\",\"%\047d\"\r\n",SUM1,SUM2,SUM3,SUM4)}' ${ACIFM347001} \
              | nkf -s >> ${OUTPUT_DATA_FILE}
# v52.00.00 ANK-3975-00-00 MOD END
      
      rc=$?
      if [ $rc -ne 0 ]
      then
          sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " SORT Error($SVC footer output:rc=$rc) "
          echo $JOBNAME " FOOTER OUTPUT Error($SVC sort:rc=$rc) "
          exit ${G_RTN_ERROR}
      fi
   fi
fi


exit_rc=$rc

#ワーク削除
# v52.00.00 ANK-3975-00-00 MOD START
#rm -f ${EO31P0110J0_KK0351_SORT1}
#rm -f ${MATCHFILE1}
rm -f ${KK3081_MATCHFILE}
rm -f ${KK3081_ULD}
rm -f ${KK3081_STA}
rm -f ${KK3081_DEL}
# v52.00.00 ANK-3975-00-00 MOD END
rm -f ${OUTFILE1}
rm -f ${OUTFILE2}
rm -f ${OUTFILE3}


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

exit $exit_rc
