الأخوة الأفاضل
السلام عليكم ورحمة الله وبركاته
هذا الإجراء يقوم يقوم بتوليد أرقام جديده يعني عداد كما هو واضح وأنا أستخدمه في شاشة فواتير لإضافة رقم جديد لكل فاتورة وتخزينها وهكذا..........
:wacko:
Private Sub Fatora()
Dim bill2 As Integer
Dim Rs2 As New ADODB.Recordset
Dim SQL2 As String
SQL2 = "SELECT * FROM INV_NO"
'MsgBox SQL1
Set Rs2 = db.Execute(SQL2)
If Rs2.EOF = False Then
Rs2.MoveFirst
Else
bill2 = 1
txtDocNo.Text = bill2
GoTo Fat
End If
bill2 = Rs2.Fields(0)
Do Until Rs2.EOF
If Rs2.EOF = True Then GoTo Fat
If bill2 > Rs2.Fields(0) Then
Rs2.MoveNext
Else
bill2 = (Rs2.Fields(0) + 1)
Rs2.MoveNext
End If
Loop
Rs2.Close
Set Rs2 = Nothing
Fat:
txtDocNo.Text = bill2
End Sub
ولكن أنا ليا ملاحظه وهي أن هذا المتغير (bill2 ) والذي من نوع integer توقف وأعطى خطأ عند وصوله إلى رقم (32767)
والسؤال هو أنني لا استطيع أن أعلن عن هذا المتغير كنوع integer لو كان عدد الفواتير أكبر من ذلك
والسؤال الثاني
ما هو نوع المتغير الأفضل في استخدامه لمثل هذا الأمر أو عندما يكون عدد الفواتير عندك كبير