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

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : إعادة كتابة نفس الباينات في عمود (/showthread.php?tid=11012)



إعادة كتابة نفس الباينات في عمود - moufid2020 - 27-08-2020

المطلوب هو يمكنني إعادة كتابة بيانات مماثلة لبعضها في عمود معين وفي قاعدة بيانات أي تكرار مثلا 20 مرة أو 60 إلخ ...........
جاولت كتابة هذا لكني لم أفلح إليكم المثال :

كود :
procedure TForm5 var i:integer; Begin if application.MessageBox('هل ترغب في تكرار السجل', mb_okCancel+ MB_ICONINFORMATION + 0+mb_Right)=idok then begin for i:= 1 to strtoint(edit.text) do Data.ABSTable3.AppendRecord([Dbedit6.Text,DBEdit3.Text,dbedit4.Text,DBEdit5.Text ,CodepAnnexe.Text,CodepSpecifite.TEXT,DBEdit1.Text, DBEdit9.Text,DBEdit10.Text,dblkcbbProvenance.Text,dbedit12.Text,DBEdit13.Text]); DBEdit10.Text:=DBEdit9.Text; data.absqry5.Close; data.absqry5.open; data.absqry5.Refresh; end;



الأمر هنا يتعلق بعدة أعمدة


RE: إعادة كتابة نفس الباينات في عمود - Delphi4Us - 01-09-2020

معاينة سريعة

اين ولكن لاحاجة لها في وضع الاضافة الان العبارة append تنقل المؤشر لنهاية قاعدة البيانات

كود :
Data.ABSTable3.Next

واين عملية الحفظ

كود :
ABSTable3.Post;


ما علاقة المكون التالي بعملية الاضافة حيث ان ABSTable3 هو المسؤول عن العملية ؟؟؟؟

كود :
data.absqry5.Close;


يبدوا لي استخدام الطريقة كالتالي بالشكل التقليدي
for i:= 1 to strtoint(edit.text) do
Data.ABSTable3.Append
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit1.text
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit2.text
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit3.text
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit4.text
Data.ABSTable3.post
end



RE: إعادة كتابة نفس الباينات في عمود - moufid2020 - 09-09-2020

فعلا جواب وجيه وهذا فعلا جواب مريح كما ترى أنني أختصرتها في جملة واحدة
Data.Abstable3.Append
([Dbedit6.Text,DBEdit3.Text,dbedit4.Text,DBEdit5.Text ,CodepAnnexe.Text,CodepSpecifite.TEXT,DBEdit1.Text,
DBEdit9.Text,DBEdit10.Text,dblkcbbProvenance.Text,dbedit12.Text,DBEdit13.Text]);
عدم تكرار مايلي
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit1.text
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit2.text
Data.ABSTable3.FieldbyName('aaa').Value:=TextEdit3.text
Data.ABSTable3.FieldbyName

أما عن data.absqry5.Close;

فهذا في نظري أمر أخر أبحث عن شيء أخر ليظهر مجاميع وفقط
خلاصة لما تقدمت به أشكرك جزيل الشكر وتحياتي الخالصة


RE: إعادة كتابة نفس الباينات في عمود - Delphi4Us - 09-09-2020

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