تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] ترقيم تلقائي لحقل
#1
بسم الله الرحمن الرحيم
السلام عليكم
لدي قاعدة بيانات في 3 انواع من السندات ( قبض-صرف-قيد) وعملت  3 فورم لأدخال البيانات وحفظها في قاعدة البيانات
المطلوب  عملت حقل تكست (للترقيم) علما ان حقل الترقيم في قاعدة البيانات من نوع text
وهناك ليبل لأسم السند ... اريد ترقيم تلقائي لرقم السند استنادا" لأسم السند في الليبل
يعني  سند قبض يبدأ من 1  وهكذا تصاعديا
وكذلك  بالنسبة للصرف من 1 ويتصاعد
ولسند القيد كذلك


شكرا  لكم  وصياما  مقبولا



وما نيل المطالب  بالتمني ,,,

لكن تأخذ الدنيا غلابا ........................


الرد
تم الشكر بواسطة:
#2
سلام

اقنرح عليك عمل ثلاث جداول اي جدول قبض وجدول صرف وجدول قيد لكن الاهم من اقتراحي سؤال اختصاصي محاسبه

موفقين
متغيب
الرد
تم الشكر بواسطة:
#3
استادي العزيز
اشكر  تفهمك ... أنا أعمل في مجال المحاسبة ولم انخصص ببرامج المحاسبة
أهوى عمل  برامج بالدوت  نت ... قاعدة بياناتي عبارة  عن  جدول يومية daily
أخزن فيه  كل  المعلومات المستندية ,, وهناك  دليل محاسبي (ليس نظام محاسبي موحد)
أقرب للدليل  الحكومي  ايرادات _ نفقات _ موجودات _ مطلوبات ...
وجدول  لمراكز الكلفة (( هناك  مؤسسات تستلم التخصيصات المالية))
وجدول بأسماء المستلمين ((اصحاب الذمم المالية)) لكي  يتم تسوية ذممهم المالية

هذه فكرة  بسيطة عن  المطلوب .. وأتمنى  أن  تتحفني بأفكارك ,,



وما نيل المطالب  بالتمني ,,,

لكن تأخذ الدنيا غلابا ........................


الرد
تم الشكر بواسطة:
#4
سلام

انا لا افهم في نظام المحاسبه
ولكن جداول قاعده البيانات يقبل فقط حقل واحد ترقيم تلقائي
لكن ممكن مثلا نعمل جدول ثاني يكون فيه ثلاث حقول رقميه تتحدث في كل مره نحفظ فيه
يعني تكون الحقول للجدول الثاني (قبض، صرف، قيد)
ولما نريد حفظ بيانات صرف جديد نقوم بالتالي
اولا نقرا حقل صرف في الجدول الثاني عشان نعرف فين وصل الرقم
ثانيا نزيد واحد ونحفظ البيانات في الجدول الاول
ثالثا نقوم بتحديث حقل صرف في الجدول الثاني بالرقم الجديد

هذه مجرد فكره ويمكن يكون عند بقيه الاعضاء افكار عمليه اكثر

موفقين
متغيب
الرد
تم الشكر بواسطة:
#5
شكرا لكم أخي وسأبحث عسى ان أجد حل
هناك دالة dmax بالأكسس تفيد بأضافة ترقيم ,, غير حقل الترقيم التلقائي



وما نيل المطالب  بالتمني ,,,

لكن تأخذ الدنيا غلابا ........................


الرد
تم الشكر بواسطة:
#6
سلام

شوف هذه الطريفه بعد قلت حكاية الدالة max
كود :
' sarfID صرف
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    cnn.Open()

    Dim cmd As New OleDb.OleDbCommand
    cmd.Connection = cnn

    ' خطوة قراءة اعلى قيمة
    cmd.CommandText = "SELECT MAX(sarfID) FROM [tb]"
    Dim max As Integer = 0
    On Error Resume Next ' احتياط لما يكون ما سطر عشان يقرا قيمه
    max = cmd.ExecuteScalar
    On Error GoTo 0

    ' خطة الاضافه
    cmd.CommandText = "INSERT INTO [tb] ( [fname], [sarfID] ) VALUES ( @fname, @sarfID ) "
    cmd.Parameters.AddWithValue("@fname", TextBox1.Text)
    cmd.Parameters.AddWithValue("@sarfID", max + 1)
    Dim rsult As Integer = cmd.ExecuteNonQuery()

    cnn.Close()

    cmd.Dispose()

    If rsult > 0 Then
        MsgBox("نجاح")
    Else
        MsgBox("فشل")
    End If

End Sub

' gabdID قبض
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

    cnn.Open()

    Dim cmd As New OleDb.OleDbCommand
    cmd.Connection = cnn

    ' خطوة قراءة اعلى قيمة
    cmd.CommandText = "SELECT MAX(gabdID) FROM [tb]"
    Dim max As Integer = 0
    On Error Resume Next ' احتياط لما يكون ما سطر عشان يقرا قيمه
    max = cmd.ExecuteScalar
    On Error GoTo 0

    ' خطة الاضافه
    cmd.CommandText = "INSERT INTO [tb] ( [fname], [gabdID] ) VALUES ( @fname, @gabdID ) "
    cmd.Parameters.AddWithValue("@fname", TextBox1.Text)
    cmd.Parameters.AddWithValue("@gabdID", max + 1)
    Dim rsult As Integer = cmd.ExecuteNonQuery()

    cnn.Close()

    cmd.Dispose()

    If rsult > 0 Then
        MsgBox("نجاح")
    Else
        MsgBox("فشل")
    End If

