• 0
حسام خزعل عجمي

استعمال ايعاز filter

سؤال

سلام عليكم بالنسبة الى ايعاز filter كيف يمكن ان يستخدم رغم من بساطته الا اني اجد صعوبة في تحصيل المراده من هذا الايعاز

وشكرا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

9 إجابة على هذا السؤال .

  • 0

وسؤال الثاني عندي فورم يحتوي مجموعة من TEXT جعلتها كلها متغيرات ذاكرة وذلك من اجل استخدام SCATTER MEMVAR و GATHER MEMVAR

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

وتظهر رسالة منبثقة من BAR الذي يحتوي على START لم افهم معناها ولكنها تشير الى COLOR SCHEME EXEEDED WITH VISUAL BASIC 6 ولا اعلم ماذا تعني الرسالى

ارجو مساعدتي في حل هذه المشكلة

وشكرا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي العزيز

الفلتر هو ترشيح البيانات حسب الطلب

وصيغة هو

set filter to 

وبعد ه ياتي المطلوب مثلا اكبرمن او اصغر او يساوي وغيرها من المعادلات

لنفترض لدينا جدول يحتوي على حقل بالاسم A

وفي هذا الحقل القيم التالية 20,30,50,80,100

اذا نريد عرض قيم A اكبر من 50

 set filter to A>50

فيكون العرض للبيانات التي تحقق الترشيح

واذا اردنا عرض القيم اكبر من 50 واصغر من 100

 set filter to A>50 and A<100

اتمنى وصول الفكرة

بالمثال البسيط هذا

واذا لم تصل رد علي وسوف اعمل لك مثال

تحياتي للجميع

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سلام عليكم شكرا للايضاح التام استاذ لكن مشكلتي في الفلترة مع المقارنة مع قيم مستخلصة من كومبو مثلا او تكست

مثلا

SET FILTER TO NO=THISFORM.COMBO1.VALUE AND NAME=THISFORM.TEXT1.VALUE

فان ايعاز الفلترة هنا لا يتم ولا ادري السبب لكن عند استخدام قيم صريحة او متغيرات صريحة يتم الايعاز بصورة صحيحة

هل ان ايعاز الفلترة مقتصر على القيم او متغيرات ولا يصح مع اداوات الفورم الاخرى وشكرا جزيلا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سلام عليكم شكرا للايضاح التام استاذ لكن مشكلتي في الفلترة مع المقارنة مع قيم مستخلصة من كومبو مثلا او تكست

مثلا

SET FILTER TO NO=THISFORM.COMBO1.VALUE AND NAME=THISFORM.TEXT1.VALUE

فان ايعاز الفلترة هنا لا يتم ولا ادري السبب لكن عند استخدام قيم صريحة او متغيرات صريحة يتم الايعاز بصورة صحيحة

هل ان ايعاز الفلترة مقتصر على القيم او متغيرات ولا يصح مع اداوات الفورم الاخرى وشكرا جزيلا

أعتقد بأن استخدام قيم مباشرة أفضل ( بغض النظر عن المشاكل المصاحبة أحيانا لاسناد الفلتر لأحد عناصر النموذج ) على الأقل من ناحية ترتيب المطلوب من الفلتر

جرب على النحو التالي :


LOCAL lnNo, lcName, lcFilter
m.lnNo = ALLTRIM(THISFORM.Combo1.VALUE)
m.lcName=ALLTRIM(THISFORM.Text1.VALUE)
lcFilter = [ NO = ] + m.lnNo + [ and Name = "] + m.lcName + ["]
SET FILTER TO &lcFilter

وعليك أيضا مراعاة طبيعة القيم هل هي نصية أم رقمية

قد يفيدك في ذلك الأمر VarType


Messagebox(VarType(m.lnNo)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سلام عليكم شكرا للايضاح التام استاذ لكن مشكلتي في الفلترة مع المقارنة مع قيم مستخلصة من كومبو مثلا او تكست

مثلا

SET FILTER TO NO=THISFORM.COMBO1.VALUE AND NAME=THISFORM.TEXT1.VALUE

فان ايعاز الفلترة هنا لا يتم ولا ادري السبب لكن عند استخدام قيم صريحة او متغيرات صريحة يتم الايعاز بصورة صحيحة

هل ان ايعاز الفلترة مقتصر على القيم او متغيرات ولا يصح مع اداوات الفورم الاخرى وشكرا جزيلا

اخي العزيز جواب الاخ شادو (عبدالله)

واضح وجميل ويشكر على المتابعة معناً

اخي العزيز اعتقد ان الحقل NO هو رقمي , NAME نصي ومراب الحقول نصية تختلف عنها فاقترح الاتي

SET FILTER TO NO=val(THISFORM.COMBO1.VALUE )   AND   NAME=allt(THISFORM.TEXT1.VALUE)

او قم بارفاق المثال وسوف يتم عمل او تعديل الكود لايصال الفكرة

تحياتي للجميع

تم تعديل بواسطه lion iraq
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

امثلة الاخ شادو صعبة وتحتاج الى تركيز كبير

:wacko:

مشكورين على الافادة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

امثلة الاخ شادو صعبة وتحتاج الى تركيز كبير

:wacko:

مشكورين على الافادة

اخي العزيز كود الاخ عبدالله واضح وسهل ولكن بطريقة ما

وهي خلق متغيرات واعطاها قيم ومن ثم استخدم بالايعاز للفلتر اي اختصار كود او ايعاز طويل وبالنسبة للكود الاول هو الاتي بدون اختصارات او العمل سوف يكون

SET FILTER TO NO =ALLTRIM(THISFORM.Combo1.VALUE) AND  Name = ALLTRIM(THISFORM.Text1.VALUE)

اما بالنسبة لــ vartype هو بيان نوع المتغير برساله الصندوق واليك قيم الايعاز وخصائصة

post-210280-015123200 1334858925_thumb.p

لغرض كتابة الايعاز بالصورة الصحيحة لان في حالة النوع رقم يختلف قليل بالدوال عن النص

تحياتي للجميع

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

امثلة الاخ شادو صعبة وتحتاج الى تركيز كبير

:wacko:

مشكورين على الافادة

يا راجل كل الموضوع

انه نحدد الشروط أولاً بشكل صحيح قبل استخدام الأمر Set Filter

تم تعديل بواسطه Shadowz
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يا راجل

wink.gif حلو منك ياراجل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .