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

نسخة كاملة : [ تمّ الحل ] : الحذف من الجدول مع الحفظ بجدول آخر معيّن
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السّلام عليكم و رحمة الله و بركاته
إخواني الأعزّاء بحلول السنة الميلاديّة الجديدة إن شاء الله 2017
أدعو الله و أتمنى من كل قلبي مخلصُا أن تكون فاتحة خير للجميع .. و أن تهل علينا السنة الجديدة بالخير و البركة و اليمن و الصحّة و العافية .. أن يكون لنا فيها تقرّب إلى الله أكثر و أن تكون فاتحة سعادة و راحة بال  علينا و على على سائر المسلمين و يسود فيها الأمن والاطمئنان كل البلاد الاسلاميّة بصفة عامّة و أوطاننا العربية بصفة خاصّة بإذن المولى القدير
سادتي الأفاضل هل من الممكن لو تكرّمتم و وفّقكم الله لذلك أنّه عند الضغط على زر الأمر الأخضر المخصّص للحفظ بالأرشيف ..أنّه عند الضغط عليه ينتقل السجل و يحذف تماما من الجدول الأوّل باسم Mobachir و ينتقل هذا السجل إلى الجدول الثاني باسم Archives .
بارك الله فيكم مقدّمًا و جزاكم خير الجزاء و نفع بكم الاسلام و المسلمين
تحياتي 
وعليكم السلام ورحمة الله وبركاته 

وكل عام والجميع بالف خير 

هذا استعلام  ينسخ البينات المحددة الى  جدول الارشيف  

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

والله الموفق 

كود :
If RA.State = 1 Then RA.Close
sql = "INSERT INTO Archives SELECT Mobachir.* FROM Mobachir WHERE (((Mobachir.الاسم)=" & "'" & Trim(Text2.Text) & "'))"
RA.Open sql, DB, adOpenStatic, adLockPessimistic
السّلام عليكم و رحمة الله و بركاته
أخي الغالي SENDBAD100 
كثّر ألف خيرك و بارك الله فيك و رزقك من حيث لا تحتسب و أدام عليك و على أهلك موفور نعمته و دوام الصحّة و العافية
تمام إشتغل الأمر على أحسن ما يرام و الحمد لله
خالص إحتراماتي
تم تعديل كود النسخ كي تستطيع استخدمه مع كود  الحذف

احذف الاكود كامله   داخل  زر  الحذف  وضع هذا   الكود التالي 

كي يقوم بنسخ السجل قبل حذه  

والله الموفق 


كود :
On Error Resume Next: Err.Clear
If Val(Trim$(Text1.Text)) <= 0 Then
MsgBox "تأكد من صحة الرقم", vbOKOnly + vbExclamation, "تنبيه"
Text1.SetFocus
Exit Sub
End If
Text6.Locked = True
MSHFlexGrid1.Enabled = False
EnabledOrDisbled_MainButtons False, False, False, False, True
EnabledOrDisbled_MovingButtons False, False, False, False
If RA.State = 1 Then RA.Close
RA.Open "Select * From Mobachir Where [الرقم]=" & Val(Trim$(Text1.Text)), DB, adOpenStatic, adLockPessimistic
If RA.RecordCount <= 0 Then
If RA.State = 1 Then RA.Close
MsgBox "لم يتم العثور على هذا السجل في  قاعدة البيانات!", vbOKOnly + vbExclamation, "تنبيه"
Text6.Locked = False
MSHFlexGrid1.Enabled = True
EnabledOrDisbled_MainButtons True, False, True, True, True
EnabledOrDisbled_MovingButtons True, True, True, True
Text1.SetFocus
Exit Sub
End If
If MsgBox("هل تريد بالتأكيد حذف هذا السجل؟", vbOKOnly + vbYesNo + vbExclamation, "") = vbNo Then
Text6.Locked = False
MSHFlexGrid1.Enabled = True
EnabledOrDisbled_MainButtons True, False, True, True, True
EnabledOrDisbled_MovingButtons True, True, True, True
Text1.SetFocus
Exit Sub
End If

