ali190
جمعه 12 آذر 1389, 19:22 عصر
باسلام و عرض خسته نباشید
من در بانکم تعدادی آدرس دارم که بصورت یک شجره نامه هستند:
در واقع بین هر مجموعه و زیر مجموعه بعد از خودش با یک "\" جداسازی شده است
63066
حالا من میخوام این آدرس ها رو برحسب آدرسی که در شجره نامه قدیمی تر است فیلتر کنم
در نمونه پروژه ام یک textbox جهت فیلترسازی گذاشتم:
مثلاً فرض کنید زمانیکه آدرس Main Root\zz رو میزنم و روی دیکمه فیلتر کلیک میکنم باید نتایج زیر رد دیتا گرید نمایان بشه:
63067
طبق فیلتر سازی هر آدرسی که با Main Root\zz شروع میشود باید فیلتر شود
من برای این قضیه از کوئری select زیر استفاده میکنم
"select * from tblNodes WHERE (((InStr(1,[path],text1.text))=1));"
من در واقع با تابع instr وجود مقدار text1 رو در فیلد path چک میکنم ، اگر وجود داشت (1=) اون رو انتخاب میکنم
منتها کدی که نوشتم عمل فیلتر رو انجام نمیده و ارور میده
پروژه رو جهت اصلاح خدمتتون قرار میدم
یاعلی
من در بانکم تعدادی آدرس دارم که بصورت یک شجره نامه هستند:
در واقع بین هر مجموعه و زیر مجموعه بعد از خودش با یک "\" جداسازی شده است
63066
حالا من میخوام این آدرس ها رو برحسب آدرسی که در شجره نامه قدیمی تر است فیلتر کنم
در نمونه پروژه ام یک textbox جهت فیلترسازی گذاشتم:
مثلاً فرض کنید زمانیکه آدرس Main Root\zz رو میزنم و روی دیکمه فیلتر کلیک میکنم باید نتایج زیر رد دیتا گرید نمایان بشه:
63067
طبق فیلتر سازی هر آدرسی که با Main Root\zz شروع میشود باید فیلتر شود
من برای این قضیه از کوئری select زیر استفاده میکنم
"select * from tblNodes WHERE (((InStr(1,[path],text1.text))=1));"
من در واقع با تابع instr وجود مقدار text1 رو در فیلد path چک میکنم ، اگر وجود داشت (1=) اون رو انتخاب میکنم
منتها کدی که نوشتم عمل فیلتر رو انجام نمیده و ارور میده
پروژه رو جهت اصلاح خدمتتون قرار میدم
یاعلی