Страница 1 из 1

Сортировка данных

Добавлено: 09 сен 2015, 07:56
Marisha_P
Здравствуйте. Подскажите, пожалуйста, как правильно организовать сортировку. У меня есть запрос, который выводит спецификацию актов на услуги, работы из снабжения

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

select
*,
(SpSopr.KOLFACT*SpSopr.Price) (FieldName = Stoim),
(SpSopr.SUMNDS+SpSopr.KOLFACT*SpSopr.Price) (FieldName = StoimNds)
from
   fpco (readonly),
   exclassval exclassvalRes,
   exclassseg exclasssegRes,
   exclassval exclassvalSt,
   exclassseg exclasssegSt,
   Pick,akt,SoprOrdB
where
((
     Katsopr.nrec     == SpSopr.cSopr
and  bdate           <<= KatSopr.dsopr   (noindex)   //фильтра на даты
and  edate           >>= KatSopr.dsopr   (noindex) 
and  word(111)        == KatSopr.vidSopr            //акты на прием услуг - снабжение
and  KatSopr.nrec     == SpSopr.cSopr
and  SpSopr.cMcUsl    == KatUsl.nrec
and  KatSopr.cOrg     == KatOrg.nrec                //контрагент
and  KatSopr.cDogovor == Dogovor.nrec               //договор
and  KatSopr.cOtvPodr == fpco.nrec                  //центр ответственности
and  Spsopr.nrec      == SoprOrdB.cSpSopr           //мвз
and  SoprOrdB.cPodr   == KatPodr.nrec

//----------код статьи---------------
      and SpSopr.nrec                  == exclassvalSt.crec
      and 1110                         == exclassvalSt.wtable
      and 217                          == exclassvalSt.classcode
      and exclassvalSt.cclassseg       == exclasssegSt.nrec

//----------код ресурса--------------
      and SpSopr.nrec                  == exclassvalRes.crec
      and 1110                         == exclassvalRes.wtable
      and 222                          == exclassvalRes.classcode
      and exclassvalRes.cclassseg      == exclasssegRes.nrec
))
  Condition on_MarkRes as SearchMarker(MarkRes, exclassvalRes.cclassseg ,IndexNo )
  Condition on_MarkOrg as SearchMarker(MarkOrg, KatSopr.cOrg ,IndexNo )
;


и мне нужно данные отсортировать по KatPodr.nrec. Если добавляю order, то и сортировки нет, и Condition перестают отрабатывать:(

Re: Сортировка данных

Добавлено: 09 сен 2015, 09:59
Алексей
Я обычно не мудрствую, создаю таблицу в памяти, наполняю её данными и вывожу по нужному мне индексу, который сам же и описываю.

Re: Сортировка данных

Добавлено: 09 сен 2015, 14:32
Marisha_P
я тоже создала, но у меня там несколько индексов..и если указываю нужный - первым, не сортирует:(

Re: Сортировка данных

Добавлено: 09 сен 2015, 15:10
Irina_
Здравствуйте. Тоже часто к таблицам в памяти создаю несколько индексов. А при необходимости сортировки по нужному индексу делаю, например, так:
<имя view>._Loop <имя таблицы в памяти> ordered by index <имя индекса>
{

}
Проблем с сортировкой не встречала.