'نسخ السجل للارشيف قبل حذفه
Dim ra2 As New ADODB.Recordset
If ra2.State = 1 Then ra2.Close
sql = "INSERT INTO Archives SELECT Mobachir.* FROM Mobachir WHERE (((Mobachir.الاسم)=" & "'" & Trim(Text2.Text) & "'))"
ra2.Open sql, DB, adOpenStatic, adLockPessimistic
'ra2.Close
Set ra2 = Nothing


RS.Delete
DoEvents
Clear_TextBoxs
LockOrUnLock_TextBoxs True
Text6.Locked = False
MSHFlexGrid1.Enabled = True
If RS.RecordCount > 0 Then
Command8_Click
EnabledOrDisbled_MainButtons True, False, True, True, True
EnabledOrDisbled_MovingButtons True, True, True, True
Else
EnabledOrDisbled_MainButtons True, False, False, False, True
EnabledOrDisbled_MovingButtons False, False, False, False
End If
View_Records
Is_EditMode = False
DrawFlex
Text1.SetFocus
الله الله عليك يا غاالي
باسم الله ما شاء الله تبارك الله
بكل صدق متعة و قمّة الاتقان و الابداع ..زادك الله علمًا نافعًا و أدامك لنا ذخرا و لكل أمّة المسلمين
بيّض الله وجهك و زادك من فضله و علمه و نوره
قمت بترك كود الحذف بالملف الأوّل الأصلي مثلما كان .. ليبقى لحذف السجلات تماما دون حفظها بالأرشيف و جعلت هذا الكود الرائع الأخير الذي تكرمت به سيادتك في زر الأمر الأخضر لأستخدمه في النقل إلى جدول الأرشيف مع الحذف طبعًا من جدول المباشر ..
فقط ملاحظة صغيرة عند النّقل و الذهاب إلى الفورم 2 لا أجد السجل الجديد المنقول إلاّ بعد الخروج من المشروع تمامًا و إعادة فتحه عندئذ أجد السجل الذي قمت بنقله
أسمى تحيّاتي أخي الكريم
لم تظهر معي المشكلة التي ذكرتها 


انظر المثال
السّلام عليكم و رحمة الله و بركاته
أشكرك جزيل الشكر أخي الغالي على تعبك و صبرك معي
لاحظ الشاشة الرئيسية لو سمحت .. الاسم مثلا المسمى aaa
قمت بالضغط على الزر الأخضر الخاص بالحفظ في الأرشيف لنقله إلى فورم الأرشيف يعني جدول الأرشيف

الاسم فعلا إختفى من الشاشة الرئيسية أي من الفورم 1 كما تشاهد
[b]
[/b]
لكن عند الذهاب مباشرة إلى الفورم 2 لا نجد هذا الاسم aaa الذي قمنا بنقله
قم لو سمحت بهذه الخطوات على التوالي و ستلاحظ الاشكالية ..حتى بقاعدة البيانات لا تجد هذا الاسم الذي نقلناه
إحتراماتي أخي الكريم
جدول الارشيف يجب ان لا يحتوي على مفتاح اساسي
عندما تحذف سجل رقمه 1
وتحفظ سجل جديد رقمه واحد ثم مرة اخرى تحذف السجل الجديد الذي رقمه 1 لا يتم حفظة بسبب تشابه الارقام لان الرقم في الارشيف مفتاح اساسي
جدول الارشيف يجب ان لا يحتوي على اي مفتاح اساسي

اتركه بدون مفتاح اساسي

والله الموفق

انظر الصورة
السّلام عليكم و رحمة الله و بركاته
بحذف المفتاح الرّئيسي أصبح كل شيء تمام و الحمد لله في نقل و حذف السجلات
الله يرضى عليك و يحسن إليك دنيا و آخرة أخي SENDBAD100
اسمحلي واعذرني كثيرا لوجه الله على إرهاقك بتساؤلاتي
خالص إحتراماتي
يوجد اعلى الفورم 2  في مساحة الاعلان   الكود التالي 

كود :
'Dim RA As New ADODB.Recordset

ابعد العلامة التي امامه   هذه ( ' )   
الان لونه اخضر  
كي يصبح هكذا 

كود :
Dim RA As New ADODB.Recordset

اعتذر  من اجل ذلك فانا من وضعها لغرض التجربة ونسيت اضبطها فبل ارسالها اليك
الصفحات : 1 2