|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
1.Есть N-е количество условий для фильтрации базавого DW (список). Каждое условие выдает Х критериев для фильтра по ID. Для "нормализации" сбрасываю всё в одно DS-tmp и группирую по ID. Получаю массив групп и перезаливаю DS-tmp, и в итоге DS-tmp с формированными условиями для фильтрации базавого DW. Формирую строку условий фильтра, и в базовом DW результат поиска. Есть лучшее решение, чтобы не задействовать SQL-запросы к БД? 2.В DW поинте можно в ручную набрать данные и потом их зафиксировать. А можно как-то залить извне (не вручную) и зафиксировать? P.S. Хочу маленькую виртуальную БД зашить в РВ и решать какие-то запросы. =) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 21:41 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
Не знаю подойдёт ли, но этот объект может быть полезен - он являет собой dictionary, хранящий различные значения, доступ к которым осуществляется не через номер элемента (как в массиве), а через уникальный текстовый ключ. Можно объявить instance variable типа nvo_parm - до "виртуальной базы данных" далеко, но всё-же... При этом текстовым ключом доступа (key) будет ID, а значением (value) - массив типа string, в котором каждый элемент - один критерий фильтрации. Так как value - это массив, то тип данных для хранения будет any, т.е. надо использовать функции uf_set_a для записи в словарь и uf_get_a для чтения из словаря. Код извлечения критериев из словаря и построения выражения фильтра будет выглядеть примерно так (ну, а код записи накидай сам, используя обратную логику и uf_set_a): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 23:26 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
Да, в словаре можно хранить и готовые выражения фильтрации (а не массивы для их динамического построения) - конечно, в зависимости от нужд того, что надо сделать. В этом случае надо использовать функции uf_set_s для записи в словарь и uf_get_s для чтения из словаря. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 23:29 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
UrsegoНе знаю подойдёт ли, но этот объект может быть полезен.. Интересно, но ссылка на объект (nvo_parm.sru) не работает. У вас его случайно нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2011, 12:58 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
AIS2.В DW поинте можно в ручную набрать данные и потом их зафиксировать. А можно как-то залить извне (не вручную) и зафиксировать? P.S. Хочу маленькую виртуальную БД зашить в РВ и решать какие-то запросы. =) DW painter меню View->Data В окне Data контекстное меню Retrieve. Сохранить и выйти. Видимо, речь идет об этом? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2011, 16:32 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
PL99 , Спасибо за совет, нашёл. P.S. Правда у меня в контекстном меню окна Data нет пункта Retrieve (РВ10.5). Но зато в меню DW painter есть пункт Row->Import, который становится доступным в окне Preview. Так что получилось всё что хотел по второму вопросу темы (2). :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2011, 19:14 |
|
Сбор критериев фильтра DW
|
|||
---|---|---|---|
#18+
AISUrsegoНе знаю подойдёт ли, но этот объект может быть полезен.. Интересно, но ссылка на объект (nvo_parm.sru) не работает. У вас его случайно нет?Упс, пардон... Уже исправил ссылку. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2011, 19:29 |
|
|
start [/forum/topic.php?fid=15&msg=37516540&tid=1335618]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
131ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 274ms |
total: | 494ms |
0 / 0 |