: !/bin/sh

SDATE="$1"
EDATE="$2"
platinvfile="$3"
cdefile="$4"
detodir="$5"

BATCHID="all"

echo "getinvcde5:"
echo "    BATCHID = $BATCHID"
echo "    EXCLUDEINVBIT = $EXCLUDEINVBIT"
echo "    EXCLUDEBATCHIDBIT = $EXCLUDEBATCHIDBIT"

tmp1file="/tmp/gci5_$$"

rm -f "$platinvfile"
rm -f "$cdefile"
rm -f "/tmp/platinv$$"
rm -f "/tmp/cde$$"
rm -f "$tmp1file"

IOFFSETDAYS="14"

# convert EDATE to YYYYMMDD
EYYYYMMDD=`awk -v "ADATE=$EDATE" -v "sep=" '
BEGIN {
	dd = 0 + substr(ADATE,1,2);
	mm = 0 + substr(ADATE,4,2);
	yyyy = 0 + substr(ADATE,7,4);
	YYYYMMDD = sprintf("%04d%s%02d%s%02d", yyyy, sep, mm, sep, dd);
	print YYYYMMDD
	exit
}'`
echo "EYYYYMMDD=[$EYYYYMMDD]"

EYYYYMM=`echo "$EYYYYMMDD" | cut -c1-6`
echo "EYYYYMM=[$EYYYYMM]"

. tbsserver_vars

# detail files output dir
if [ -n "$detodir" ]; then
	detailodir="$detodir"
else
	#detailodir="detail_${EYYYYMMDD}_${BATCHID}"
	detailodir="detail_${EYYYYMM}_${BATCHID}"
fi
echo "    detailodir=[$detailodir]"
# remake detail output dir
if [ -d "${detailodir}" ]; then
	rm -r "${detailodir}"
fi
mkdir -p "${detailodir}"


# get required bill Periods from TBS invoice tables
# based on InvoiceDate
(
sqsh -S $server -D $dbname -U $username -P $password <<SQLCMD0
SELECT DISTINCT Period
--, convert(varchar, tInvoice.InvoiceDate, 120) as Idate
--, PlatinumInvoiceNo
FROM tInvoice, tInvoiceDetail
where tInvoiceDetail.InvoiceID = tInvoice.ID
--#  and tInvoice.ID NOT IN (
--#	SELECT distinct tInvoice.CreditNoteInvID
--#		FROM tInvoice
--#		WHERE tInvoice.CreditNoteInvID is not null
--#  )
  and tInvoice.InvoiceDate > dateadd(dd,$IOFFSETDAYS,'$EYYYYMMDD')
  and tInvoice.InvoiceDate <= dateadd(mm,1,dateadd(dd,$IOFFSETDAYS,'$EYYYYMMDD'))
  $EXCLUDEINVBIT
  $EXCLUDEBATCHIDBIT
ORDER BY
 Period
\go -m bcp
SQLCMD0
) | sed 's/\|$//' > "$tmp1file"

echo "2009/01" >"$tmp1file"

# loop for each required bill Period
cat "$tmp1file" | \
while read aperiod
do
	echo "aperiod=[$aperiod]"
	###################################
	# get platinum invoice info from TBSdata
	getinv5 $EYYYYMMDD $IOFFSETDAYS "$aperiod" "/tmp/platinv$$"
	cat "/tmp/platinv$$" >>"$platinvfile"
	rm -f "/tmp/platinv$$"

	###################################
	# get CDE data info from TBSdata
	getcde5 $EYYYYMMDD $IOFFSETDAYS "$aperiod" "$BATCHID" "/tmp/cde$$"
	cat "/tmp/cde$$" >>"$cdefile"
	rm -f "/tmp/cde$$"

	###################################
	# get detail data info from TBSdata
	getdetail5 $EYYYYMMDD $IOFFSETDAYS "$aperiod" "$BATCHID" "$detailodir"
done


rm -f "$tmp1file"
exit 0