#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：課金対象サービス契約情報ソート
#
# 機能          ：課金対象マンションサービス契約情報以下のキーでソートする。
# ソートキー    ：請求契約番号（昇順）＞請求年月（昇順）＞サービス番号（昇順）＞料金サービス識別コード（昇順）＞課金開始日（降順）＞課金終了日（降順）＞サービス開始日（降順）
#
#
# コマンド形式  ：EO30A0755J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v38.00.00       2018/07/09  FJ) 植木     【ANK-3404-00-00】【性能改善】MVNO料金計算夜間処理のmineo単独契約切離し
# v38.00.01       2018/08/10  FJ原田       【ST-2018-0000030】MVNO料金計算性能改善
##############################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

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

#
# ＳＯＲＴ
# (並列処理となる一時金利用料金作成でもACIFM053014ファイルを使用してACIFM053018ファイルを作成しているので、上書きしないようジョブ名を付けたTMPファイルを作成している)
#
# ST-2018-0000030 MOD START
#bsortex -sort key=7.10asca,8.6asca,5.20asca,1.1asca,22.8ascr,24.8ascr,11.8ascr -record recform=txtflt fldsep=, \
# -input reclen=335 file=${MID_DIR_AC}/ACIFM053014.csv \
# -output file=${MID_DIR_AC}/ACIFM053018_${JOBNAME}.csv \
# omit="1.1ascb.eq.' '"
bsortex -sort key=7.10asca,8.6asca,5.20asca,1.1asca,22.8ascr,24.8ascr,11.8ascr -record recform=txtflt fldsep=, \
 -input reclen=335 file=${MID_DIR_AC}/ACIFM053014.csv \
 -output file=${MID_DIR_AC}/ACIFM053018_SORT_${JOBNAME}.csv \
 omit="1.1ascb.eq.' '"
# ST-2018-0000030 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

# ST-2018-0000030 ADD START
#
#--- マージ（マッチング処理のために、キー情報で圧縮）
#
bsortex -merge key=7.10asca,8.6asca,5.20asca -record recform=txtcsv \
        -input file=${MID_DIR_AC}/ACIFM053018_SORT_${JOBNAME}.csv reclen=335 \
        -summary suppress first \
        -output file=${MID_DIR_AC}/ACIFM053018_${JOBNAME}.csv

rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " MERGE Error($SVC merge:rc=$rc) "
    echo $JOBNAME " MERGE Error($SVC merge:rc=$rc) "
    exit ${G_RTN_ERROR}
fi
#
#--- 不要ファイル削除
#

rm ${MID_DIR_AC}/ACIFM053018_SORT_${JOBNAME}.csv

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

exit ${G_RTN_NORMAL}
