![]() |
|
مشكلة مع ال Filter ؟ - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : مشكلة مع ال Filter ؟ (/showthread.php?tid=624) |
مشكلة مع ال Filter ؟ - AL-MOB4RM3G - 28-02-2009 اخواني الكرام... حان وقت الفرح بنسبة لي ![]() فقد اقتربت كثيرا كثيرا من الحل ولله الحمد... وجدت و استخدمت هذا الكود... PHP كود : Accept := Pos('adnanov2',dataset.FieldByName('UserName').AsString) = 1; في الحدث PHP كود : ADOTable1FilterRecord والنتيجة انه تم عمل الفلتر مشكل صحيح... لكن عندي اسإلة حول هذا الحلّ... ماذا تعني Pos؟ هذا اولا... ثانيا... رقم ال 1 في الأخير امره غريب... وكأنه يعني false او true او ما شابه ذلك ... فهل هذا صحيح... ؟ لأني عندما وضعت بدل ال 1 رقم 0 ظهرت كل الأسماء... عند وضعته كما هو يعني رقم 1 يعمل فلتر عادي يعني فلتر بشكل صحيح... وان وضعت بدل من ال 1 رقم 2 يختفي الكل... اذا ممكن توضيح بارك الله لكم... والسلام عليكم ورحمة الله مشكلة مع ال Filter ؟ - hanipino - 28-02-2009 يمكنك ان تستنتج ما حدث + قم بعمل زيارة خفيفة ل Helpe_
مشكلة مع ال Filter ؟ - AL-MOB4RM3G - 28-02-2009 hanipino كتب :يمكنك ان تستنتج ما حدث + قم بعمل زيارة خفيفة ل Helpe_ نعم اخي لكن في الحقيقة لم افهم من help شئ... بحثت عن PHP كود : Pos function يعني ما عرفت ما معناها... لكن اشكرك على كل حال اخي هانيبينوا
مشكلة مع ال Filter ؟ - kachwahed - 01-03-2009 السلام عليكم بالفرنسية من Help كود : Renvoie la valeur d'indice du premier caractère dans une sous-chaîne spécifiée qui se trouve dans une chaîne.
Unité
System
Catégorie
routines de gestion des chaînes
Syntaxe Delphi :
functionPos(Substr:string;S:string):Integer;
Description
Dans Delphi,la fonction Pos recherche une sous-chaîne,Substr,àl'intérieur d'une chaîne S.Substr et S sont des expressions de type chaîne.
Pos recherche Substr àl'intérieur de S et renvoie une valeur entière correspondant àl'indice du premier caractère de Substr àl'intérieur de S.Pos fait la distinction majuscules/minuscules.Si Substr est introuvable,Pos renvoie zéro.
La fonction PosEx est similaire àPos,mais elle dispose de fonctionnalités supplémentaires et peut être utilisée dans le code C++.كود : var S:string;
S :=' 1 23 .5 ';
{Conversion des espaces en zéros }
while Pos(' ',S) > 0 do S[Pos(' ',S)]:='0';تعيد دالة Pos قيمة موضع (ترتيب) حرف معين من سلسلة حرفية أخرى، فمثلا ( Pos('a',S تعيد موضع الحرف a من السلسلة S فإذا كان موضعه في الخانة الأولى فتعيد الدالة القيمة 1، وإذا كان موضعه في الخانة الثانية تعيد 2، وأعرف أن البقية يمكن أن تكملها وحدك ![]() أضف للمثال السابق السطر: PHP كود : ShowMessage(S); . مشكلة مع ال Filter ؟ - AL-MOB4RM3G - 01-03-2009 اخواني الكرام... سلام الله عليكم ورحمة منه وبركاته... نويت ان ارفق لكم المشروع الذي أخذ من واقتي الكثير والله المستعان... حتى يستفيد الإخوة منه... + حتى استفيد انا منه بلحسنات ان شاء الله...تجدونه مرفق بئذن الله وبدآخله اييضى قاعدة البيانات مختصرة... ... نعم... بلإضافة عندي سؤال لم اتمكن من ايجاد شئ عليه... ولم تختر في بالي فكرة عنه ... لعل احد الإخوة لديه الجواب.. السؤال هو... في المشروع مثلا... لو كتبتم التالي.. PHP كود : @d او كتبتم... اي بدل حرف صغير ... تكتبون حرف كبير... PHP كود : @D فستلاحظون انه الفلتر سيكون مختلف... وذلك يعود الى ان المشروع ليس كما يسمّى CaseSensetive او ما شابه ذلك... فهل لدى احد منكم بارك الله به... طريقة لعمل ذلك؟؟ اي لعمل انه لو تم البحث عى حرف كبير او صغير... فسيكون الجواب انه البرنامج يجد الكبير و الصغير... هذا اولا... ثانيا... السؤال هو عن نفس المشروع... ولكن اذا رءا احد الإخوة من المشرفين ان يضعه في موضوع لوحده.... فنحن تحت امرته ![]() نعم ...برمجيّة... كيف بمكن عمل Sort للأسماء في قاعدة البيانات ؟ هذه الخآصيّة اعتقد موجودة في ListBox عادي ولكن لم اجدها مع المكون DBLookUpListBox والله المستعان... آخيرا,,, المشروع يحتاج لمكون من TMS حتى تتمكنوا من مشاهدته...وهو... AdvEdit1 اخي kachwahed بارك الله فيك على التوضيح... اشكرك كثيرا بارك الله فيكم جميعا... والسلام عليكم ورحمة الله مشكلة مع ال Filter ؟ - masrnet2006 - 08-03-2009 كود : function ha_FilterQuery(ADOQuery:TADOQuery;FieldName:string;SearchString:string):string;
var
RecordCount:string ;
begin
ADOQuery.Filtered := False;
if( SearchString='') or (SearchString='0') then
begin
ADOQuery.filter := FieldName+' like '+QuotedStr(SearchString +'%');
// ADOQuery.Filter := FieldName + ' = ' + QuotedStr('%' + SearchString + '%'); // I also checked * instead of % but wasn't usefull .
end
else
begin
ADOQuery.Filter := FieldName + ' = ' + QuotedStr('' + SearchString +'');
end;
ADOQuery.Filtered := True;
RecordCount:=IntToStr(ADOQuery.Recordset.RecordCount);
// showmessage(RecordCount) ;
Result :=' المجموع '+RecordCount;
end;مشكلة مع ال Filter ؟ - masrnet2006 - 08-03-2009 كود : function ha_FilterQuery(ADOQuery:TADOQuery;FieldName:string;SearchString:string):string;
var
RecordCount:string ;
begin
ADOQuery.Filtered := False;
if( SearchString='') or (SearchString='0') then
begin
ADOQuery.filter := FieldName+' like '+QuotedStr(SearchString +'%');
// ADOQuery.Filter := FieldName + ' = ' + QuotedStr('%' + SearchString + '%');
// I also checked instead of % but wasn't usefull .
end
else
begin
ADOQuery.Filter := FieldName + ' = ' + QuotedStr('' + SearchString +'');
end;
ADOQuery.Filtered := True;
RecordCount:=IntToStr(ADOQuery.Recordset.RecordCount);
// showmessage(RecordCount) ;
Result :=' المجموع '+RecordCount;
end;
call
RecordCount:= ha_FilterQuery(DataModule1.itname_ADOQuery,'ADOCTYP',ADOCTYPE);مشكلة مع ال Filter ؟ - AL-MOB4RM3G - 08-03-2009 اخي الكريم... [COLOR="Red"]masrnet2006 [/COLOR] هل ممكن توضيح مشاركاتك بارك الله بك؟ لم افهم ما المقصود منها... وهل هذا حل آخر ام ماذا بارك الله لكم والسلام عليكم ورحمة الله مشكلة مع ال Filter ؟ - masrnet2006 - 19-03-2009 اخي الكريم... moh هذا مثال لعمل فلتر باستخدام function (ha_FilterQuery(ADOQuery1,'field_nam',edit1.text 1- ADOQuery1 اسم الجدول او الاستعلام 2- اسم الحق 'field_nam' 3- اسم البحث في الجدول edit1.text فلتر لعمل بحث عن محمد حسن في الحقل name ------------ ملحوظه هامة الفلتر هنا افضل من جملة SQL والسبب هو : الجدول موجود بالكامل ويؤشر الى record only اما SQL تظهر record only اي تظهر سجل واحد فقط في الجدول الذي به 100 سجل اما فلتر تظهر سجل 100 في الجدول الذي به 100 سجل وتقف عند سجل البحث مشكلة مع ال Filter ؟ - masrnet2006 - 19-03-2009 كود : If you are using [url=javascript:void(0)]SQL[/url], just add an order by clause:
select * from emp where tel=123456
order by column1, column2...
---------------
sort with table
2- Table component, try the "IndexFieldNames" (name;tel;no)
3- DBLookUpListBox listfield (ADOCTYP;CODNAM;ADOCTYP_SUM)سوف ارسل لك شغل عملي من الشركة قريب |