الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مش عارف اعمل كوبي لسجلات بين الجداول

مغلق
بدأه sameh_ibm في 4 مايو 2006 · 5 رد · 589 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

يا جماعة انا بسأل اسئلة كتير اوي ومحدش بيجاوب ولا بيرد عليا مش عارف في ايه هو انا الأسئلة اللي بسألها مش مفهومة ولا هي صعبة اوي للدرجة ان مفيش اي حد يرد عليها

انا سؤالي دلوقتي هو التالي

عاوز اعمل كوبي لسجل من جدول الي جدول اخر نيجي بقي لشرح الموضوع

انا دلوقتي عندي فورمة بتتعامل مع جدولين عن طريق مفتاحين

المفتاح الأول او الزر الأول يدعي " بحث "

المفتاح التاني يدعي " تعديل "

وعندي علي الفورمة 3 اوبشن بتنز OPTION BUTTONS

دلوقتي انا عاوز اعمل بحث علي سجل معين وليكن مثلا سجل 12 ولنفرض ان حالة الأوبشن الأول كانت نشطة اي true واريد تعديل هذه الحالة الي اخيتار الأوبشن التاني مع حفظ دلك التغير وعمل نسخ للسجل الذي تم فيه التعديل من الجدول الرئيسي للجدول الفرعي

مشكلتي هي الآتي اني بعمل كوبي وفعلا بيعمل كوبي للسجلات ولكن المؤشر للسجلات يقف علي سجل واحد فقط ولا يعمل كوبي الا لهذا السجل كيف احل تلك المشكلة

شرح اوضح علشان تفهموا الحالة كويس

البرنامج اللي انا بعمله بيتناول الشيكات و 3 اوبشن يعبروا عن 3 حالات للشيك

1 ان الشيك تم تحصيله

2 ان الشيك لم يتم تحصيله

3 ان الشيك مرتجع ومرفوض

المطلوب عندما ابحث عن الشيك تظهر بياناته علي التكستات وخلافه علي الفورم ولنفرض ان حالة الشيك كانت لم يتم تنحصيله

واريد ان اعدل هذه الحالة الي انه تم تحصيله اي تعديل من اختيار واحد الي اخيتار 2 مع عمل كوبي للسجل المعدل كم الجدول الرئيسي الي الجدول الفرعي بقيمة التعديلات مع العلم انه يتم البحث تحت المفتاح بحث ويتم عمل التعديل تحت مفتاح التعديل اي انه هناك 2 مفتاح command buttons

ارجوا ان اكون وضحت المشكلة وارجو ردا سريعا لإني سوف اسلم البرنامج خلال ايام معدودة وشكرا لكم

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

vipersig.jpg

المحاسب

سامح إبراهيم عبداللطيف

sameh_ibm@hotmail.com

SAMHOOON

#2

السلام عليكم اخي سامح

كل شي له حل ولا في اي شي صعب بالفيجول ان شاء الله

بس راح اتعبك معي واقول لك ضع مثال للسؤال حقك علشان نقدر يتم التعديل عليه

مع العلم اني مررت بموضوع مشابه للموضوع حقك هذا

ضع المثال وان شاء الله تجد الحل

:)

#3

مينفعش احط مثالي لإني مش مشفر الأكواد بتاعي بس كمان البرنامج ده تجاري يعني هتاجر فيه بس ممكن اقلك انا عملت ايه وادي الكود اللي انا كتبته انا وصلت للحل يا باشا ولكن عندي مشكلة تانية

اني دلوقتي انا بتعامل مع 3 جداول للـ 3 حالات فأنا عاوز انه لو عدل سجل في جدول مينفعش انه يعدله تاني في اي من الجدولين التانيين وادي الكود اهه ويارب اكون فهمتك اللي انا انا عاوزه من الكود

Private Sub Command10_Click()

Dim rs10 As New ADODB.Recordset

Dim rs20 As New ADODB.Recordset

Dim rs30 As New ADODB.Recordset

Dim rs40 As New ADODB.Recordset

rs20.CursorLocation = adUseClient

rs20.LockType = adLockOptimistic

rs10.Open "exports", cn, adOpenDynamic

rs20.Open "credits", cn, adOpenDynamic

rs20.Find "num='" + Text5.Text + "'"

If rs20.EOF Then

GoTo 50

Else

MsgBox "ÚÝæÇ áÞÏ ÞãÊ ÈÊÚÏíá åÐÇ ÇáÓÌá ãä ÞÈá", vbCritical, "ÎØÃ"

Exit Sub

End If

50 rs20.AddNew

rs10.MoveFirst

rs10.Find "num='" + Text5.Text + "'"

If Option3.Value = True Then

rs20("name") = rs10("name")

rs20("num") = rs10("num")

rs20("kind") = rs10("kind")

rs20("money") = rs10("money")

rs20("draw") = rs10("draw")

rs20("tdate") = rs10("tdate")

rs20("crdate") = d3.Value

rs20("city") = rs10("city")

rs20.Update

