|
разобрать регулярное выражение в default_where
|
|||
---|---|---|---|
#18+
если кому не сложно-просьба оценить выражение Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
код смотрит заполненность 2 дат и 1 поля(:CURR), где можно вводить данные через пробел или запятую - затем парсится. Полаконичней можно написать? Можно советовать книжки и RTFM, но не надо-итак читаю. Хотя сказать, можно сделать получше код или нет. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 09:05 |
|
разобрать регулярное выражение в default_where
|
|||
---|---|---|---|
#18+
На айтемы блока рекомендую ссылаться полностью - :имя_блока.имя_айтема. Вы применяете конкатенацию значений :date1, :date2, :curr с телом default_where (фактически, с телом запроса к базе). Это в большинстве случаев будет приводить к лишним parse при выполнении. Да и бороться со случайными одиночным кавычками вам придется. Можно применять непосредственную ссылку на айтем блока внутри выражения default_where, т.е. например, не: 'tab.field_a = nvl('||:block1.field_a_search_criteria||', 100)' а 'tab.field_a = nvl(:block1.field_a_search_criteria, 100)' Forms, как бы, умный, сам найдет нужный айтем, возьмет его значение и отправит на сервер запрос с соответствующим bind. В случае to_date для строкового литерала настоятельно рекомендуется указывать форматную маску. Вызывает сомнение целесообразность (select min/max from base) в подзапросах, как минимум, с точки зрения производительности. А юзерам будет удобно пользоваться методом ввода :curr через запятую? Может, дружественнее будет им чекбоксики расставить в желаемых валютах по списку? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2014, 14:56 |
|
|
start [/forum/topic.php?fid=51&msg=38539981&tid=1878232]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
335ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 438ms |
0 / 0 |