Помогите сделать сортировку в интерфейсе

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Дарья
Посетитель
Сообщения: 37
Зарегистрирован: 18 авг 2008, 14:18
Откуда: Тюмень
Контактная информация:

Помогите сделать сортировку в интерфейсе

Сообщение Дарья »

Добрый день! Необходимо сделать сортировку по PERSONS.FIO в интерфейсе

Код: Выделить всё

Interface MatPomosh 'Материальная помощь';
 create view V1
  as
  select PERSONS.FIO, CATALOGS.NAME, CATALOGS1.NAME, KATPODR.NAME, FORTUNE.DOCSUM, FORTUNE.DOCNMB, FORTUNE.DOCDATE
  from FORTUNE, PERSONS, APPOINTMENTS, KATPODR, CATALOGS, CATALOGS CATALOGS1, CONTDOC, PARTDOC, TITLEDOC
  where ((FORTUNE.CFTYPE == CATALOGS.NREC and
          FORTUNE.CPERS == PERSONS.NREC and
          PERSONS.APPOINTCUR == APPOINTMENTS.NREC and
          APPOINTMENTS.POST == CATALOGS1.NREC and
          PERSONS.GALDEP == KATPODR.NREC and
          FORTUNE.CFCONT == CONTDOC.NREC and
          CONTDOC.CPART == PARTDOC.NREC and
          PARTDOC.CDOC == TITLEDOC.NREC and
          20 == FORTUNE.WCHOICE (noIndex) and
          1 == TITLEDOC.WSTATUS (noIndex)));
 function SumPer : String;
 {
  var s : String;
  s := DoubleToStr(V1.FORTUNE.DOCSUM, '666''666''666''666.88');
  if (V1.FORTUNE.WATTR1 = 2)
  {
    s := s + '%';
  }
  Result := s;
 }
 Browse B_mat
  Table FORTUNE;
  Fields
   V1.PERSONS.FIO 'Фамилия, имя, отчество': [22], Protect;
   V1.CATALOGS.NAME 'Вид материальной помощи': [30], Protect;
   V1.CATALOGS1.NAME 'Должность': [20], Protect;
   V1.KATPODR.NAME 'Подразделение': [20], Protect;
   SumPer 'Сумма': [10], Protect;
   '№ ' + V1.FORTUNE.DOCNMB + ' от ' + V1.FORTUNE.DOCDATE '№ и дата приказа': [20], Protect;
 end;
end.                                      
Насколько я поняла, сортировка работает только по корневой таблице FORTUNE. А можно сделать сортировку по PERSONS? Заранее спасибо.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

PERSONS должна быть главной
по ней фильтр по ISEMPLOYEE
во from для нее пишите нужный индекс
что-бы лишних записей не было
PERSONS.NREC /== FORTUNE.CPERS
все остальное перчить по вкусу
надежней и быстрее будет работать если выгрузить во времянку.
Дарья
Посетитель
Сообщения: 37
Зарегистрирован: 18 авг 2008, 14:18
Откуда: Тюмень
Контактная информация:

Сообщение Дарья »

Спасибо, все поняла - исправила. Все отлично.
Ответить