#!/bin/bash
##############################################################
# システム名    ：eo顧客基幹システム
#
# サブシステム名：料金管理
#
# シェル名      ：会計用売掛金情報料金グループ割当対象抽出
#
# 機能          ：売掛金抽出、会計用工事費分割支払売掛金情報抽出、MVNO会計情報取込処理にて出力された
#                 会計情報をマージし、マージした会計情報を料金グループコードで分割する。
#料金グループコードが未設定（空文字）の場合、
#会計情報（料金グループ設定なし）[${MID_DIR_AC}/ACIFM142101_${XXX}.csv]に出力を行う。
#
#料金グループコードが設定済（空文字以外）の場合、
#会計情報（料金グループ設定あり）
#[${MID_DIR_AC}/ACIFM142102_${XXX}.csv]に出力を行う。
#※${XXX}は第2引数
#
# コマンド形式  ：EO30O0120J0.sh
#
# 実行環境      ：.../app/shl
#
# 終了ステータス：ゼロ以外異常
#
# 特記事項      ：特になし
#
# 変更履歴      ：変更日      変更者       障害／仕様変更No.
# v23.00          2016/03/25  FJ) 安井    【OM-2016-0000647】性能改善
# v37.00          2018/04/26  FJ) クウン  【ANK-3383-00-00】標準工事費分割請求（STEP2）
# v67.00          2023/06/06  FJ) 吉田あ  【ANK-4401-00-00】インボイス対応
#
##############################################################

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

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

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

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

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

#
#---OPD
#
OPD=$1

#
#---業務で必要な変数定義
#
#手修正あり
FILE_NO=$2
#OM-2016-0000647 ADD STA
#--- 運用日付取得
if [ "${OPD}" = "20991231" ]; then
   . EOK010310J0.sh "BDATE"
else
    RSLT_OPEDATE="${OPD}"
fi

#---ワークファイル削除モード
WK_RM=true
#OM-2016-0000647 ADD END
##############################################################
# 業務処理
##############################################################
sh ${G_TOOLSH}/EOK010210J0.sh CS00025I $JOBNAME

#
#---パラメタ定義
#

P1="OPD=,"
P2="SVCCTL=,"
P3="JOB=EO30O0120J0,"
P4="IND1=,"
P5="INF1=,"
P6="IND2=,"
P7="INF2=,"
P8="OTD1=,"
P9="OTF1=,"
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

#v37.00 ANK-3383-00-00 ADD START
#ファイル名保持
if [ -r ${MID_DIR_AC}/ACIFM306001.csv ]
then
   mv -f ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv
   cat /dev/null > ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv
   cat ${MID_DIR_AC}/ACIFM306001.csv ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv > ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv
   rm -f ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv
