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

البحث في الجدول باستخدام التعليمة (Locate)

بدأه lمنى نور هدى في 9 ديسمبر 2011 · 8 رد · 2,612 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بعد التحية و السلام

ساعدوني ساعدكم الله

أرجوا من أعضاء المنتدى مساعدتي في أسرع وقت

ليس لدي خبرة في دلفي و أنا بصدد صنع برنامج للفواتير بدلفي7 المهم المشكلة تكمن في البحث في الجدول و ذلك بكتابة ما أريد البحث عنه في Edite1 . Edite2. Edite3 (العنوان/شهر/ السنة) في نفس الوقت ثم الضغط على الزر فيقوم الجدول بعرض . و أيضا لدي رسم بياني أمام الجدول كلما تغير الجدول يجب أن يتغير الرسم البياني حسب ما يعرضه الجدول كيف أقوم بذلك.

أرجوا منكم الإجابة و إن أمكن مرفقة بالصور

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

تم تعديل هذه المشاركة بواسطة lمنى نور هدى في 9 ديسمبر 2011 في 21:48

#2

لا يوجد أحد في منتدى يستطيع مساعدتي

#3

السلام عليكم

ADOQuery1.Locate('firstname;lastname;',VarArrayOf([Edit2.Text,Edit3.Text]),[]);
#4

السلام عليكم

يا ريت لو وضعتي اسامي الجداول لكي يكون الحل واضح, المهم طريقة الحل بسيطة و هي انك توضعي كود الفلتر في خصائص ال edit الثلاثة في خاصية Onchange و يكون الكود شبيه بهذا:

edit1:

if (edit1.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

edit2:

if (edit2.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

edit3

if (edit3.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

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

و اذا لم تتمكني من ذلك او عندك سؤال اخر نحن بإذن الله هنا.

بالتوفيق.

i-love-algerie-laura23920090720132603.gif
#5

بارك الله فيكم حعله الله في ميزان حسناتكم

وفقكم الله

#7
info_megue كتب:

السلام عليكم

يا ريت لو وضعتي اسامي الجداول لكي يكون الحل واضح, المهم طريقة الحل بسيطة و هي انك توضعي كود الفلتر في خصائص ال edit الثلاثة في خاصية Onchange و يكون الكود شبيه بهذا:

edit1:

if (edit1.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

edit2:

if (edit2.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

edit3

if (edit3.Text<>'') then
begin
Table1.Filtered:=true;
Table1.Filter:='Nom_du_champ1='+QuotedStr(edit1.Text+'*')+'and Nom_du_champ2='+QuotedStr(edit2.Text+'*')+'and Nom_du_champ3='+QuotedStr(edit3.Text+'*');
end

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

و اذا لم تتمكني من ذلك او عندك سؤال اخر نحن بإذن الله هنا.

بالتوفيق.

بعد التحية و السلام

هذه الطريقة التي إقترحتها جيدة إستعملتها في الكثير من حالات

لكن لدي حالة لم أستطع إستعمال هذه الطريقة

لدي فواتير و أريد البحث على فواتر عن طريق ثمن الفاتورة (prix_fac)

يجب أن يكون البحث عن طريق > أو < و ليس عن طريق :=

بحث في إنترنت ووجدث هذه التعليمة لكن لم تعمل

Query1.SQL.Add('Select champ');

Query1.SQL.Add('FROM matable');

Query1.SQL.Add('WHERE macolonne= ('+quotedStr(Edit1.Text)+' )');

أرجوا إن كانت هذه الطريقة المناسبة أن توضحوا لي كيفية إستعمالها

جزاكم الله خيرا

#8
lمنى نور هدى كتب:

بعد التحية و السلام

هذه الطريقة التي إقترحتها جيدة إستعملتها في الكثير من حالات

لكن لدي حالة لم أستطع إستعمال هذه الطريقة

لدي فواتير و أريد البحث على فواتر عن طريق ثمن الفاتورة (prix_fac)

يجب أن يكون البحث عن طريق > أو < و ليس عن طريق :=

بحث في إنترنت ووجدث هذه التعليمة لكن لم تعمل

Query1.SQL.Add('Select champ');

Query1.SQL.Add('FROM matable');

Query1.SQL.Add('WHERE macolonne= ('+quotedStr(Edit1.Text)+' )');

أرجوا إن كانت هذه الطريقة المناسبة أن توضحوا لي كيفية إستعمالها

جزاكم الله خيرا

السلام عليكم

الفلتر بالطريقة التي تحدثت عنها سابقا يمكنها ان تنجح ايضا في هذه الحالة.

كل ما عليك الا ان تضعي شرط الفلتر الذي تريدينه مثلا

Tablefacture.Filter:='prix_fac<'+QuotedStr(edit1.Text+'*')

و باذن الله ستنجح.

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

بالتوفيق

i-love-algerie-laura23920090720132603.gif
#9
info_megue كتب:

السلام عليكم

الفلتر بالطريقة التي تحدثت عنها سابقا يمكنها ان تنجح ايضا في هذه الحالة.

كل ما عليك الا ان تضعي شرط الفلتر الذي تريدينه مثلا

Tablefacture.Filter:='prix_fac<'+QuotedStr(edit1.Text+'*')

و باذن الله ستنجح.

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

بالتوفيق

بارك الله فيك لقد إنحل المشكل بالطريقة التي ذكرتها من قبل أما الفلتر فلم تنجح

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