I m having runtime time error 6 - overflow in the following code. Can anyone help me & sort out my problem.
Private Sub cmdSave_Click()
Dim intCounter As Integer
Dim rsData As New ADODB.Recordset
Dim intId As Integer
Dim blnOneOrTwo As Boolean
Dim intPurchId As Integer
If msfGrid.Rows <= 1 Then
MsgError ("No Purchases To Be Saved")
Exit Sub
End If
rsData.Open "Select Max(Id) as MaxId From PurchiMaster", Con, adOpenForwardOn ly, adLockReadOnly
If IsNull(rsData(" MaxId")) = True Then
intId = 1
Else
intId = Val(rsData("Max Id"))
End If
rsData.Close
rsData.Open "Select Max(PurchId) as MaxId From PurchiMaster", Con, adOpenForwardOn ly, adLockReadOnly
If IsNull(rsData(" MaxId")) = True Then
intPurchId = 0
ElseIf Val(rsData("Max Id")) = 0 Then
intPurchId = 0
Else
intPurchId = Val(rsData("Max Id"))
End If
rsData.Close
rsData.Open "PurchiMast er", Con, adOpenDynamic, adLockOptimisti c
Dim intVal As Integer
intVal = MsgBox("Confirm ", vbYesNoCancel)
'MsgBox intVal
If intVal = vbYes Then
blnOneOrTwo = One
ElseIf intVal = vbNo Then
blnOneOrTwo = Two
ElseIf intVal = vbCancel Then
Exit Sub
End If
With msfGrid
For intCounter = 1 To .Rows - 1
rsData.AddNew
intId = intId + 1
intPurchId = intPurchId + 1
rsData("Id") = intId
rsData("PurchId ") = intPurchId
rsData("Date") = Format(dtDate.V alue, "dd/mm/yyyy")
rsData("Party") = Trim(.TextMatri x(intCounter, 0))
rsData("PurchiN o") = Val(.TextMatrix (intCounter, 1))
rsData("Desc") = Trim(.TextMatri x(intCounter, 2))
rsData("Qty") = Val(.TextMatrix (intCounter, 4))
rsData("Units") = Trim(.TextMatri x(intCounter, 5))
rsData("Rate") = Val(.TextMatrix (intCounter, 6))
rsData("Amount" ) = Val(.TextMatrix (intCounter, 7))
'after stock updation
rsData("Desc2") = Trim(.TextMatri x(intCounter, 3))
rsData("ItemId" ) = Val(.TextMatrix (intCounter, 8))
'after stock updation
rsData("Type") = blnOneOrTwo
rsData.Update
Call InsertInPurchiS tock(blnOneOrTw o, intCounter, intId)
Next
End With
'rsData.CancelU pdate
rsData.Close
ButtonValue = None
Call Clear(Me)
msfGrid.Rows = 1
Call EditMode(False)
Set rsData = Nothing
dtDate.SetFocus
End Sub
Private Sub cmdSave_Click()
Dim intCounter As Integer
Dim rsData As New ADODB.Recordset
Dim intId As Integer
Dim blnOneOrTwo As Boolean
Dim intPurchId As Integer
If msfGrid.Rows <= 1 Then
MsgError ("No Purchases To Be Saved")
Exit Sub
End If
rsData.Open "Select Max(Id) as MaxId From PurchiMaster", Con, adOpenForwardOn ly, adLockReadOnly
If IsNull(rsData(" MaxId")) = True Then
intId = 1
Else
intId = Val(rsData("Max Id"))
End If
rsData.Close
rsData.Open "Select Max(PurchId) as MaxId From PurchiMaster", Con, adOpenForwardOn ly, adLockReadOnly
If IsNull(rsData(" MaxId")) = True Then
intPurchId = 0
ElseIf Val(rsData("Max Id")) = 0 Then
intPurchId = 0
Else
intPurchId = Val(rsData("Max Id"))
End If
rsData.Close
rsData.Open "PurchiMast er", Con, adOpenDynamic, adLockOptimisti c
Dim intVal As Integer
intVal = MsgBox("Confirm ", vbYesNoCancel)
'MsgBox intVal
If intVal = vbYes Then
blnOneOrTwo = One
ElseIf intVal = vbNo Then
blnOneOrTwo = Two
ElseIf intVal = vbCancel Then
Exit Sub
End If
With msfGrid
For intCounter = 1 To .Rows - 1
rsData.AddNew
intId = intId + 1
intPurchId = intPurchId + 1
rsData("Id") = intId
rsData("PurchId ") = intPurchId
rsData("Date") = Format(dtDate.V alue, "dd/mm/yyyy")
rsData("Party") = Trim(.TextMatri x(intCounter, 0))
rsData("PurchiN o") = Val(.TextMatrix (intCounter, 1))
rsData("Desc") = Trim(.TextMatri x(intCounter, 2))
rsData("Qty") = Val(.TextMatrix (intCounter, 4))
rsData("Units") = Trim(.TextMatri x(intCounter, 5))
rsData("Rate") = Val(.TextMatrix (intCounter, 6))
rsData("Amount" ) = Val(.TextMatrix (intCounter, 7))
'after stock updation
rsData("Desc2") = Trim(.TextMatri x(intCounter, 3))
rsData("ItemId" ) = Val(.TextMatrix (intCounter, 8))
'after stock updation
rsData("Type") = blnOneOrTwo
rsData.Update
Call InsertInPurchiS tock(blnOneOrTw o, intCounter, intId)
Next
End With
'rsData.CancelU pdate
rsData.Close
ButtonValue = None
Call Clear(Me)
msfGrid.Rows = 1
Call EditMode(False)
Set rsData = Nothing
dtDate.SetFocus
End Sub
Comment