PDA

View Full Version : تبدیل عبارات شرطی با AND به OR



sattaryekta
چهارشنبه 01 دی 1389, 14:10 عصر
با سلام
ADO عبارات شرطی (Filter) با فرمت زیر را ساپورت نمی کند و برنامه دچار خطا می شود.
آیا الگوریتمی هست که عبارت شرطی مثلا فیلتر یک ADOTable که بین آنها از And استفاده شده را تبدیل به عبارتی کرد که بین آنها از OR استفاده شده و نتیجه Filter را تغییر ندهد.
مثلا تبدیل:

((s>= y) and (s<= d)) and ((k=h) or (k=c))به

( (s= c) AND (s>= y) AND (s<= d) ) OR ( (k= h) AND (s>= y) AND (s<= d) )

راه حل در این گونه مواقع چیست؟
ممنون از راهنمایی شما

mahdy.asia
جمعه 10 دی 1389, 08:31 صبح
با سلام
آیا الگوریتمی هست که عبارت شرطی مثلا فیلتر یک ADOTable که بین آنها از And استفاده شده را تبدیل به عبارتی کرد که بین آنها از OR استفاده شده و نتیجه Filter را تغییر ندهد.
مثلا تبدیل:

((s>= y) and (s<= d)) and ((k=h) or (k=c))
به

( (s= c) AND (s>= y) AND (s<= d) ) OR ( (k= h) AND (s>= y) AND (s<= d) )

ممنون از راهنمایی شما

شما می توانید کلمه OR را با دستور Delete از شرط تان حذف و با در موقعیت Delete کلمه And را جایگزین کنید.

sattaryekta
سه شنبه 28 دی 1389, 10:41 صبح
اگر می شود توضیح بیشتری بدهید.
منظور شما Delete مقدار رشته ای Filter هست؟ یعنی OR را با AND ، ریپلیس (Replace) کنم؟ با این کار نتیجه فیلتر کاملا تغییر خواهد کرد.
یا منظور شما Delete رکورد های دیتابیش هست؟