Эффективное использование "быстрых фактов"



Posted by Бутченко Игорь on June 09, 1999 at 02:30:41:

Включение "быстрых фактов" дает ускорение выполнения форм только если ведется поиск в ленте по конкретным полям факта. Eсли во всех полях факта записано "?переменная", то,естественно, почти никакого ускорения не будет. Возникает проблема - как предоставить пользователю в форме задавать условия поиска факта по нескольким полям (причем возможен поиск как по одному полю, так и по нескольким сразу)и в то-же время пользоваться преимуществом "быстрых фактов". Ведь если условий, например, 6, то вариантов их задания будет 2 в 6-й степени,т.е.64. И значит в форме нужно предусмотреть 64 различных записи с операторм Search или total и т.д.
------------------------------------------------------
Поясню на примере:

есть факт отгрузки товара:
fact otgruzka кому,от кого,что,сколько,сумма,номер док-та,склад,менеджер,тип документа

нужно осуществлять поиск по полям:
кому,от кого, что, номер, склад, менеджер, тип документа в разных комбинациях.

если записать
search otgruzka ?кому, ?от кого, ?что, ?сколько, ?сумма, ?номер, ?склад, и т.д.
а потом сравнивать переменные с условием поиска, то ускорение выполнения формы с включением "быстрых фактов" не произойдет (если не считать 1-е поле). А задать поиск по конкретному полю невозможно, потому что заранее неизвестно, какие критерии поиска выберет пользователь либо возможно,если через IF записать столько строк с оператором search,
сколько потребует формула (2 в n-й степени), где n-количесто критериев поиска.

Мне кажется возможность динамически в форме задавать для операторов поиска по какому полю нужно искать, а в каком поле присваивать значение переменной была бы весьма полезной и не только для "быстрых фактов", но и для упрощения написания отчетных форм.


Пpишедшие ответы: