منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
الترقيم التلقائي - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغات البرمجة الاخرى (http://vb4arb.com/vb/forumdisplay.php?fid=4)
+--- قسم : قسم لغة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=18)
+---- قسم : قسم أسئلة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=28)
+---- الموضوع : الترقيم التلقائي (/showthread.php?tid=47318)



الترقيم التلقائي - Abdellah - 16-10-23

السلام عليكم ورحمة الله
إخواني الاعزاء أريد تغيير بسيط في هاذا المثال المقتبس من السيد عبد العزيز البسكري والمطلوب 
 أن  في كل سنة يبتدئ  الترقيم التلقائي  بعدد(1) ثم 2 إلى آخر السنة وفي السنة الموالية يرجع من الاول  بعدد (1)  الخ…
جزاكم الله كل خير.



RE: الترقيم التلقائي - Taha Okla - 16-10-23

وعليكم السلام ورحمة الله وبركاته

قم بإستخدام هذا الكود ..
بدلاً من الكود المستخدم في المشروع المرفق ...

كود :
Sub LOAD_No_AUTO()
   Call ConnectionDatabase
   
   If RS.State = adStateOpen Then RS.Close
   
   RS.Open "Select Max(Id) As maxID  From [Users] Where Left(Id,2) = '" & Right(Year(Now), 2) & "'", DB, adOpenStatic, adLockOptimistic
   
   Dim max_NO As Long
   
  ' Y = Format(Now, "yyyy")
   If Not RS!maxID Then
      max_NO = Val(RS!maxID) + 1
   Else
      max_NO = Right(Year(Now), 2) & Format(1, "00000")
   End If
   
   Text1.Text = max_NO
   
 '  If max_NO = 0 Then
 '  Text1.Text = "PO-00000" & Val(1)
 '  Text1.Text = "PO-00000" & Val(1)
 '  Else
   
   'Text1.Text = "PO-00000" & Val(max_NO) + 1 & "-" & Y
   
 '  Text1.Text = "PO-00000" & Val(max_NO) + 1

  ' End If
End Sub



RE: الترقيم التلقائي - Abdellah - 16-10-23

أخي  طه كيف حالك شكرا على الرد وجزاك الله كل خير


RE: الترقيم التلقائي - Abdellah - 16-10-23

أخي طه فضلا وليس أمرًا أرجوك هل يمكنك أن تجعل Text1.text على هاذا الشكل (Reçu Nº1/2023) 
جزاك الله كل خير.


RE: الترقيم التلقائي - Taha Okla - 16-10-23

لم أعرف ماذا تقصد ...


RE: الترقيم التلقائي - Abdellah - 16-10-23

أقصد أخي طه حسب الكود الذي أعطيتني عندما أنقر على الزر فتكون رقم الفاتورة على هاذا الشكل 2300001 فالمطلوب يكون ترقيم الفتورة على هاذا الشكل Reçu N°1/2023 
إذاكان ممكن فأنا لا أؤريد أن اثقل عليك جزاك الله كل خير.


RE: الترقيم التلقائي - Taha Okla - 17-10-23

ما اختلف شي، نفس الكود مع تعديل بسيط ..
استخدم الكود التالي : 
كود :
Sub LOAD_No_AUTO()
   Call ConnectionDatabase
   
   If RS.State = adStateOpen Then RS.Close
   
   RS.Open "Select Count(Id) As CountID  From [Users] Where Right(Id,4) = '" & Year(Now) & "'", DB, adOpenStatic, adLockOptimistic
   
   Dim max_NO As String
   
   If Not RS!CountID Then
      max_NO = Format(Val(RS!CountID) + 1, "00000")
   Else
      max_NO = Format(1, "00000")
   End If
   
   Text1.Text = "Reçu N°" & max_NO & "/" & Year(Now)
   
End Sub


أو هذا الكود :

كود :
Sub LOAD_No_AUTO()
   Call ConnectionDatabase
   
   If RS.State = adStateOpen Then RS.Close
   
   RS.Open "Select Count(Id) As CountID  From [Users] Where Right(Id,4) = '" & Year(Now) & "'", DB, adOpenStatic, adLockOptimistic
   
   Dim max_NO As Long
   
   If Not RS!CountID Then
      max_NO = Val(RS!CountID) + 1
   Else
      max_NO = 1
   End If
   
   Text1.Text = "Reçu N°" & max_NO & "/" & Year(Now)
   
End Sub



RE: الترقيم التلقائي - Abdellah - 17-10-23

هاذا هو الذي يوفي بالغرض والمطلوب أخي طه شكرا جزيلا أحسن الله إليك وجزاك كل خير. Smile