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

Внешняя выгрузка

Добавлено: 27 сен 2007, 18:45
varvara
В ARD-отчете создаю таблицу

.Create VIEW rab_
AS SELECT catalogs.name
where (('С'==persons.ISEMPLOYEE and nrec_==persons.DEPARTMENT and nrec_==catalogs.nrec
and persons.appointcur==appointments.nrec and appointments.staffstr==staffstruct.nrec
)) order by catalogs.code, staffstruct.SEQNMB;

обращение к таблице происходит в цикле, меняютя значения nrec_


.{table 'rab_'
^
.}


Но отчет срабатывает так, как-будто nrec_ не меняется, значение первого Nrec_ - для всех итераций. Без внешней выгрузки (order by catalogs.code, staffstruct.SEQNMB) работает нормально. Проблема решается созданием таблицы в памяти.А можно обойтись без
cоздания т-цы?

Добавлено: 27 сен 2007, 19:12
edward_K
внешняя выгрузка она на то и внешняя выгрузка что срабатывает раз при первом обращении. Можно если не будет внешней выгрузки. В даном случае сортировка по Catalogs.code бесмысленна. Главной таблой должна быть StaffStruct а не Persons. А в ней есть индек STAFBYDEP.
напишите
nrec_ ==StaffStruct.department and
... == appointments ...
and appoinmetns.person == persons.nrec
)) order by StaffStruct.department, StaffStruct.seqnmb
Если надо получить что то осмысленное, то должна быть еще одна вьюха с catalogs и бежать сначала по ней, а внутри по этой.

Добавлено: 28 сен 2007, 13:54
varvara
Спасибо, что касается внешней выборки понятно.Что касается осмыслености, задача так или иначе решена(хотелось узнать на будущее),но хочу уточнить, я получаю выборку, отсортированную по коду подразделения(а не Nrec-у)и порядковому номеру внутри него,а Nrec-и подразделений находятся в маркере по интерфейсу pickcatalog2.