Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сортировка по полю в детальной таблице [D5, Paradox]


Morrison ©   (2004-10-30 00:36:00) 

Т. е. если у нас таблицы Customers (CustomerID, Name) и Customs(CustomID, Field1, CustomerID) связанные по полю CustomerID, то как, используя две TTable, устроить сортировку по полю Field1? То есть чтобы, переключая заказчиков, мы видели соответствующие заказы, отсортированные по Field1.

Понимаю, что вопрос, наверное, ламерский, но у меня какие-то пробелы в области индексов...


Anatoly Podgoretsky   (2004-10-31 00:56:00) [1]

Morrison ©   (30.10.04 13:23) [3]
MasterDetail это и есть фильтрация по полую связи, только автоматическая, отсюда и невозможность сортировки. Делай ручную фильтрацию и сортируй как тебе угодно.


Morrison   (2004-10-30 13:23:00) [2]

Orders... Внешние ключи... хм... Типа я лажанулся? Ну ладно :)

То, что с запросами все гораздо проще -- это я знаю. Просто неохота всю программу переделывать под запросы. Но со связанными таблицами, я так понял, этот номер не пройдет (без фильтрации)?


Anatoly Podgoretsky   (2004-10-30 11:50:00) [3]

Morrison ©   (30.10.04 00:36)  
Убрать связь и использовать фильтрацию или запросом или таблицей.


сергей1   (2004-10-30 10:58:00) [4]

зачем TTable, лучше query.

procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
var id:string;
begin
id:=form1.ADOQuery1.FieldByName('CustomerID').AsString;
form1.ADOQuery2.SQL.Text:='select * from Customs where CustomerID=' + quotedstr(id) + ' order by field1';
form1.ADOQuery2.Open;
end;

здесь в ADOQuery1 содержиться таблица Customers, а ADOQuery2 получает заказы, исходя из выбранного заказчика.

P.S. Заказы по английски звучат как Orders.

P.P.S. А про индексы не волнуйся, мало-ли у кого какие пробелы, вот я например до сегодняшнего дня даже
      и не подозревал, что внешние ключи можно называть индексами


Наверх

Титульная страница Поиск, карта сайта Написать письмо