: !/bin/sh SDATE="$1" EDATE="$2" mobcallsfile="$3" NOVERIFY="$4" echo "domob: SDATE=$SDATE EDATE=$EDATE mobcallsfile=$mobcallsfile NOVERIFY=$NOVERIFY" MMYYYY=`SDATEtoMMYYYY $SDATE` echo "domob: MMYYYY = [$MMYYYY]" billperiod=`MMYYYYtobillperiod $MMYYYY _` echo "domob: $MMYYYY - billperiod = [$billperiod]" ########################################################################## send_noimportdata_email() { # send email attf="" subject="No Import Data Files" emailaddr="$WBUPFILEADMINEMAIL" #emailaddr="$WBUPFILEADMINEMAIL rod@transmit.com.au" emailaddr="support@transmit.com.au" echo "Sending $subject email to: $emailaddr" # Force mail to pass DATE as GMT TZ=''; export TZ ( echo "********************************************************" echo "WARNING: No import data files found for" echo " ${billperiod} / ${carrier} / ${sidmainttype}" echo "********************************************************" if [ -n "$attf" ]; then uuencode "$attf" "$baseverifyreportfile" fi ) | mail -s "$subject" $emailaddr } #------------------------------------------------------- domobcarrier() { carrier="$1" infileext="$2" ctag="$3" if [ "$ctag" = "" ]; then ctag="_" fi echo "carrier=$carrier infileext=$infileext ctag=$ctag" sidmainttype="mobile_phones" echo "sidmainttype=[$sidmainttype]" #infilemask="indata/${billperiod}/${carrier}/${sidmainttype}/?????_*.${infileext}" infilemask="indata/${billperiod}/${carrier}/${sidmainttype}/?????${ctag}*.${infileext}" echo "infilemask=[$infilemask]" donedatafile="/tmp/$0.donedatafile$$" rm -f "$donedatafile" for fullinfile in `ls $infilemask` do echo "fullinfile=[$fullinfile]" # flag found import data file #touch "$fullinfile" echo "$fullinfile" >> "$donedatafile" infile=`basename "$fullinfile"` echo "infile=[$infile]" datasrcid=`basename $infile ".${infileext}" | cut -c1-5` echo "datasrcid=[$datasrcid]" INFOLDER="indata/${billperiod}/${carrier}/${sidmainttype}" echo "INFOLDER=[$INFOLDER]" stddetailfile="$INFOLDER/out/${datasrcid}_${carrier}_${sidmainttype}_${MMYYYY}.out" echo "stddetailfile=[$stddetailfile]" # convert import data to standard format if [ -z "$NOVERIFY" ]; then dodatasrc "$carrier" "$sidmainttype" "$infile" "$infileext" "$SDATE" "$EDATE" fi # collect into single mobile tmpfile cat "$stddetailfile" >>$mobcallsfile.tmp done if [ -f "$donedatafile" ]; then rm -f "$donedatafile" else # no import data files found echo "WARNING: No import data files found for ${billperiod}/${carrier}/${sidmainttype}" send_noimportdata_email fi # add in mobiles from config # to get 0 totals for mobiles without data or have no detail recs # hack if [ "$SDATE" = "01/07/2009" -o "$SDATE" = "01/08/2009" -o "$SDATE" = "01/09/2009" ]; then #if [ "$SDATE" = "01/07/2009" -o "$SDATE" = "01/08/2009" -o "$SDATE" = "01/09/2009" -o "$SDATE" = "01/10/2009" ]; then if [ "$carrier" = "OPTUSINSIGHTCDR" ]; then carrier="OPTUS" fi fi tmpmobcnf1="/tmp/tmpmobcnf1_$$" runisql 2>&1 <= "$SDATE") ) order by 1, 2, 3, 4, 5, 6; SQLCMD2 # add to collection cat "$tmpmobcnf1" >>$mobcallsfile.tmp rm -f "$tmpmobcnf1" } rm -f $mobcallsfile rm -f $mobcallsfile.tmp rm -f $mobcallsfile.tmp2 #------------------------------ # should modify this to use importdatatype table #domobcarrier AAPT "[tT][xX][tT]" domobcarrier TELSTRA "[dD][aA][tT]" Telstra #domobcarrier OPTUSINSIGHTCDR "[cC][sS][vV]" domobcarrier OPTUS "[bB][iI][lL]" Optus domobcarrier VODAFONE "[tT][xX][tT]" Vodafone #domobcarrier TELSTRABRSS "[zZ][iI][pP]" #cat < "${mobcallsfile}.tmp" >"${mobcallsfile}.tmp2" recalcmob "$billperiod" "$SDATE" "$EDATE" "${mobcallsfile}.tmp" "${mobcallsfile}.tmp2" #------------------------------ # sort mobile tmpfile and create outfile if [ -f "${mobcallsfile}.tmp2" ]; then sort "${mobcallsfile}.tmp2" >"$mobcallsfile" else # create empty output file cp /dev/null "$mobcallsfile" fi rm -f $mobcallsfile.tmp rm -f $mobcallsfile.tmp2 exit 0