#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：会計情報（繰越分当月分）マージ
#
# 機能          ：会計情報（当月分）と翌月残高集計（前月分）の会計情報をマージする
#
# コマンド形式  ：EO30Q0540J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v3.00           2012/05/22  FJ）村田     新規作成
# v4.01           2013/01/07  FJ）指原     【ST4-2012-0000222】SQLLOADERオプション変更(共通化)
# v4.02           2013/02/27  FJ）広野     【ST4-2013-0000098】冗長的なDB登録手順を変更
#
##############################################################

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

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

#
#---環境変数定義Shell呼び出し
#
. EOK010110J0.sh
#---ワークファイル削除モード
WK_RM=true ;
TMP_FILE_01="$MID_DIR_AC/TMP_"`basename ${0} ;`"_01" ;
TMP_FILE_02="$MID_DIR_AC/TMP_"`basename ${0} ;`"_02" ;
touch $TMP_FILE_01 $TMP_FILE_02 ;

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

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

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

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

cat ${MID_DIR_AC}/ACIFM147103.csv ${MID_DIR_AC}/ACIFM147101.csv >$TMP_FILE_01 ;
rc=$? ;
if [ ${rc} -ne 0 ] ;
then
    ERRMSG="$JOBNAME cat Error($SVC cat:rc=${rc}) " ;
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E ${ERRMSG} ;
    echo ${ERRMSG} ;
    exit ${G_RTN_ERROR} ;
fi ;

bsortex \
	-record recform=txtcsv \
	-input reclen=300 file=$TMP_FILE_01 \
	-sort key="1.10asc,2.12asc" \
	-output file=$TMP_FILE_02 ;
rc=$? ;
if [ ${rc} -ne 0 ] ;
then
    ERRMSG="$JOBNAME bsortex Error($SVC bsortex ACIFM147104:rc=${rc}) " ;
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E ${ERRMSG} ;
    echo ${ERRMSG} ;
    exit ${G_RTN_ERROR} ;
fi ;

#--- 改行コードをwindow (CRLF)に変換
nkf -Lw -s <$TMP_FILE_02 >${MID_DIR_AC}/ACIFM147104.csv ;
rc=$? ;
if [ ${rc} -ne 0 ] ;
then
    ERRMSG="$JOBNAME nkf Error($SVC nkf ACIFM147104:rc=${rc}) " ;
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E ${ERRMSG} ;
    echo ${ERRMSG} ;
    exit ${G_RTN_ERROR} ;
fi ;

exit_rc=$rc ;
#
#--- ジョブの終了メッセージを出力する
#
sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME
sh ${G_TOOLSH}/EOK010210J0.sh CS00026I $JOBNAME
[ ${WK_RM} = "true" ] &&rm -f ${TMP_FILE_01} ${TMP_FILE_02} ;
exit $exit_rc
