#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：月末日 取得処理
#
# 機能          ：料金スケジュール定義マスタから、イベントコード・請求年月を用いてイベント年月日を取得する
#
# コマンド形式  ：EO3EVENTYMD.sh
#
# 実行環境      ：.../app/shl
#
# パラメタ      ：$1   請求年月
#               ：$2   ジョブID
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
#                 2013/07/10  FJ)後藤      新規作成
# v54.00.00       2021/07/27  FJ)寺川      ANK-4069-00-00 バッチ・DBサーバーリプレース対応
##############################################################

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

#
#---パラメータ
#
TG_EVENT_CD=$1
TG_SEIKY_YM=$2
JOBNAME=$3

#オラクル接続情報
DBCONNECT=$ORACLEUSER/$ORACLEPASS@$SID_S

#シスログメッセージ出力
msgToSyslog() {
        sh ${G_TOOLSH}/EOK010210J0.sh CS00002E ${JOBNAME} "$1"
        exit ${G_RTN_ERROR}
}

#接続
#RESULT=`sqlplus -s ${DBCONNECT} <<EOF 
RESULT=`sqlplus -s ${DBCONNECT} <<EOF

whenever oserror exit 127;
whenever sqlerror exit 127;
set head off;
set termout off;
set trims on;

SELECT
    CH0501.EVENT_YMD
FROM
    CH_M_PRC_SCHDL_TEIGI CH0501
WHERE
    CH0501.SEIKY_YM = '${TG_SEIKY_YM}'
AND CH0501.EVENT_CD = '${TG_EVENT_CD}'
AND CH0501.MK_FLG = '0'
;

exit 0;
EOF`

RTNCD=$?

#オラクルエラー発生時
if [ ${RTNCD} -ne 0 ]
then
    #シスログにメッセージを出力し処理終了
    msgToSyslog "スケジュール定義参照処理でエラーが発生しました。（EVENT_CD=${EVENT_CD}, SEIKY_YM=${TG_SEIKY_YM}）" $RESULT
fi

EVENT_YMD=`echo ${RESULT} |grep -e "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"`

if [ "${EVENT_YMD}" == "" ]
then
    msgToSyslog "イベント年月日が取得できませんでした。(EVENT_YMD=${RESULT})"
fi

export EVENT_YMD

return ${G_RTN_NORMAL}