End Sub

' qaydID قيد
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

    cnn.Open()

    Dim cmd As New OleDb.OleDbCommand
    cmd.Connection = cnn

    ' خطوة قراءة اعلى قيمة
    cmd.CommandText = "SELECT MAX(qaydID) FROM [tb]"
    Dim max As Integer = 0
    On Error Resume Next ' احتياط لما يكون ما سطر عشان يقرا قيمه
    max = cmd.ExecuteScalar
    On Error GoTo 0

    ' خطة الاضافه
    cmd.CommandText = "INSERT INTO [tb] ( [fname], [qaydID] ) VALUES ( @fname, @qaydID ) "
    cmd.Parameters.AddWithValue("@fname", TextBox1.Text)
    cmd.Parameters.AddWithValue("@qaydID", max + 1)
    Dim rsult As Integer = cmd.ExecuteNonQuery()

    cnn.Close()

    cmd.Dispose()

    If rsult > 0 Then
        MsgBox("نجاح")
    Else
        MsgBox("فشل")
    End If

End Sub

موفقين
متغيب
الرد
تم الشكر بواسطة:
#7
بحمد الله رفع الملف

بسم الله الرحمن الرحيم
رفعت الملف لكم استادي العزيز
قاعدة البيانات فيها جداول ,, الرئيسي الذي يخزن  هو daily
عملت فيه 3 حقول ترقيم لسند الصرف وسند القبض وسند قيد id_s  , id_kh  , id_k
وهناك ترقيم رئيس  تلقائي ,,, والحقول كلها من نوع text  لضرورة  الحفظ في القاعدة
في  نموذج سند الصرف وسند القبض  عملت  زر جديد  ودرجت الكود  الي اعطيتوه  لي
لم  يتغير ,, برجاء  التعديل ,, وعند الأضافة بعد الحفظ  يتم  تفريغ  محتويات الفورم  لنبدأ بسند جديد

كما وأرجو  منكم  ترتيب الكودات  وان  كانت  هناك  طريقة  اسهل  أرجو اعلامي
كما وأرجو اعلامي  عن  طريقة  حفظ  الكودات  في module  لأختصار  الكودات  وكيفية  الحفظ  وما الكودات التي  تحفظ فيه

لبيان ارائكم بصدد المشروع  وإفادتي  لطفا ... فانا  اريد  عمل  تقارير  وطباعة  المستندات

وفقكم الله  وتقبل  منكم  صيامكم


الملفات المرفقة
.rar   hesabat.rar (الحجم : 1.04 م ب / التحميلات : 79)



وما نيل المطالب  بالتمني ,,,

لكن تأخذ الدنيا غلابا ........................


الرد
تم الشكر بواسطة:
#8
من ناحية الترقيم التلقائي ...
اقترح ان تستخدم عمود من نوع ترقيم تلقائي ويكون مفتاح اساسي.
او
اذا اردت ان تستخدم طريقة مخصصة فاستخدم توليد رقم عشوائي  وتكتب دالة تفحص هل الرقم المولد موجود سابقا ام لا.

او انظر للمرفق



الملفات المرفقة
.zip   MyAutoNumber.zip (الحجم : 278.37 ك ب / التحميلات : 80)
الرد
تم الشكر بواسطة:
#9
استاد سعود المحترم
كل عام وانتم بخير ورمضان كريم
للأسف أعمل على فجوال 2010 ولم يعمل عندي الملف المرفق لكم
طمعي بأرشادي حول النهج الصحيح للمشروع وترتيب الأكواد وكيف أجعلها في modu el لتفادي تكرار الكودات
شكرا جزيلا لكم



وما نيل المطالب  بالتمني ,,,

لكن تأخذ الدنيا غلابا ........................


الرد
تم الشكر بواسطة:
#10
حل مشكلة اختلاف الاصدار
https://www.youtube.com/watch?v=HI36kZbbNUc
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] ايقاف البرنامج تلقائي بعد فترة ثلاث ايام من الانتاج soloxocf1 8 499 27-01-19, 01:40 AM
آخر رد: ابو ليلى
  اريد ترقيم الداتا جريد فيو سمير جمال 6 332 15-11-18, 01:32 PM
آخر رد: عبدالله الدوسري
  كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة mram3242 11 844 30-10-18, 01:34 AM
آخر رد: DOX.1
  ترقيم ذكي DOX.1 2 219 29-10-18, 06:33 PM
آخر رد: elgokr
  كيف اجعل حقل الداتا قريد احتواء تلقائي aftfm 1 201 06-10-18, 10:27 PM
آخر رد: rnmr
  كيف يُمكن إجراء نسخ تلقائي لقاعدة البيانات كل يوم بملف خارج المشروع؟ Hazem1 14 778 23-09-18, 10:19 PM
آخر رد: elgokr
  [كود] كود يجعل الكابتشا تعمل تلقائي في البرنامج gaber122 4 439 11-08-18, 01:34 AM
آخر رد: elgokr
Wink [سؤال] طلب كود يجعل الكابتشا تعمل في البرنامج تلقائي gaber122 3 278 10-08-18, 04:33 AM
آخر رد: sendbad100
  بحث عن ملف بصيغة معينة في الجهاز و تشغيله تلقائي YousefOkasha 0 273 25-06-18, 09:35 PM
آخر رد: YousefOkasha
  ترقيم التقائي حسب ما اختاره من الكومبو حافظ حافظ 2 269 20-05-18, 02:42 AM
آخر رد: حافظ حافظ

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم