أولا السلام عليكم
يشرفني الانضمام للمنتدى
كيف أستطيع عمل فلترة بناء على شرطين ( القسم+الوظيفة) لمعرفة مثلا الموظفين في قسم الانتاج ووظيفتهم عامل
أولا السلام عليكم
يشرفني الانضمام للمنتدى
كيف أستطيع عمل فلترة بناء على شرطين ( القسم+الوظيفة) لمعرفة مثلا الموظفين في قسم الانتاج ووظيفتهم عامل
السلام عليكم
رمضان مبارك للصائمين
اخي العزيز تستطيع اجراء الفلترة بطريقتين :
1-باستعمال المكون TABLE
بالطريقة التالية
table1.filtred:=true
table1.filter:='founction ='''+edit1.text+''' and classe='''+edit2.text+'''';
اما بالطريقة الثانية بالكويري عنطريق sql
query.close;
('select * from client where client.classe='+edit2.text+'and client.founction='+edit1.text+'')
query.open;
اخي العزيز
انا مشعول شوية وليس عندي دلفي هنا كي اجرب
لقد كتبت الكود بسرعة لاني لاحفظ وهدا عيبي
المهم هو الحل وانكان هنا ك خطءي الكتابة اجو ان تجدها بنفسك
شكرا
أخي السلام عليكم
شكراً على المساعدة
لقد استطعت عمل الفلترة كما وضحتها ولكن مشكلتي كالتالي :
في جدول الموظفين يوجد حقلين 1- القسم 2- الوظيفة
ولكن عندما أقوم بفلترة البيانات حسب القسم ومن أثم اريد فلترتها حسب الوظيفة يقوم البرنامج بإلغاء الفلترة الأولى
مثال :
رقم الموظف القسم الوظيفة
1 العمليات مهندس
2 العمليات عامل
3 العمليات عامل
4 الانتاج عامل
5 الادارة كاتب
فلترة البيانات حسب قسم العمليات فتكون النتيجة
1 العمليات مهندس
2 العمليات عامل
3 العمليات عامل
وإذا قمت بفلترة النتيجة حسب الوظيفة عامل يكون الحاصل
2 العمليات عامل
3 العمليات عامل
4 الانتاج عامل
وما أريده هو فلترة البيانات حسب شرطين معاً القسم العمليات والوظيفة عامل لتكون النتيجة:
2 العمليات عامل
3 العمليات عامل
أرجو أن يكون المثال واضح
ملاحظة أخيرة :
الكود الذي تكتبة غير مرتب بشكل جيد فإذا كان الحل عندك الرجاء ترسله على عنواني البريدي hussin_za@hotmail.com
وجزاك الله ألف خير على نفاعلك
السلام عليكم
Table1.Filter := 'CustNo > 1300 and State = "CA"'; Table1.Filtered := True;
هذا الشكل العام للكود عند عمل فلترة لأكثر من حقل
Table1.Filter := '(Field1=1) and (Field2=4) or (Field2=5)......'
أما إذا رغبت بالبحث باستخدام edit
فهذا الشكل العام للكود
Table1.Filter := Field1 = '''+Edit1.Text+ '''';
السلام عليكم
اخي اضن انك تريد ان ترشح او تفلتر الجدول حسب شرط اول وحينما تتحصل على النتيجة الابتدائية تقوم بالترشيح الثاني او الفلترة الثانية
الجواب :
اعمل فلترة اولية وفق الشرط الاول عن طريق استعمال الكويري (sql) ثم قوم بفلترة الكويري بالتعليمة filter كما تستعملها في الجدول table
مثال :
query.sql.add('select * from data where Field1=الشرط الاول ')query.Filter :=' Field2 = الشرط الثاني ';
هده فكرة اولية وسااظر في الامر باذن الله
أولاً جزاكم اللع ألف خير
أبو محمد حجرب الطرق الي أوردتها وإن شاء الله خير
باتي
أسف الكود الي كتبته غير مرتب ووااضح اكتبه على طريقة أبو محمد
هذا الموضوع مغلق.