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

+- منتدى فيجوال بيسك لكل العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة (/showthread.php?tid=25029)

الصفحات: 1 2


كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - mram3242 - 20-05-18

كيف يمكنني إعداد ترقيم تلقائي مثلا : 0012 / شهر 1 / 2018 
وفي كل بداية سنة جديدة يبدا الترقيم من البداية مثلا 00001/ شهر 1 / 2019


RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - elgokr - 21-05-18

قم بعمل عمود بداخ الجدول مخصص لـ رقم العام يصبح ما يكتب بداخله (2018 , 2019 .... الخ) (اختيارى)
ومن ثم قم بعمل IF للتحقق من العام الحالى مع اخر قيمة مدخلة فى قاعدة البيانات لهذا العمود
ومن ثم مجلد IF اخر يقوم بالتحقق برقم ID لاخر اضافة بالجدول اذا كان يبداء بـ 2018 على ان الرقم (20180510007)
حيث ان الترتيب (20180510007) - (2018) يدل على العام - (05) الاشهر - (10007) وهو رقم التسلسل.
من ثم تقوم بانشاء رقم تسلسلى وليكن (20180100001) للمرة الاولى ومن ثم تجعل ادخال الـ ID تلقائي
حيث سيقوم قاعدة البيانات اعادة اخد اخر رقم وقيام اضافة +1 فى كل مرة عند الادخال

ما قمت بكتابته ما هو الا طريقة لفكرة تبنى عليها ما تريده
الطرق كثيرة ويمكن استخدام ما تشاء من افكار

تحياتى لك
تمنياتى لك التوفيق



RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - sendbad100 - 21-05-18

السلام عليكم

انظر الموضوع التالي قد يفيدك


http://vb4arb.com/vb/showthread.php?tid=23118



RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - عبد العزيز البسكري - 21-05-18

السّلام عليكم و رحمة الله و بركاته
إضافة لما تفضّل به أخي الكريم الغالي " SENDBAD100 " ..بارك الله فيه و له و جزاه خير الجزاء
لمسة من لمسات أخي الكريم " حريف برمجة " .. بارك الله فيه .. تفي بنسبة 80 بالمئة بالغرض .. ما يهمك الكود الثاني للتسلسل السنوي فقط بقي أن تضيف الشهر
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   If MsgBox("هل تريد إضافة سجل جديد ؟ ", MsgBoxStyle.Exclamation + MsgBoxStyle.MsgBoxRight + MsgBoxStyle.OkCancel, "تنبيه") = MsgBoxResult.Cancel Then Exit Sub
   Using Command As New OleDbCommand("SELECT MAX(IDD) FROM SCHOOL", Con)
       If Con.State = ConnectionState.Closed Then Con.Open()
       If Command.ExecuteScalar Is DBNull.Value Then
           Call SetState("Add")
           InfoBookmark = InfoManager.Position
           InfoManager.AddNew()
           TextBox1.Text = 1
           Call Show_New_Year()
           TextBox3.Focus()
       Else
           Call SetState("Add")
           InfoBookmark = InfoManager.Position
           InfoManager.AddNew()
           TextBox1.Text = Command.ExecuteScalar().ToString() + 1
           Call Show_New_Year()
           TextBox3.Focus()
       End If
       Con.Close()
   End Using
End Sub
Sub Show_New_Year()
   If Date.Now.Month = 1 And Date.Now.Day = 1 Then
       TextBox2.Text = Date.Now.Year & " - " & "0001"
       Exit Sub
   End If
   Dim dp As New OleDbDataAdapter("SELECT TOP 1 NEW_YEAR FROM SCHOOL ORDER BY NEW_YEAR DESC", Con)
   Dim dt As New DataTable
   dp.Fill(dt)
   If dt.Rows.Count = 0 Then
       TextBox2.Text = Date.Now.Year & " - " & "0001"
   Else
       Dim idall As String = dt.Rows(0)(0).ToString
       idall = Replace(idall, " - ", "-")
       Dim strArr() As String = idall.Split("-")
       TextBox2.Text = Date.Now.Year & " - " & Val(strArr(1) + 1).ToString("0000")
   End If
End Sub

تحياتي



RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - mram3242 - 21-05-18

اشكركم كلكم بارك الله فيكم الله يستركم دنيا واخره


RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - حريف برمجة - 21-05-18

مرحبا ،،

اخي عبدالعزيز هل قمنا بمعالجة مشكلة لو تم اضافة سجل في سنة جديدة بعد تاريخ يوم 1 شهر 1 ؟

الكود يتحقق في يوم 1 من الشهر 1 ينفذ كود السنة الجديدة ،،

مثال :

لو لم يتم تشغيل التطبيق في يوم 1 من الشهر 1 مثلاً صادف سبت و أحد اجازة نهاية الاسبوع ،،

ويوم الاثنين صادف يوم 3 من الشهر 1 ،،،،، هنا مشكلة لن يتم تنفيذ كود السنة الجديدة ،، وسوف يعمل العداد على السنة القديمة .

اتمنى انك تراجع الموضوع هل قمنا بعلاج هذي الملاحظة او لا ،، وبالتوفيق للجميع .


RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - عبد العزيز البسكري - 21-05-18

السّلام عليكم و رحمة الله و بركاته
رمضان كريم أخي و أستاذي الحبيب الغالي " حريف برمجة "
كل سنة و أنت طيّب .. كل سنة و أنت إلى الله أقرب و عقبال رمضان لسنين عديدة إن شاء الله
أخي الكريم ..
بصراحة وجدت هذا الكود هنا بالمنتدى بموضوعين مختلفيْن .. و لم يتم معالجة الأمر الذي تحدثت عنه
عن نفسي .. أنا أستعمل هذا الكود بصفة دائمة بكل ملفاتي .. و هي طبعا غير رسمية و أعرف كيف أتصرف معها بمشكلتين أساسيتين ..
1 - لو ملأت قاعدة البيانات يدويا مثلا و بتسلسل رقمي عادي بدون هذا الكود ..
ثم خطر ببالي إضافة هذا الكود .. سينتج خطأ فادح و سيتم غلق البرنامج
طبعا ملفاتي غير رسمية ولو أردت إضافة هذا الكود للتسلسل السنوي .. أقوم بمسح بيانات الجدول كلها و أعتمد الكود من جديد
2 - الإشكالية التي تكلمت عنها الآن .. و قد تخيلت نتائجها
أتمنى فعلا معالجة الأمر ليتم إعتماد الكود الرائع بدون أي إلتباسات
و شكرا سلفا
تحياتي



RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - حريف برمجة - 21-05-18

مرحبا مره أخرى اخي عبدالعزيز ،، ولك بالمثل وأكثر حتى ترضى ،، وشكراً على دعواتك لي

بخصوص الخطأ لن يحدث إلا في الحالة التي تكلمت عنها انا فقط .

بمعنى حالتك لو قمت بادخال الترقيم يدوي عادي لن يحدث خطأ اذا التزمت بتنسيق الترقيم السنوي .

بالنسبة للحل سوف ازودك به عندما اهدأ شوي واكون مهيأ لاستنتاج الحل .


RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - عبد العزيز البسكري - 21-05-18

ربّنا يهدّيء سرّك أخي الكريم إن شاء الله
إلى ذلك الحين .. بارك الله فيك و لك و جزاك خير الجزاء
تحياتي



RE: كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة - ahmedmansour - 21-05-18

https://www.youtube.com/watch?v=6nt1zhmh9_s&index=4&list=PLdI8JH1ubsUCplcTTD0g2Md5lR3RgOTyQ
راجع هذا الدرس