#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：契約管理
#
# シェル名      ：ファイルインポート(FOCS参照用サービス契約ワーク)(mineo)
#
# 機能          ：mineo用CSVファイルをFOCS参照用サービス契約ワークスキーマへ
#                 インポートする。
#
# コマンド形式  ：EO2DU0202J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v28.00.00       2017/01/19  FJ)柳        【ANK-3076-00-00】mineoへの訪問サポート導入
##############################################################

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

#
#---ツール格納場所
#
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

#
#---システム日時取得
#
. EOK010410J0.sh "1"
SYSDATE=${RSLT_SYSDATE}

#
#--- ファイル定義
#
# 制御ファイル
CTL_FILE=${SQL_LOADER_CTL_DIR}/KK_T_FOCSS_SVKEI_WK_02.ctl
# オリジナルファイル(スキーマ情報マッチングファイル(FOCS用mineo契約))
# (インポートするデータファイルの元となるファイル)
ORIG_FILE=${MID_DIR_KK}/KKIFM725001.csv
# データファイル
DATA_FILE=${LOC_DIR_KK}/${JOBNAME}_${SYSDATE}.tmp
# ログファイル
LOG_FILE=${SQL_LOADER_LOG_DIR}/${JOBNAME}_${SYSDATE}.log
# 不良ファイル
BAD_FILE=${SQL_LOADER_BAD_DIR}/${JOBNAME}_${SYSDATE}.bad
# ロード先スキーマ
LOAD_SCHEMA=KK_T_FOCSS_SVKEI_WK

#
#--- SQL*Loader
#
#「","」を「TAB」に置き換える
sed 's/\",\"/\t/g' ${ORIG_FILE} | sed 's/^\"//g' | sed 's/\"$//g' > ${DATA_FILE}
# 実行
sqlldr ${ORACLEUSER}/${ORACLEPASS}@${SID_S},CONTROL=${CTL_FILE},DATA=${DATA_FILE},LOG=${LOG_FILE},BAD=${BAD_FILE}

rc=$?
if [ $rc -ne 0 ]
then
    ERRMSG=" データロードに失敗しました：${LOAD_SCHEMA}($SVC load:rc=$rc) ログを確認してください。ログファイル：${LOG_FILE}、不良ファイル：${BAD_FILE} "
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME ${ERRMSG}
    echo $JOBNAME ${ERRMSG}
    exit ${G_RTN_ERROR}
fi

#
#--- 終了処理
#
# 一時ファイル削除
rm -f $DATA_FILE

#
#--- Javaプログラムログ
#--- (本shはJavaプログラムを呼び出してはいないが、出力しておく)
#
# Javaプログラム開始(Program_Start)
sh ${G_TOOLSH}/EOK010210J0.sh CS00027I $JOBNAME
# Javaプログラム終了(Program_End)
sh ${G_TOOLSH}/EOK010210J0.sh CS00028I $JOBNAME

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

exit ${G_RTN_NORMAL}