MsgBox "Êã ÇáäÚÏíá ÈäÌÇÍ æÌÇÑí ÇáÊÍÏíË ááÓÌáÇÊ"

End If

rs30.CursorLocation = adUseClient

rs30.LockType = adLockOptimistic

rs30.Open "debit", cn, adOpenDynamic

rs30.Find "num='" + Text5.Text + "'"

If rs30.EOF Then

GoTo 60

Else

MsgBox "ÚÝæÇ áÞÏ ÞãÊ ÈÊÚÏíá åÐÇ ÇáÓÌá ãä ÞÈá", vbCritical, "ÎØÃ"

Exit Sub

End If

60 rs30.AddNew

If Option4.Value = True Then

rs30("name") = rs10("name")

rs30("num") = rs10("num")

rs30("kind") = rs10("kind")

rs30("money") = rs10("money")

rs30("draw") = rs10("draw")

rs30("tdate") = rs10("tdate")

rs30("city") = rs10("city")

rs30.Update

MsgBox "Êã ÇáäÚÏíá ÈäÌÇÍ æÌÇÑí ÇáÊÍÏíË ááÓÌáÇÊ"

End If

rs40.CursorLocation = adUseClient

rs40.LockType = adLockOptimistic

rs40.Open "refuse", cn, adOpenDynamic

rs40.Find "num='" + Text5.Text + "'"

If rs40.EOF Then

GoTo 70

Else

MsgBox "ÚÝæÇ áÞÏ ÞãÊ ÈÊÚÏíá åÐÇ ÇáÓÌá ãä ÞÈá", vbCritical, "ÎØÃ"

Exit Sub

End If

70 rs40.AddNew

If Option5.Value = True Then

rs40("name") = rs10("name")

rs40("num") = rs10("num")

rs40("kind") = rs10("kind")

rs40("money") = rs10("money")

rs40("draw") = rs10("draw")

rs40("tdate") = rs10("tdate")

rs40("rfdate") = d3.Value

rs40("city") = rs10("city")

rs40.Update

MsgBox "Êã ÇáäÚÏíá ÈäÌÇÍ æÌÇÑí ÇáÊÍÏíË ááÓÌáÇÊ"

End If

Exit Sub

End Sub

vipersig.jpg

المحاسب

سامح إبراهيم عبداللطيف

sameh_ibm@hotmail.com

SAMHOOON

#4

السلام عليكم

اخي العزيز

انا مو قصدي حط البرنامج بتاعك انا ا قول لك ضع مثال مكون من فورم واحد فقط وفيه الكود والشكل الذي تريده

حتى استطيع التعديل عليه

وفي الوقت الذي اخذ فيه الكود الخاص بك واضعه على قاعدة بيانات واقوم بوضع حقول مطابقة وجداول مطابقة يأخذ علي وقت كثير والوقت اذا كان لديك لا يهم فهو بنسبة لي يهم

انتظر منك المثال الخاص بك وليس البرنامج

:) ولك اطيب تحيات

#5

السلام عليكم

أخ سامح ان شاء الله الحل بسيط

ياريت تبدأ حضرتك معايا في اتباع الخطوات التالية

أولا : افتح قاعدة البيانات وضيف حقل وخلي اسمه وليكن edit

ثانيا : في كل مرة تضيف سجل جديد في الجدول يجب انك تضيف القيمة Free في داخل الحقل المسمى edit

ثالثا : في كل مرة نقوم بتعديل أي سجل يجب تعديل قيمة حقل الـ edit ونضع فيه القيمة edited بدلا من Free

نيجي للخطوة الأخيرة

نفرض ان زر التعديل عندك اسمه EditButton

ربما يكون عندك أزرار للتنقل بين البيانات وعرضها على التكستات وبالتأكيد عندك زر للبحث

هنيجي تحت كل زرار منهم ونكتب كود زي ده

If RS("edit") = "edited" Then

EditButton.Enabled = False

Else

If RS("edit") = "Free" Then

EditButton.Enabled = True

End If

End If

ملاحظة :

يجب وضع الكود السابق بعد كود التنقل بين السجلات وبعد كود البحث

وبالتالي هتكون النتيجة انك لما تفتح أي جدول من الجداول الاخرى وتبدأ في التنقل بين البيانات اللي فيه هتلاقي ان اي سجل تم تعديله قبل ذلك في لا يمكن تعديله مرة أخرى لأن زر التعديل سوف يتم إيقافه

أتمنى انك تكون فهمت الفكرة واذا عندك أي سؤال آخر اتفضل وان شاء الله نساعدك

===================

الى اللقاء

JusT LeT YouR MinD WorK

#6

شكرا علي ردك يا مستر كنج وجاري تجربة اللي انت قلت عليه وانا فاهم فكرتك دي كويس جدا وجربتها قبل كدة بس هجربها تاني علي اساس الحقل الجديد الي انت قلتلي عليه ده وشكرا علي ردك ولو في حاجة هسأل تاني ثانك يو

vipersig.jpg

المحاسب

سامح إبراهيم عبداللطيف

sameh_ibm@hotmail.com

SAMHOOON

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…