fi
#v37.00 ANK-3383-00-00 ADD END
#v67.00 ANK-4401-00-00 ADD START
if [ -r ${MID_DIR_AC}/ACIFM358001.csv ]
then
   mv -f ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv
   cat /dev/null > ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv
   cat ${MID_DIR_AC}/ACIFM358001.csv ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv > ${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv
   rm -f ${MID_DIR_AC}/ACIFM142005_TMP_${FILE_NO}.csv
fi
#v67.00 ANK-4401-00-00 ADD END

#
#---ＳＯＲＴ(会計情報を料金グループコードで分割)
#

bsortex -copy -record recform=txtflt fldsep=, \
	-input reclen=320 file=${MID_DIR_AC}/ACIFM142005_${FILE_NO}.csv \
	-output file=${MID_DIR_AC}/ACIFM142101_${FILE_NO}.csv case="5.2asc.eq.'  '" \
	-output file=${MID_DIR_AC}/ACIFM142102_${FILE_NO}.csv case=other

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

#OM-2016-0000647 ADD STA
##############################################################
#会計情報（料金グループ設定なし）
#課金先、サービス契約、料金集計先より会計計上先優先順位が
#最も高い料金グループコードを取得する。
#10多重で処理を行うため、請求契約番号下1桁でファイル分割を行う。
##############################################################
#
#--- ファイル定義
#
#--- 入力力ファイル
INFILE1=${MID_DIR_AC}/ACIFM142101_${FILE_NO}.csv
INFILE2=${MID_DIR_AC}/ACIFM142102_${FILE_NO}.csv
#--- 出力ファイル
OUTFILE1_0=${MID_DIR_AC}/ACIFM142101_010.csv
OUTFILE1_1=${MID_DIR_AC}/ACIFM142101_001.csv
OUTFILE1_2=${MID_DIR_AC}/ACIFM142101_002.csv
OUTFILE1_3=${MID_DIR_AC}/ACIFM142101_003.csv
OUTFILE1_4=${MID_DIR_AC}/ACIFM142101_004.csv
OUTFILE1_5=${MID_DIR_AC}/ACIFM142101_005.csv
OUTFILE1_6=${MID_DIR_AC}/ACIFM142101_006.csv
OUTFILE1_7=${MID_DIR_AC}/ACIFM142101_007.csv
OUTFILE1_8=${MID_DIR_AC}/ACIFM142101_008.csv
OUTFILE1_9=${MID_DIR_AC}/ACIFM142101_009.csv
OUTFILE2_0=${MID_DIR_AC}/ACIFM142102_010.csv
OUTFILE2_1=${MID_DIR_AC}/ACIFM142102_001.csv
OUTFILE2_2=${MID_DIR_AC}/ACIFM142102_002.csv
OUTFILE2_3=${MID_DIR_AC}/ACIFM142102_003.csv
OUTFILE2_4=${MID_DIR_AC}/ACIFM142102_004.csv
OUTFILE2_5=${MID_DIR_AC}/ACIFM142102_005.csv
OUTFILE2_6=${MID_DIR_AC}/ACIFM142102_006.csv
OUTFILE2_7=${MID_DIR_AC}/ACIFM142102_007.csv
OUTFILE2_8=${MID_DIR_AC}/ACIFM142102_008.csv
OUTFILE2_9=${MID_DIR_AC}/ACIFM142102_009.csv
OUTFILE_WRK1=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_1.csv
OUTFILE_WRK2=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_2.csv
OUTFILE_WRK3=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_3.csv
OUTFILE_WRK4=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_4.csv
OUTFILE_WRK5=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_5.csv
OUTFILE_WRK6=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_6.csv
OUTFILE_WRK7=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_7.csv
OUTFILE_WRK8=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_8.csv
OUTFILE_WRK9=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_9.csv
OUTFILE_WRK10=${MID_DIR_AC}/${JOBNAME}_ACIFM142101_UNLOADER_WK_10.csv

#--- 1.料金集計先（CH_M_PRC_SHUK_SK）
SQLFILE_CH0701_02=${SQL_DIR}/AC_U_CH0701_02.sql
SQLFILE_CH0701_02_WRK=${SQL_DIR}/${JOBNAME}_AC_U_CH0701_02_UNLOADER_WK_1.sql

CSVFILE_CH0701_02=${MID_DIR_AC}/${JOBNAME}_AC_U_CH0701_02_UNLOADER_WK_1.csv

#--- 2.課金先（KK_T_KAKINS）共通アンロードファイル
COMULD2_KK0321_ALL=${MID_DIR_CC}/CCIFM024001.csv
CSVFILE_KK0321=${MID_DIR_CC}/${JOBNAME}_CSVFILE_KK0321.csv

#--- 3.サービス契約（KK_T_SVC_KEI）共通アンロードファイル
COMULD2_KK0081_CUR=${MID_DIR_CC}/CCIFM020002.csv
CSVFILE_KK0081=${MID_DIR_CC}/${JOBNAME}_CSVFILE_KK0081.csv

#--- 料金グループコード取得用マッチング
DEFFILE1=${G_TOOLSH}/util/def/AC_CM_0115.def
DEFFILE1_WRK1=${G_TOOLSH}/util/def/${JOBNAME}_AC_CM_0115_MATCHIG_WK_1.def

#--- SQLパラメータセット
#--- 1.料金集計先（CH_M_PRC_SHUK_SK）
cp -f ${SQLFILE_CH0701_02} ${SQLFILE_CH0701_02_WRK}
sed -i -e "s/\:OPE_DATE/'${RSLT_OPEDATE}'/"       ${SQLFILE_CH0701_02_WRK} 

#AC_CM_0115.def
cp -f ${DEFFILE1} ${DEFFILE1_WRK1}
sed -i -e "s%\:ACIFM142%${OUTFILE_WRK1}%"                    ${DEFFILE1_WRK1} 
sed -i -e "s%\:CSVFILE_KK0321%${CSVFILE_KK0321}%"            ${DEFFILE1_WRK1} 
sed -i -e "s%\:CSVFILE_KK0081%${CSVFILE_KK0081}%"            ${DEFFILE1_WRK1} 
sed -i -e "s%\:CSVFILE_CH0701_02%${CSVFILE_CH0701_02}%"      ${DEFFILE1_WRK1} 

#
#--- ファイルのクリアを行う
#
cat /dev/null > $OUTFILE_WRK1
cat /dev/null > $OUTFILE_WRK2
cat /dev/null > $OUTFILE_WRK3
cat /dev/null > $OUTFILE_WRK4
cat /dev/null > $OUTFILE_WRK5
cat /dev/null > $OUTFILE_WRK6
cat /dev/null > $OUTFILE_WRK7
cat /dev/null > $OUTFILE_WRK8
cat /dev/null > $OUTFILE_WRK9
cat /dev/null > $OUTFILE_WRK10

#
#--- サブルーチン（UNLOAD）
#
UNLOAD(){
sh ${G_TOOLSH}/EOKULD02.sh $1 $2
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " unload error($2:rc=$rc) "
    echo $JOBNAME " unload error($2:rc=$rc) "
    exit ${G_RTN_ERROR}
fi
}

#
#--- 入力ファイルをコピー
#
bsortex \
        -copy \
        -record recform=txtcsv -input file=${INFILE1} reclen=200 \
        -output file=${OUTFILE_WRK1} linedlmt=lf

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

#
#--- UNLOAD処理
#
#--- 1.料金集計先（CH_M_PRC_SHUK_SK）
UNLOAD ${SQLFILE_CH0701_02_WRK} ${CSVFILE_CH0701_02}

#
#--- 対象月月末、対象月月初取得
#

#--- イベントコード（利用開始日）
EVENT_CD_USE_STAYMD="01"
#--- イベントコード（利用終了日）
EVENT_CD_USE_ENDYMD="02"
#--- イベントコード（会計処理日）
EVENT_CD_KAIK_SHORI_YMD="21"

#- 請求年月取得（会計処理日基準）
. EO3SEIKYYM.sh ${EVENT_CD_KAIK_SHORI_YMD} ${RSLT_OPEDATE} ${JOBNAME}
TOGETSU=${SEIKY_YM}

#- 月初日取得（会計処理日基準）
. EO3EVENTYMD.sh ${EVENT_CD_USE_STAYMD} ${TOGETSU} ${JOBNAME}
USE_STA_YMD=${EVENT_YMD}

#- 月末日取得（会計処理日基準）
. EO3EVENTYMD.sh ${EVENT_CD_USE_ENDYMD} ${TOGETSU} ${JOBNAME}
USE_END_YMD=${EVENT_YMD}

#
#--- 共通アンロード.課金先の条件絞込み
# 条件
#  SVC_KEI_NO IS NOT NULL
#  KAKINS_TSTAYMD <= 運用日
#  KAKINS_TENDYMD >= 運用日
#  MK_FLG         = '0'
# 出力項目
#  0.請求契約番号
#  1.サービス契約番号
#
bsortex -copy -record recform=txtcsv -input file=${COMULD2_KK0321_ALL} reclen=${ULD2_REC_LEN_KK0321} \
        include="1.10asc.ge.'0'.and.8.8asc.le.'${RSLT_OPEDATE}'.and.9.8asc.ge.'${RSLT_OPEDATE}'.and.10.1asc.eq.'0'" \
        reconst="0.10,1.10" \
        -output file=${CSVFILE_KK0321}

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

#
#--- 共通アンロード.サービス契約の条件絞込み
# 条件
#  SVC_STA_YMD <= 対象月月末 かつ SVC_STA_YMD IS NOT NULL
#  SVC_DSL_KISAN_YMD > 対象月月初 または SVC_DSL_KISAN_YMD IS NULL
# 出力項目
#  0.サービス契約番号
#  1.料金グループコード
#
bsortex -copy -record recform=txtcsv -input file=${COMULD2_KK0081_CUR} reclen=${ULD2_REC_LEN_KK0081} \
        include="22.8asc.le.'${USE_END_YMD}'.and.22.8asc.ge.'0'.and.(31.8asc.gt.'${USE_STA_YMD}'.or.31.8asc.lt.'0')" \
        reconst="0.10,7.2" \
        -output file=${CSVFILE_KK0081}

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

#
#--- ファイルにダブルクォーテーションを付加
#
sed -i -e "s/,/\",\"/g" ${OUTFILE_WRK1}
sed -i -e "s/^/\"/" ${OUTFILE_WRK1}
sed -i -e "s/$/\"/" ${OUTFILE_WRK1}

#
#--- マッチング(OUTFILE_WRK1,課金先,サービス契約,料金集計先)(LEFTJOIN)(OUTFILE_WRK1+料金グループコード＋優先順)
#
(export ZTLOUTFILE=${OUTFILE_WRK2}
${G_TOOLSH}/util/bin/ZTLMAT01 ${DEFFILE1_WRK1})
rc=$?
if [ $rc -ne 0 ]
then
    sh ${G_TOOLSH}/EOK010210J0.sh CS00002E $JOBNAME " マッチング処理 Error($SVC ZTLOUTFILE${OUTFILE_WRK2}:rc=$rc) "
    echo $JOBNAME " マッチング処理 Error($SVC ZTLOUTFILE${OUTFILE_WRK2}:rc=$rc) "
    exit ${G_RTN_ERROR}
fi

#
#--- ファイルからダブルクォーテーションを除去
#
sed -i -e "s/\"//g" ${OUTFILE_WRK2}

#
#---料金集計先有の場合は料金グループコードを料金集計先の料金グループコードで上書き
# 解約のためサービス契約が取得できない場合が存在するため、料金集計先の料金グループコード無しの場合は優先順位を下げるため会計集計先優先順に'AAA'を代入
#
bsortex -copy -record recform=txtcsv \
        -input reclen=320 file=${OUTFILE_WRK2} \
        -output file=${OUTFILE_WRK3} case="19.2asc.lt.'0'" \
        reconst="0.2,1.4,2.10,3.6,4.12,5.2,6.3,7.12,8.11,9.8,10.10,11.12,12.12,13.6,14.10,15.1,16.5,17.4,18.6,19.2,'AAA'.3asc" \
        -output file=${OUTFILE_WRK4} case=other \
        reconst="0.2,1.4,2.10,3.6,4.12,19.2,6.3,7.12,8.11,9.8,10.10,11.12,12.12,13.6,14.10,15.1,16.5,17.4,18.6,19.2,20.3"

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

cat ${OUTFILE_WRK3} ${OUTFILE_WRK4} > ${OUTFILE_WRK5}

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

#
#--- ソート(キー：ACIFM142の料金グループコード以外＋料金集計先.KAIK_SUMUP_SK_YUSEN_JUN(降順))
#
bsortex \
        -sort key="0.2asc,1.4asc,2.10asc,3.6asc,4.12asc,6.3asc,7.12asc,8.11asc,9.8asc,10.10asc,11.12asc,12.12asc,13.6asc,14.10asc,15.1asc,16.5asc,17.4asc,18.6asc,20.3ascr" \
        -record recform=txtcsv -input file=${OUTFILE_WRK5} reclen=200 \
        -output file=${OUTFILE_WRK6}

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

#
#--- マージ(キー：ACIFM142の料金グループコード以外)
#
bsortex \
        -merge key="0.2asc,1.4asc,2.10asc,3.6asc,4.12asc,6.3asc,7.12asc,8.11asc,9.8asc,10.10asc,11.12asc,12.12asc,13.6asc,14.10asc,15.1asc,16.5asc,17.4asc,18.6asc" \
        -record recform=txtcsv -input file=${OUTFILE_WRK6} reclen=200 \
        -summary suppress last \
        -output file=${OUTFILE_WRK7} \
        reconst="2.10,0.2,1.4,2.10,3.6,4.12,5.2,6.3,7.12,8.11,9.8,10.10,11.12,12.12,13.6,14.10,15.1,16.5,17.4,18.6"

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

#
#--- コピー(請求契約番号下1桁取得)
#
bsortex \
        -copy \
        -record recform=txtfix -input file=${OUTFILE_WRK7} reclen=200 \
        reconst="9.1,','.1asc,11.END" \
        -output file=${OUTFILE_WRK8}

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

#--- 出力先振り分けを行う
bsortex \
  -sort key="3.10asc,15.10asc,9.11asc" \
  -record recform=txtcsv \
  -input reclen=200 \
  file=${OUTFILE_WRK8} \
  -output file=${OUTFILE1_0} case="0.1asc.eq.'0'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_1} case="0.1asc.eq.'1'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_2} case="0.1asc.eq.'2'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_3} case="0.1asc.eq.'3'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_4} case="0.1asc.eq.'4'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_5} case="0.1asc.eq.'5'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_6} case="0.1asc.eq.'6'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_7} case="0.1asc.eq.'7'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_8} case="0.1asc.eq.'8'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE1_9} case="0.1asc.eq.'9'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6"
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

