السلام عليكم ،،،،
هل استطيع ان اجعل السجل ينتقل إلى جدول آخر بمجرد النقر على زر الحذف؟ وكيف؟
السلام عليكم ،،،،
هل استطيع ان اجعل السجل ينتقل إلى جدول آخر بمجرد النقر على زر الحذف؟ وكيف؟
أخي الحبيب يمكنك التوضيح أكثر وبمثال لو أمكن لتحصل على إجابة لما طلبته وتمنياتي لك بالتوفيق.
الأخ/المزيني وفق الله
لا يحتاج سؤالي إلى مثال لأن السؤال متعلق بأمر الحذف وهذ الأمر الكل يعرفه ويستخدمه ، ويبدو أن سؤالي غير واضح وسأعيده.
سؤالي هو:
عندما أضع زر حذف السجل على الفورم فوظيفة هذا الزر هو انه يحذف السجل الذي اكون متركز فيه.
ولكني أريد ان أضع شفرة وظيفتها هو نقل هذا السجل إلى جدول آخر بمجرد النقر على زر حذف السجل.
وأقصد بهذا الطلب هو أن السجلات المحذوفه أستطيع أن أرجع إليها ، حيث أن السجلات عبارة عن أسماء للموظفين فاثناء انتقال أي موظف إلى وظيفة أخرى أقوم بحذف اسمه لكن من الممكن أن أحتاج إليه في وقت لاحق
أرجو أن يكون السؤال واضحا
ممكن يكون كارشفه بالنقل الى جدول جديد
بعد إذنكما أخوي الكريمين/ المزيني / أبو تريكي
باستطاعتك ذلك أخي الكريم بالتالي :
إنشأ جدولاً وسمه مثلاً المحذوفات
ثم اعمل استعلام إلحاق أو عبارة سيكول عن طريق ADO وألحقه بالعبارة INSERT INTO
مثال احترافي شوي باستخدام ADO ومعاملاته BeginTrans
جدول المصدر : tbl2
جدول الوجهة : tbl1
Dim db As New ADODB.Connection Dim sqCopy As String Dim sqDel As String ' إنشاء اتصال مع قاعدة البيانات Set db = CurrentProject.Connection ' عبارة SQL لنسخ البيانات من جدول tbl2 إلى جدول tbl1 sqCopy = "INSERT INTO tbl1 select * from tbl2" ' عبارة SQL لحذف البيانات من جدول tbl2 sqDel = "delete tbl1 from tbl1" ' تنفيذ نسخ البيانات db.Execute sqCopy ' بدء المعاملة للتأكد من إتمام عملية النسخ db.BeginTrans If db.Errors.Count <> 0 Then MsgBox "خطأ .. لم يتم نقل البيانات" ' التراجع عن النسخ عند حدوث خطأ db.RollbackTrans Else ' إذا تم النسخ بشكل صحيح نكمل العملية بحذف السجلات من الجدول الأصلي ' تنفيذ حذف البيانات db.Execute sqDel If db.Errors.Count <> 0 Then MsgBox "خطأ .. لم يتم حذف البيانات" db.RollbackTrans Else ' عند إتمام العمليتين النسخ والحذف يتم تسليم العملية وإمضاؤها db.CommitTrans MsgBox "ممتاز .. لقد تم نقل البيانات إلى الجدول الجديد .. كما تم حذفها من الجدول الحالي" End If End If Set db = Nothing
في رأيي هذه أفضل الطرق لعمليات من هذا النوع حيث عدم نجاح نسخ البيانات ثم نجاح حذفها يسبب كارثة لا أول لها ولا آخر .. ولكن مع هذه الطريقة نضمن أنه إذا لم ينجح النسخ فإن العملية بكاملها لا تنفذ على الجدولين
تحياتي
الأخ/أحمد الحربي
مشكووووووووووووووووووووووووور
وما قصرت
والله يجزاك ألف خير
وبارك الله فيك وفي أمثالك من الذين يحبون خدمة الأعضاء
وأسأل الله بأن يذكرك بالشهادة ومن ثم الجنة.......آمين.......أمين
أخي الكريم وهذا مثال آخر وبطريقة أخرى يقوم بالمطلوب.
وأما بالنسبة لقولك أن سؤالك لا يحتاج إلى مثال فاسمح لي بأن أكرر أهمية المثال وهذا ما أكده الزملاء الأعضاء في هذا المنتدى في أكثر من رد.
أنظر مثلاً للمثال المرفق فقد قمت بإنشاء جدولين ونموذج وأدخلت 5 سجلات في أحد الجدولين كل هذا لإيصال الفكرة فلو أنك أنشئت الجدولين والنموذج وبقي الكود لكان ذلك أجدى فالمقصود الفكرة وليس أن يقوم الأخ الذي يقوم بالرد بعمل كل شيء حتى إدخال البيانات.
ملاحظة لمن يهمه الأمر: قمت بكتابة رد مشابه لهذا الردفي وقت سابق
وقمت بإضافته وتم قبول ذلك غير أنني تفاجئت حين دخلت للمنتدى مرةً أخرى لم أجد شىء فما السبب في ذلك؟
آمين آمين وأيضاً ..
اللهم اخذل الأمريكان ومن عاونهم من الكفرة الفجرة .. اللهم اجعلها نهاية الأمريكان يا رب العالمين
ولا تنس أخانا الموفق المزيني
الله يعطيك العافية والصحة يا أخ/المزيني
وبارك الله في جهودك النيرة
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…