|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Рабочий код: Код: pascal 1. 2. 3. 4.
Необходимо ДИНАМИЧЕСКИ делать тоже самое. Никак не получается. Типа Код: pascal 1. 2.
Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 11:39 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Трудность в том, что параметр требуется типа array of TVarRec ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 11:48 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Код: pascal 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 13:32 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Kazantsev Alexey Код: pascal 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 14:39 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
_Vasilisk_ А само оно не умеет? Умеет, когда компилятор сам параметры формирует. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 15:41 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Спасибо большое. Код рабочий, проверил. Но моя проблема намного шире - параметры могут любого типа по полю базы данных. То есть проверять и тип ещё - это слишком ( скажем, дата или деньги ). Буду пользоваться Locate. Там параметры нормального вида ( первый - текст с названием полей и второй - нормальный массив ). Заметил правда, что FindKey перебирает 100.000 записей за 5 секунд, а Locate - за 10. Тот же самый набор. Непонятна-а-а. Спасибо большое. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 22:25 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
bzums Но моя проблема намного шире - параметры могут любого типа по полю базы данных. То есть проверять и тип ещё - это слишком ( скажем, дата или деньги ). Достаточно написать функцию FieldValueToVarRec и заполнять массив параметров с её помощью. Ещё можно попробовать вариант с вариантами :) Код: pascal 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. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2021, 23:54 |
|
FindKey ( и динамическое изменение IndexFieldNames и параметра)
|
|||
---|---|---|---|
#18+
Kazantsev Alexey, Спасибо тебе, добрый человек. Работает. Вариант с вариантами корректно разбирает все типы полей (по крайней мере, FindKey, корректно принимает и обрабатывает параметр). Спасибо большое. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2021, 08:39 |
|
|
start [/forum/topic.php?fid=58&msg=40088824&tid=2037128]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 163ms |
0 / 0 |