كيف يتم تريتب فهرسة البيانات تنازليا ؟
#12
إقتباس :مثلا من DBDemos الجدول Customers، نضع زر BtnSort مثلا باسم كل حقل، مثلا زر SortCustNo وزر لـ SortEmpNo
جدول Customers يجب ترقيته الى Paradox 7 لكي يمكن تطبيق المثال عليه
لناخذ جول اخر مثلا animals
والحقل Name وايضا الحقل Area
للترتيب التنازلي نحتاج دليل وللتصاعدي دليل اخر
ولدينا حقلين نرتب حسبهما اذن نحتاج بالمجموع 4 ادلة
نفرض مكون الجدول المربوط مع Animals.dbf هو Table
لانشاء الادلة برمجيا وقت التنفيذ نكتب شيئ مثل
PHP كود :
Table1.Close;
   
Table1.Exclusive := TRUE;
   
Table1.AddIndex('NameA', 'Name', []);
   
Table1.AddIndex('NameD', 'Name', [IxDescending]);
   
Table1.AddIndex('AreaA', 'Area', []);
   
Table1.AddIndex('AreaD', 'Area', [IxDescending]);
   
Table1.IndexDefs.Update;
   
Table1.Exclusive := FALSE;
   
Table1.Open; 
لتغيير الترتيب يكفي تغيير الدليل المناسب
حسب الاسم Name ترتيب تصاعدي نكتب بالزر
PHP كود :
Table1.IndexName:='NameA'; 
حسب الاسم Name ترتيب تنازلي نكتب
PHP كود :
Table1.IndexName:='NameD'; 
بالنسبة للحقل الثاني Area نفس الشيئ
تصاعدي نكتب بالزر
PHP كود :
Table1.IndexName:='AreaA'; 
وهكذا
طبعا قبل انشاء اي دليل عليك ان تتاكد من عدم وجوده
-
بالنسبة للحقول المحسوبة في OnCalcFields فتذكر ما قلته لك في السؤال السابق
الرد


الردود في هذا الموضوع
كيف يتم تريتب فهرسة البيانات تنازليا ؟ - بواسطة محمد عبد العزيز - 07-03-2009, 02:47 AM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم