CftClub.ru
Клуб специалистов ЦФТ-Банк

Печать результатов фильтра (продолжение)
На страницу 1, 2, 3  След.
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 06:38   Печать результатов фильтра (продолжение) Ответить с цитатой
Полезность: Нет оценки
Всем доброго времени суток!
Может кто знает - какое ограничение по размеру на индекс таблицы ссылок (this(i)) списочной операции.
Ситуация такая - при запуске списочной операции, обрабатывающей выбранные строки представления, для кол-ва ориентировочно более 2800 (такое кол-во видимо переменное, т.к. таблица ссылок есть наверное ни что иное как строковый массив ограниченной длины, но вот какой?) this.count возвращает 0.
Что бы сделать для работы с большим кол-вом строк???
(да и еще, почему то когда происходит описанная ситуация, параметры операции не принимают указанных в свойствах дефолтовых значений). Помогите ...
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеВт Авг 05, 2008 07:25    Ответить с цитатой
Полезность: 2
Помнится, была в ТЯ проблема с большим списком экземпляров для списочной операции. Только не знаю - правили это или нет. Видимо, нет.

Вижу варианты:
1. Запускать списочную над меньшим количеством экземпляров.
2. Использовать групповую операцию. Экземпляры для работы отбирать из этого же представления + условия, наложенные пользователем в операции-фильтре при входе в представление.
3. Может окажется полезным свойство простой операции
Цитата:
Допускает групповую обработку экземпляров

Свойство недоступно для редактирования для операций типа Конструктор, Групповая, Библиотечная, Списочная, Фильтр и Триггер.

При наличии данного признака при выполнении операции применительно к группе выделенных экземпляров не производится дополнительный запрос на обработку каждого экземпляра.
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Авг 05, 2008 07:50    Ответить с цитатой
Полезность: Нет оценки
насколько я помню.. было гдето в описани ТЯ ограничение на this около 200 экземпляров.. но это было примерно около года назад.. счас может уже исправлено.. точно не скажу
_________________
всегда есть как минимум 2 выхода
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 12:11    Ответить с цитатой
Полезность: Нет оценки
lexus пишет:
Использовать групповую операцию. Экземпляры для работы отбирать из этого же представления

чет туплю видимо, а каким образом?
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеВт Авг 05, 2008 12:26    Ответить с цитатой
Полезность: Нет оценки
Код:
begin
Select t1(t1.[ID]
        ,t1.[C_3]   : CRT_DT
        ,t1.[C_14]   : OBJTYPE
        ,t1.[REF4]    : USER_CRT
        )   in VW_CRIT_TYPEBTRT01%rowtype
where
<...>


Первый попавшийся пример со схемы...

Либо еще в pl/sql вставке можно заселектить из вьюшки. Хотя, не уверен, может здесь придется временные таблицы использовать.

PS Счас только обратил внимание, что мы коллеги Laughing
Вот, блин, большая организация. Ты в Ебурге?
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 12:35    Ответить с цитатой
Полезность: Нет оценки
lexus пишет:
Первый попавшийся пример со схемы...

PS Счас только обратил внимание, что мы коллеги Laughing
Вот, блин, большая организация. Ты в Ебурге?


Это понятно, но НАДО обрабатывать только записи из результата применения пользователем фильтров к представлению (те, которые по alt+3), посоветовали списочной операцией, но напаролся на ограничения. Не писать же собственную систему фильтров, да и пользователь ХОЧЕТ видеть записи перед запуском операции.

п.с.: ага, в ебурге
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеВт Авг 05, 2008 12:38    Ответить с цитатой
Полезность: Нет оценки
Я вот и оговорился во втором пункте.
Фильтры - те, которые наложены в операции типа фильтр на вьюхе.
А вот как alt+3 шные фильтры выцепить из операции - не знаю Sad
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 12:40    Ответить с цитатой
Полезность: Нет оценки
а можно как то для выделенных строк представления запустить простую операцию, но так чтоб пользователю не надо было нажимать Ок соответственно кол-ву выделенных элементов раз
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Авг 05, 2008 12:46    Ответить с цитатой
Полезность: Нет оценки
lexoos пишет:
а можно как то для выделенных строк представления запустить простую операцию, но так чтоб пользователю не надо было нажимать Ок соответственно кол-ву выделенных элементов раз

это врядлиSad... скорее всего тока списочная
_________________
всегда есть как минимум 2 выхода
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 12:47    Ответить с цитатой
Полезность: Нет оценки
Капец, щас лопнет мосг
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Авг 05, 2008 13:02    Ответить с цитатой
Полезность: Нет оценки
попробуй через списочную... тока сортировку с сортировкой придется немного помудритьSad
_________________
всегда есть как минимум 2 выхода
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеВт Авг 05, 2008 13:08    Ответить с цитатой
Полезность: Нет оценки
Отсекать во вьюхе по 200 записей. Прогонять списочную. И надо, чтобы списочная обработанные уже отмечала, чтоб второй раз не брать. Бр-р Crying or Very sad Эт меня понесло уже, похоже. Надо проще решение искать... Rolling Eyes
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Авг 05, 2008 13:36    Ответить с цитатой
Полезность: Нет оценки
lexus пишет:
Отсекать во вьюхе по 200 записей. Прогонять списочную. И надо, чтобы списочная обработанные уже отмечала, чтоб второй раз не брать. Бр-р Crying or Very sad Эт меня понесло уже, похоже. Надо проще решение искать... Rolling Eyes
странные бывают иногда требования у бизнеса... эх.. по идее сделать просто фор по представлению и все... тока вот он расходиться может с тем что юзер на экране видит..
_________________
всегда есть как минимум 2 выхода
lexoos
Участник - экстремал


Вступление в Клуб: 06.11.2007
СообщениеВт Авг 05, 2008 14:19    Ответить с цитатой
Полезность: Нет оценки
зы - еще одно возможное решение - пользователь фильтрует представление, с помощью стандартной печати печатает результат в файл, затем запускает операцию формирования отчета, где указывает расположение сформированного файла печати, операция грузит данные и формирует отчет в соответствии с утвержденными формами.
Какие мнения?
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеВт Авг 05, 2008 14:28    Ответить с цитатой
Полезность: Нет оценки
lexoos пишет:
зы - еще одно возможное решение - пользователь фильтрует представление, с помощью стандартной печати печатает результат в файл, затем запускает операцию формирования отчета, где указывает расположение сформированного файла печати, операция грузит данные и формирует отчет в соответствии с утвержденными формами.
Какие мнения?

у меня тока одно... этож как надо ненавидеть юзера чтоб ему это предложитьSmile
а если серьезно.. то как вариант очень даже неплохо
_________________
всегда есть как минимум 2 выхода
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
На страницу 1, 2, 3  След.
Страница 1 из 3

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru