Дескрипторы в интерфейсе

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

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

Ответить
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Дескрипторы в интерфейсе

Сообщение charly »

Помогите кто может пожалуйста.
Мне необходимо вывести дескрипторы в интерфейсе, но необходимо их отсортировать. Таблица tuneval не имеет индекса по полю strval, и соответствеенно сортировки не происходит, а менять структуру БД с добавлением нового индекса запрещено.
(но на тестовой базе добавлял индекс все ОК сортирует).
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

Пиши свой интерфейс, наполняй временную таблицу данными, сортируй как хочешь.
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Сообщение charly »

С этим я тоже разобрался,
но тогда надо постоянно эту таблицу обновлять(я имею ввиду временную), или я не так понял?

может все таки есть еще какой-нибудь способ?
Goblin
Местный житель
Сообщения: 474
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Сибирь-матушка
Контактная информация:

Сообщение Goblin »

Да не запрещено добавлять - нежелательно просто ввиду необходимости контроля за грядущими изменениями.
Главное перед патчами или перед сменой релиза проверять - а не происходит ли там добавление/удаление индексов в эту таблу ...
В таком случае свой индекс дропать, делать нужные действия по переходу на новый патч/релиз , потом снова добавить ..
А так - особых хлопот не даст, добавленный индекс встанет последним, никому мешать не будет и есть просить не станет
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Сообщение charly »

Да я имел ввиду запрещено не Галактикой, а мне запрещено изменять структуру БД, поставлена задача возможными путями обойти эту проблему.
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

А что конкретно вы хотите сделать? просто отображать в интерфейсе списко отсортированных дескрипторов? получить отчет?
Или он ещё что-то должен делать?
Интерфейс свой (написаный) или стандартный?
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Сообщение charly »

необходимо сделать отчет который выводит счет фактуры по дескриптору, т.е. менеджер выбирает нужный дескриптор из интерфейса и получает N-ое количество счет-фактур за месяц, за год или за два, существует еще несколько ограничений.
Пока мы были на 585 все работало и дескрипторы в интрефейсе сортировались, как только перешли на 712 интерфейс стал пустым, проверял на 585 еще раз все работало,
немного изменил его и дескрипторы выводятся, но как только сортируешь их, выводится толлько последний.
вот мне и интерсно можно как-нибудь еще отсортировать эти дескрипторы именно в интерфейсе

текст интрефейса:
Interface int_akts_descr 'выбор дескриптора' cyan, doaccept;
var
d2:comp;
x2:word
c2:string;
parameters d2, x2, c2;
create view tuneva as select
tuneval.strval, x$users.XU$LOGINNAME
from tuneval(memory, autoload), x$users
where((tuneval.cuser==x$users.atl_nrec))
and d2=tuneval.ctune
and x2=tuneval.obj
and ''<>tuneval.strval
order b1 by tuneval.strval
;
browse b1;
table tuneval;
fields
tuneval.strval 'Дескриптор':protect ;
X$USERS.XU$LOGINNAME 'Логин пользователя':protect;
end;
handleevent
cmdefault:{
SetTableBackOrderIn(tntuneval, true);
RereadRecord (tntuneval);
c2:=tuneval.strval;
}
end;
end.

d2- параметр, определяющий что значение настройки ссылается на настройку ДЕСКРИПТОР
X2- ТИП ОБЪЕКТА, номер оффиса
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

попробуй на внешней выгрузке сделать сотрировку
order b1 by tuneval.strval -> order b1 EXTERNAL by tuneval.strval;
SetTableBackOrderIn(tntuneval, true); -> tuneva.SetOrder(tuneva.tib1)
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Сообщение charly »

К сожалению так тоже не получается,
но буду искать...
Slavik
Постоянный гость
Сообщения: 69
Зарегистрирован: 21 авг 2005, 19:37
Откуда: Ukraine, Kharkov
Контактная информация:

Сообщение Slavik »

создаем вьюшку в которой прописываем сортировку по нужному полю и подключаем ее к интерфейсу.
charly
Новичок
Сообщения: 25
Зарегистрирован: 26 окт 2005, 12:56

Сообщение charly »

Slavik,
а можно по поводу вьюшки немного по подробнее?
пожалуйста.
Slavik
Постоянный гость
Сообщения: 69
Зарегистрирован: 21 авг 2005, 19:37
Откуда: Ukraine, Kharkov
Контактная информация:

Сообщение Slavik »

create or replace view UsersDescr as
select ... from ... order by ...
Slavik
Постоянный гость
Сообщения: 69
Зарегистрирован: 21 авг 2005, 19:37
Откуда: Ukraine, Kharkov
Контактная информация:

Сообщение Slavik »

например:

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

create or replace view UsersDescr as 
select u.atl_nrec puser, nvl(u.xu$fullname,' По умолчанию') fullname, nvl(u.xu$loginname,'_default') login
, max(decode(tv.fctune,'80000000000001B3',tv.fstrval)) descr 
, max(decode(tv.fctune,'80000000000001B4',tv.fstrval)) desgr
, max(gd.fname) fname
from gal.tuneval tv, gal.x$users u, gal.grdescr gd
where tv.fcuser=u.atl_nrec(+) and tv.fctune in ('80000000000001B4', '80000000000001B3') 
and tv.fstrval=gd.fdesgr(+)
group by u.xu$fullname, u.xu$loginname
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Сообщение Maverick »

:mad:
при чем здесь Ораклиная вьюха?
Человек пытаетес средствами ВИП сделать интерфейс и отчет...
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
Ответить