Function
Process(ByVal StringFile As String) As String
'Windows.Forms.Application.DoEvents()
'TextBox1.Text =
"PROCESSING..."
'lblTimer.Text =
"Wait!"
'Declare some vars
Dim
ThisFileRecNum As Integer
= 1 'fires the sp_ before incrementing the count
Dim
FileCallsLD As Integer
= 0
Dim
FileSecsLD As Integer
= 0
Dim
FileCallsLocal As Integer
= 0
Dim
FileSecsLocal As Integer
= 0
Dim
RecCountEX As Integer
= 0
Dim strRaw As String
Dim
DirAsstFlag As Boolean
Dim TypeFlag
As Byte = 0 'LD = 1 , Local = 2, Exception = 3
Dim CallDate
As String = ""
Dim BillTime
As String = ""
'Establish
Database Access to get the FileID
Dim
objGConnection As New
SqlConnection
strConnection = ""
objGConnection.ConnectionString =
strConnection
objGConnection.Open()
'Set Up Command to
get the FileID
Dim
objGCommand As New
SqlCommand
objGCommand.CommandType =
CommandType.StoredProcedure
objGCommand.CommandText = "GetCCDRFileID"
objGCommand.CommandTimeout = 120
objGCommand.Connection = objGConnection
Dim
GetFileIdName As SqlParameter =
objGCommand.Parameters.Add("@getfileidname",
SqlDbType.VarChar, 50)
Dim FID As SqlParameter = objGCommand.Parameters.Add("@fid", SqlDbType.Int)
FID.Direction = ParameterDirection.Output
GetFileIdName.Value = lFileName
objGCommand.ExecuteNonQuery()
Dim ThisFID As Integer =
FID.Value
objGConnection.Close()
objGConnection = Nothing
objGCommand = Nothing
'Establish
Database Access to Update the filelog as processed
Dim
objUConnection As New
SqlConnection
strConnection = ""
objUConnection.ConnectionString =
strConnection
objUConnection.Open()
'Set Up Command To
Update the filelog as processed
Dim
objUCommand As New
SqlCommand
objUCommand.CommandType =
CommandType.StoredProcedure
objUCommand.CommandText = "UpdateCCDRFileLog"
objUCommand.CommandTimeout = 120
objUCommand.Connection = objUConnection
Dim
LogFileName As SqlParameter =
objUCommand.Parameters.Add("@logfilename",
SqlDbType.VarChar, 50)
Dim
lLDFileCalls As SqlParameter =
objUCommand.Parameters.Add("@lldfilecalls",
SqlDbType.Float)
Dim
lLDFileSecs As SqlParameter =
objUCommand.Parameters.Add("@lldfilesecs",
SqlDbType.Float)
Dim
lFileCalls As SqlParameter =
objUCommand.Parameters.Add("@lfilecalls",
SqlDbType.Float)
Dim
lFileSecs As SqlParameter =
objUCommand.Parameters.Add("@lfilesecs",
SqlDbType.Float)
Dim
lRecCountEX As SqlParameter =
objUCommand.Parameters.Add("@lreccountex",
SqlDbType.Float)
'FileSecs
converted to mins in the sp
'Establish
Database Access to insert the LD file data
Dim
objILDConnection As New
SqlConnection
strConnection = ""
objILDConnection.ConnectionString =
strConnection
objILDConnection.Open()
'Set Up Command to
insert the LD file data
Dim
objILDCommand As New
SqlCommand
objILDCommand.CommandType =
CommandType.StoredProcedure
objILDCommand.CommandText = "InsertCCDRTrafficLD"
objILDCommand.CommandTimeout = 120
objILDCommand.Connection = objILDConnection
Dim
iLDFileID As SqlParameter =
objILDCommand.Parameters.Add("@ldfileid",
SqlDbType.Int)
Dim iLDRecNum
As SqlParameter = objILDCommand.Parameters.Add("@ldrecnum", SqlDbType.Int)
Dim
iLDVendorID As SqlParameter =
objILDCommand.Parameters.Add("@ldvendorid",
SqlDbType.VarChar, 3)
Dim
iLDVendorDate As SqlParameter =
objILDCommand.Parameters.Add("@ldvendordate",
SqlDbType.VarChar, 10)
Dim
iLDVendorCharge As SqlParameter =
objILDCommand.Parameters.Add("@ldvendorcharge",
SqlDbType.SmallMoney)
Dim
iLDOrigCallDate As SqlParameter =
objILDCommand.Parameters.Add("@ldorigcalldate",
SqlDbType.DateTime)
Dim
iLDCallDuration As SqlParameter =
objILDCommand.Parameters.Add("@ldcallduration",
SqlDbType.VarChar, 11)
Dim
iLDBillingNumber As SqlParameter =
objILDCommand.Parameters.Add("@ldbillingnumber",
SqlDbType.VarChar, 10)
Dim iLDBTNST
As SqlParameter = objILDCommand.Parameters.Add("@ldbtnst", SqlDbType.Char, 2)
Dim
iLDOrigNumber As SqlParameter =
objILDCommand.Parameters.Add("@ldorignumber",
SqlDbType.VarChar, 16)
Dim
iLDTermNumber As SqlParameter =
objILDCommand.Parameters.Add("@ldtermnumber",
SqlDbType.VarChar, 16)
Dim
iLDTermST As SqlParameter =
objILDCommand.Parameters.Add("@ldtermst",
SqlDbType.Char, 2)
Dim
iLDRatePeriod As SqlParameter =
objILDCommand.Parameters.Add("@ldrateperiod",
SqlDbType.VarChar, 1)
Dim
iLDCallType As SqlParameter =
objILDCommand.Parameters.Add("@ldcalltype",
SqlDbType.TinyInt)
Dim
iLDPayphoneInd As SqlParameter =
objILDCommand.Parameters.Add("@ldpayphoneind",
SqlDbType.TinyInt)
Dim
iLDDirAsstInd As SqlParameter =
objILDCommand.Parameters.Add("@lddirasstind",
SqlDbType.TinyInt)
Dim
iLDServiceTypeInd As SqlParameter =
objILDCommand.Parameters.Add("@ldservicetypeind",
SqlDbType.TinyInt)
Dim
iLDProjectCodeInd As SqlParameter =
objILDCommand.Parameters.Add("@ldprojectcodeind",
SqlDbType.TinyInt)
Dim
iLDIndicator5 As SqlParameter =
objILDCommand.Parameters.Add("@ldIndicator5",
SqlDbType.VarChar, 1)
Dim
iLDIndicator6 As SqlParameter =
objILDCommand.Parameters.Add("@ldIndicator6",
SqlDbType.VarChar, 1)
Dim
iLDIndicator7 As SqlParameter =
objILDCommand.Parameters.Add("@ldIndicator7",
SqlDbType.VarChar, 1)
Dim
iLDIndicator8 As SqlParameter =
objILDCommand.Parameters.Add("@ldIndicator8",
SqlDbType.VarChar, 1)
Dim
iLDIndicator9 As SqlParameter =
objILDCommand.Parameters.Add("@ldIndicator9",
SqlDbType.VarChar, 1)
Dim
iLDInfoDigs As SqlParameter =
objILDCommand.Parameters.Add("@ldinfodigs",
SqlDbType.VarChar, 2)
Dim
iLDOrigCountryCode As SqlParameter =
objILDCommand.Parameters.Add("@ldorigcountrycode",
SqlDbType.VarChar, 3)
Dim
iLDTermCountryCode As SqlParameter =
objILDCommand.Parameters.Add("@ldtermcountrycode",
SqlDbType.VarChar, 3)
Dim
iLDProjectCode As SqlParameter =
objILDCommand.Parameters.Add("@ldprojectcode",
SqlDbType.VarChar, 16)
Dim iLDCCPin
As SqlParameter = objILDCommand.Parameters.Add("@ldccpin", SqlDbType.VarChar, 4)
Dim
iLDPrempID As SqlParameter =
objILDCommand.Parameters.Add("@ldprempid",
SqlDbType.Int)
Dim
iLDIntra1Inter0 As SqlParameter =
objILDCommand.Parameters.Add("@ldintra1inter0",
SqlDbType.Char, 1)
'Dim iLDProcessed
As SqlParameter = objILDCommand.Parameters.Add("@ldProcessed",
SqlDbType.TinyInt)
'Dim
iLDProcessDate As SqlParameter =
objILDCommand.Parameters.Add("@ldprocessdate", SqlDbType.DateTime)
'Establish
Database Access to insert the Local file data
Dim objIConnection
As New
SqlConnection
strConnection = ""
objIConnection.ConnectionString =
strConnection
objIConnection.Open()
'Set Up Command to
insert the Local file data
Dim
objICommand As New
SqlCommand
objICommand.CommandType =
CommandType.StoredProcedure
objICommand.CommandText = "InsertCCDRTrafficLocal"
objICommand.CommandTimeout = 120
objICommand.Connection = objIConnection
Dim iFileID As SqlParameter = objICommand.Parameters.Add("@fileid", SqlDbType.Int)
Dim iRecNum As SqlParameter = objICommand.Parameters.Add("@recnum", SqlDbType.Int)
Dim
iVendorID As SqlParameter =
objICommand.Parameters.Add("@vendorid",
SqlDbType.VarChar, 3)
Dim iEMIType
As SqlParameter = objICommand.Parameters.Add("@emitype", SqlDbType.VarChar, 6)
Dim
iFromNumber As SqlParameter =
objICommand.Parameters.Add("@fromnumber",
SqlDbType.VarChar, 10)
Dim
iToNumber As SqlParameter =
objICommand.Parameters.Add("@tonumber",
SqlDbType.VarChar, 10)
Dim
iVendorCharge As SqlParameter =
objICommand.Parameters.Add("@vendorcharge",
SqlDbType.SmallMoney)
Dim
iCallDate As SqlParameter =
objICommand.Parameters.Add("@calldate",
SqlDbType.DateTime)
Dim
iBillableTime As SqlParameter =
objICommand.Parameters.Add("@billabletime",
SqlDbType.VarChar, 10)
Dim
iMethOfRec As SqlParameter =
objICommand.Parameters.Add("@methofrec",
SqlDbType.VarChar, 2)
Dim
iReturnCode As SqlParameter =
objICommand.Parameters.Add("@returncode",
SqlDbType.VarChar, 2)
Dim
iRatePeriod As SqlParameter =
objICommand.Parameters.Add("@rateperiod",
SqlDbType.VarChar, 1)
Dim
iRateClass As SqlParameter =
objICommand.Parameters.Add("@rateclass",
SqlDbType.VarChar, 1)
Dim
iMessageType As SqlParameter = objICommand.Parameters.Add("@messagetype", SqlDbType.VarChar, 1)
Dim
iIndicator4 As SqlParameter =
objICommand.Parameters.Add("@Indicator4",
SqlDbType.VarChar, 1)
Dim
iIndicator7 As SqlParameter =
objICommand.Parameters.Add("@Indicator7",
SqlDbType.VarChar, 1)
Dim
iIndicator12 As SqlParameter =
objICommand.Parameters.Add("@Indicator12",
SqlDbType.VarChar, 1)
Dim
iIndicator14 As SqlParameter =
objICommand.Parameters.Add("@Indicator14",
SqlDbType.VarChar, 1)
Dim
iIndicator16 As SqlParameter =
objICommand.Parameters.Add("@Indicator16",
SqlDbType.VarChar, 1)
Dim
iIndicator19 As SqlParameter =
objICommand.Parameters.Add("@Indicator19",
SqlDbType.VarChar, 1)
Dim
iBillingNumber As SqlParameter =
objICommand.Parameters.Add("@billingnumber",
SqlDbType.VarChar, 10)
Dim iFromST As SqlParameter = objICommand.Parameters.Add("@fromst", SqlDbType.Char, 2)
Dim iToST As SqlParameter = objICommand.Parameters.Add("@tost", SqlDbType.Char, 2)
Dim
iSettCode As SqlParameter =
objICommand.Parameters.Add("@settcode",
SqlDbType.VarChar, 1)
Dim
iIndicator24 As SqlParameter =
objICommand.Parameters.Add("@Indicator24",
SqlDbType.VarChar, 1)
Dim
iCallFlag As SqlParameter =
objICommand.Parameters.Add("@callflag",
SqlDbType.Char, 2)
'********** SEE
EMI positions IN modUtil **************
'Open file to
output exceptions
FileOpen(1, "C:\Production\Choice\EX\"
& passedname & ".EX",
OpenMode.Binary.Output)
'Open the file to
read.
Dim sr As StreamReader
sr = File.OpenText("C:\Production\Choice\In\"
& passedname) 'file is (passedname)
'PROCESS FILE Read
each line in the file. When the end of the file is reached, return the value
"-1".
Try
'Start a loop
While
sr.Peek <> -1
'Read in
the first line
strRaw = sr.ReadLine()
Select
Case Mid(strRaw, 1, 6)
Case
"202401", "202402"
'HEADER
- TRAILER do nothing!
'
Print(1, strRaw & Chr(13) & Chr(10))
TypeFlag = 0
iCallFlag.Value = 0
'LD
TYPES **************************
Case
"010101", "100101"
'Message Telephone Service Charge, Billable/Unrated
'reg
LD - but if 88 = 4 then "Collect"
TypeFlag = 1 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 0
Case
"010201", "100201"
'OVERSEAS TERMINATED, Billable/Unrated
'INTERNATIONAL
TypeFlag = 1 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 0
'LOCAL
TYPES ***********************
Case
"010119", "100119"
'Billable/Unrated, NA Orig-Term-Billable, Class
Features
'CLASS
FEATURE
Select
Case Mid(strRaw, 75, 3) 'Type of CLASS Feature
Case
"095"
'auto recall - plays back number, date & time of last
call
iCallFlag.Value = 7
Case
"033"
'auto call back (keeps redialing until not busy)
iCallFlag.Value = 3
Case
"070"
'call trace
iCallFlag.Value = 5
Case
"018"
'three-way call
iCallFlag.Value = 8
Case
"052"
'selective call forwarding
iCallFlag.Value = 9
Case
"072"
'selective call rejection
iCallFlag.Value = 10
Case
"079"
'selective call acceptance
iCallFlag.Value = 11
Case
Else
iCallFlag.Value = 0
End
Select
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
Case
"010131", "100131"
'Billable/Unrated, NA Orig-Term-Billable, Local or
Message Unit Charge
'reg
LOCAL
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 0
Case
"010132", "100132"
'Billable/Unrated, NA Orig-Term-Billable, Dir Assist
Charge
'DIR
ASST
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 2 'DA
Case
"100118", "010118"
'010118, Specialized Service Provider Charge
'SPECIAL
SERVICE
Select
Case Mid(strRaw, 75, 3) '100118.Indicator24
Case
1
'relay service - nothing special
iCallFlag.Value = 0
Case
2
'three way call
iCallFlag.Value = 1
Case
3
'directory assistance call completion
iCallFlag.Value = 2
Case
Else
iCallFlag.Value = 0
End
Select
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
Case
"100116", "010116"
'010116, Information Provider Service Charge
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 4 'Provider Service Charge
Case
"100125", "010125"
'8XX call
TypeFlag = 2 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 6 '8XX
'010117,
Voice Message Charge
Case
Else ' set for Print
to Exception File 010117,100137
TypeFlag = 3 'LD = 1 , Local = 2, Exception = 3
iCallFlag.Value = 0 'nothing
End Select
'****************************************
'Process
the record based on the type flag
Select
Case TypeFlag
Case
0
'Do
nothing - header and trailer
Case
1 'LONG DISTANCE - LD = 1 , Local = 2, Exception = 3
'Set
the values for the LD Insert sp
iLDVendorID.Value = "ONE"
iLDVendorDate.Value =
Format(Now, "yyyy") & "/" & Format(Now, "MM")
iLDFileID.Value = ThisFID
iLDRecNum.Value = ThisFileRecNum
'Initalized at the Dim then incremented after the sp_
write
'not
in use
iLDIndicator6.Value = "0"
iLDIndicator7.Value = "0"
iLDIndicator8.Value = "0"
iLDIndicator9.Value = "0"
'Originating
ANI, Billing Number
iLDOrigNumber.Value =
Trim(Mid(strRaw, 15, 10)) 'OrigNumber
iLDBillingNumber.Value =
Trim(Mid(strRaw, 113, 10)) 'Billing Number
'Terminating
Number
Select
Case Mid(strRaw, 28, 2)
Case
"11" 'INTERNATIONAL
OVERFLOW
iLDTermNumber.Value
= Mid(strRaw, 30, 10) & Mid(strRaw, 25, 1)
Case
"12"
iLDTermNumber.Value
= Mid(strRaw, 30, 10) & Mid(strRaw, 25, 2)
Case
"13"
iLDTermNumber.Value
= Mid(strRaw, 30, 10) & Mid(strRaw, 25, 3)
Case
Else
iLDTermNumber.Value
= Trim(Mid(strRaw, 30, 10))
End
Select
'Set
the Orig & Term State
iLDBTNST.Value = Mid(strRaw,
133, 2)
If
iLDBTNST.Value & "" = "" Then
iLDBTNST.Value = "UU" 'Handle
empty returned results
End
If
iLDTermST.Value =
Mid(strRaw, 145, 2)
If
iLDTermST.Value & "" = "" Then
iLDTermST.Value = "UU" 'Handle
empty returned results
End
If
'check
THIS as money not string!
iLDVendorCharge.Value = 0.0
'not provided from Choice
'Date/Time
of Call
CallDate = Mid(strRaw, 9, 2)
& "/" & Mid(strRaw, 11, 2)
& "/" & Mid(strRaw, 7, 2)
CallDate = Trim(CallDate)
& " " & Mid(strRaw, 55, 2)
& ":" & Mid(strRaw, 57, 2)
& ":" & Mid(strRaw, 59, 2)
iLDOrigCallDate.Value =
CallDate
'Duration
using whole seconds for Traffic - will convert to mins at database write for
FileLog
BillTime = CInt(Mid(strRaw, 61, 4)) * 60 + CInt(Mid(strRaw, 65, 2))
iLDCallDuration.Value =
BillTime.ToString
'RatePeriod
(D/E/N)
iLDRatePeriod.Value =
DENCheck(CDate(CallDate))
'Not
in use for Choice - Qwest only
iLDPrempID.Value = "0"
'INTERNATIONAL
If
Mid(strRaw, 1, 6) = "010201" Or Mid(strRaw, 1, 6) = "100201"
Then
iLDIndicator5.Value = "1" 'International
Flag
Else
iLDIndicator5.Value = "0"
End
If
'Directory
Assistance is LOCAL
iLDDirAsstInd.Value = 0 'Not Dir Asst
'Service
Tyoe Indicator
iLDServiceTypeInd.Value = 0 '1+
'Call
Type
Select
Case Mid(strRaw, 149, 1)
Case
"6"
'Local But LD Intralata
iLDCallType.Value = "1"
iLDIntra1Inter0.Value = "1"
Case
"8"
'Intrastate1 Intracompany
iLDCallType.Value = "2"
iLDIntra1Inter0.Value = "0"
Case
"9"
'Intrastate2 Intercompany
iLDCallType.Value = "2"
iLDIntra1Inter0.Value = "0"
Case
"3"
'Intrastate3 Independent EC/Independent EC
iLDCallType.Value = "2"
iLDIntra1Inter0.Value = "0"
Case
"J"
'Interstate1 US to US
iLDCallType.Value = "3"
iLDIntra1Inter0.Value = "0"
Case
"G"
'Interstate2 Independent EC - as Alaska to Hawaii
iLDCallType.Value = "3"
iLDIntra1Inter0.Value = "0"
Case
"Q"
'Interstate3 US48 to Alaska,Hawaii,Puerto Rico...
iLDCallType.Value = "3"
iLDIntra1Inter0.Value = "0"
Case
"K"
'US and territories to Canada
iLDCallType.Value = "4"
iLDIntra1Inter0.Value = "0"
Case
"L"
'International1 US to non US NANP
iLDCallType.Value = "5"
iLDIntra1Inter0.Value
= "0"
Case
"R"
'International2 US to Mexico
iLDCallType.Value = "5"
Case
"N"
'International US OR CANADA to overseas should not be in
0101 records
iLDCallType.Value = "5"
iLDIntra1Inter0.Value = "0"
Case
"Z"
'NOT DETERMINED BY VENDOR - let Pegasus decide
iLDCallType.Value = "0"
iLDIntra1Inter0.Value = "0"
'*** Settlement Code Indicator Not yet used by
Constellation***
Case
"P"
'International Point/International Point
iLDCallType.Value = "0"
iLDIntra1Inter0.Value = "0"
Case
"7"
'Extended Area/Metro Service
iLDCallType.Value = "0"
iLDIntra1Inter0.Value = "0"
Case
"5"
'InterCanada - Canada to Canada
iLDCallType.Value = "0"
iLDIntra1Inter0.Value = "0"
End
Select
'Payphone
indicator TCARD Not in these types - 05????
'PayphoneInd
and INFODIGS
If
Mid(strRaw, 82, 1) > 0 Then
iLDPayphoneInd.Value = 1
iLDInfoDigs.Value = "27" 'using
for all payphone types
Else
' Not Payphone
iLDPayphoneInd.Value = 0
iLDInfoDigs.Value = "00"
End
If
iLDOrigCountryCode.Value = "001" 'USA
'not
provided in passable format
iLDTermCountryCode.Value = "000"
'Project
Code Indicator and Project Code - N/A for these types
iLDProjectCodeInd.Value = 0
iLDProjectCode.Value = "000000000000"
'CCPin
Would be in rec type ??50??
iLDCCPin.Value = "0000"
'Update
the LD Traffic Table
Try
objILDCommand.ExecuteNonQuery()
Catch
ex As Exception '
Catch the error.
MessageBox.Show(ex.ToString)
' Show friendly error
message
End
Try
'Increment
the counters for LD
FileCallsLD = FileCallsLD +
1
FileSecsLD = FileSecsLD + CInt(iLDCallDuration.Value)
'******************************************
Case
2 'LOCAL - LD = 1 , Local = 2, Exception = 3
'Set
the values for the Local Insert sp
iFileID.Value = ThisFID
iRecNum.Value =
ThisFileRecNum 'Initalized at the Dim then
incremented after the sp_ write
iVendorID.Value = "ONE"
iEMIType.Value = Mid(strRaw,
1, 6)
'8XX
check this below with file write
If
Mid(strRaw, 1, 6) = "010125" Or Mid(strRaw, 1, 6) = "100125"
Then
iFromNumber.Value =
Mid(strRaw, 113, 10)
iToNumber.Value =
Mid(strRaw, 30, 10)
iBillingNumber.Value =
Mid(strRaw, 113, 10)
Else
iFromNumber.Value =
Mid(strRaw, 15, 10)
iToNumber.Value =
Mid(strRaw, 30, 10)
iBillingNumber.Value =
Mid(strRaw, 113, 10)
End
If
'check
THIS as money not string!
iVendorCharge.Value = 0.0 'not provided from Choice
'Date/Time
of Call
CallDate = Mid(strRaw, 9, 2)
& "/" & Mid(strRaw, 11, 2)
& "/" & Mid(strRaw, 7, 2)
CallDate = Trim(CallDate)
& " " & Mid(strRaw, 55, 2)
& ":" & Mid(strRaw, 57, 2)
& ":" & Mid(strRaw, 59, 2)
iCallDate.Value = CallDate
'Billable
Time in seconds - Choice does not pass the tenths
BillTime = CInt(Mid(strRaw, 61, 4)) * 60 + CInt(Mid(strRaw, 65, 2))
iBillableTime.Value =
BillTime.ToString
iMethOfRec.Value =
Mid(strRaw, 68, 2)
iReturnCode.Value =
Mid(strRaw, 70, 2)
iRatePeriod.Value =
DENCheck(CDate(CallDate))
iRateClass.Value =
Mid(strRaw, 79, 1)
iMessageType.Value =
Mid(strRaw, 80, 1)
iIndicator4.Value =
Mid(strRaw, 85, 1)
iIndicator7.Value =
Mid(strRaw, 88, 1)
iIndicator12.Value =
Mid(strRaw, 93, 1)
iIndicator14.Value =
Mid(strRaw, 95, 1)
iIndicator16.Value =
Mid(strRaw, 97, 1)
iIndicator19.Value =
Mid(strRaw, 100, 1)
iFromST.Value = Mid(strRaw,
133, 2)
iToST.Value = Mid(strRaw,
145, 2)
iSettCode.Value =
Mid(strRaw, 149, 1)
iIndicator24.Value =
Mid(strRaw, 161, 1)
'Update
the Local Traffic Table
Try
objICommand.ExecuteNonQuery()
Catch
ex As Exception '
Catch the error.
MessageBox.Show(ex.ToString)
' Show friendly error
message
End
Try
'Increment
the counters for Local
FileCallsLocal =
FileCallsLocal + 1
FileSecsLocal =
FileSecsLocal + BillTime 'numeric
'*******************************************
Case
Else 'EXCEPTION - LD
= 1 , Local = 2, SHOULD BE - Exception = 3
'Write
the exceptions to a file
Print(1, strRaw & " " & ThisFileRecNum & Chr(13)
& Chr(10))
'MessageBox.Show("Found
new EMI type " & Mid(strRaw, 1, 6) & " - check the
files!")
RecCountEX = RecCountEX + 1
End Select
'TESTING
ACTUAL DATA FOR ANY EXCEPTIONS
'Checking
8XX and Collect calls
If
Mid(strRaw, 1, 6) = "010125" Or Mid(strRaw, 1, 6) = "100125"
Then
Print(1, strRaw & " " & ThisFileRecNum & Chr(13)
& Chr(10))
RecCountEX = RecCountEX + 1
End If
If
Mid(strRaw, 88, 1) = "4" Then
Print(1, strRaw & " " & ThisFileRecNum & Chr(13)
& Chr(10))
RecCountEX = RecCountEX + 1
End If
'Increment
the file record counter for the next record
ThisFileRecNum = ThisFileRecNum + 1
'Read the
next record
End While
Catch ex As Exception
MessageBox.Show(ex.ToString)
' Show friendly error message
Finally
'Close the
reader and the files
sr.Close()
FileClose(1)
'Update the
File Log
'set the
values for the update stored procedure
LogFileName.Value = lFileName
lLDFileCalls.Value = FileCallsLD
lLDFileSecs.Value = FileSecsLD 'convert to mins in the sp
lFileCalls.Value = FileCallsLocal
lFileSecs.Value = FileSecsLocal 'convert to mins in the sp
If
RecCountEX < 0 Then
RecCountEX = 0
End If
lRecCountEX.Value = RecCountEX
'fire the
stored procedure
objUCommand.ExecuteNonQuery()
'Kill
Connections And Objects
objUConnection.Close()
objUConnection = Nothing
objUCommand = Nothing
objILDConnection.Close()
objILDConnection = Nothing
objILDCommand = Nothing
objIConnection.Close()
objIConnection = Nothing
objICommand = Nothing
'Delete the
processed .txt file
'System.Threading.Thread.Sleep(10000)
End Try
End Function