##############################################################
#会計情報（料金グループ設定あり）
#10多重で処理を行うため、請求契約番号下1桁でファイル分割を行う。
##############################################################
#
#--- コピー(請求契約番号下1桁取得)
#
bsortex \
        -copy \
        -record recform=txtcsv -input file=${INFILE2} reclen=200 \
        reconst="2.10,0.END" \
        -output file=${OUTFILE_WRK9}

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

#
#--- コピー(請求契約番号下1桁取得)
#
bsortex \
        -copy \
        -record recform=txtfix -input file=${OUTFILE_WRK9} reclen=200 \
        reconst="9.1,','.1asc,11.END" \
        -output file=${OUTFILE_WRK10}

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

#
#---ＳＯＲＴ(会計情報（料金グループ設定あり）の出力先振り分けを行う)
#
bsortex \
  -copy \
  -record recform=txtcsv \
  -input reclen=200 \
  file=${OUTFILE_WRK10} \
  -output file=${OUTFILE2_0} case="0.1asc.eq.'0'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_1} case="0.1asc.eq.'1'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_2} case="0.1asc.eq.'2'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_3} case="0.1asc.eq.'3'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_4} case="0.1asc.eq.'4'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_5} case="0.1asc.eq.'5'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_6} case="0.1asc.eq.'6'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_7} case="0.1asc.eq.'7'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_8} case="0.1asc.eq.'8'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6" \
  -output file=${OUTFILE2_9} case="0.1asc.eq.'9'"  linedlmt=crlf\
  reconst="1.2,2.4,3.10,4.6,5.12,6.2,7.3,8.12,9.11,10.8,11.10,12.12,13.12,14.6,15.10,16.1,17.5,18.4,19.6"

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

#ワーク削除
if [ $WK_RM = "true" ]
then
    rm -f ${OUTFILE_WRK1}
    rm -f ${OUTFILE_WRK2}
    rm -f ${OUTFILE_WRK3}
    rm -f ${OUTFILE_WRK4}
    rm -f ${OUTFILE_WRK5}
    rm -f ${OUTFILE_WRK6}
    rm -f ${OUTFILE_WRK7}
    rm -f ${OUTFILE_WRK8}
    rm -f ${OUTFILE_WRK9}
    rm -f ${OUTFILE_WRK10}
    rm -f ${DEFFILE1_WRK1}
    rm -f ${SQLFILE_CH0701_02_WRK}
    rm -f ${CSVFILE_CH0701_02}
    rm -f ${CSVFILE_KK0321}
    rm -f ${CSVFILE_KK0081}
fi
#OM-2016-0000647 ADD END

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

exit ${G_RTN_NORMAL}
