|
|
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Взял пример из Demos\MemTableEh.LifeRestructure. По кнопке AddField там в сетку добавляется поле. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Преобразовал это в свой код таким образом: Код: 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. На строке MemTableSchedule.FieldByName('m1').AsString := '5'; выдает ошибку, что поле m1 не существует. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 10:12 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad, Почему AppendField, а не FieldDefs.Add()? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 10:53 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Gluck99 svnvlad, Почему AppendField, а не FieldDefs.Add()? какая разница, как назвать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 11:18 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Gluck99, разные варианты перепробовал: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Ни один не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 11:22 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Насколько помню, сначала FieldDefs заполняются. Затем Fields и дергается CreateDataSet. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 11:47 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
wadman Насколько помню, сначала FieldDefs заполняются. Затем Fields и дергается CreateDataSet. Очистил все определения полей, которые назначал в дезайн тайме. Написал такой код: Код: 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. 54. 55. 56. 57. 58. 59. 60. 61. Ошибок не выдает, но теперь сетка пустая. До того, как в рантайме создавал поля, хотя бы данные отображались (кроме m1 и mh1). Теперь не отображается ничего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:02 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Нашел так же на просторах интернета, что после всего нужно вызвать DBGridEh1.Columns.AddAllColumns(true); Но, во-первых, у меня не DBGridEh, а tcxGrid, а во-вторых, причем тут сетка вообще, если речь идет о датасетах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:05 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Кстати, с DBGridEh трюк действительно работает. Но надо, чтобы отображалось в tcxGrid (TcxGridDBBandedTableView). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:11 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad Нашел так же на просторах интернета, что после всего нужно вызвать DBGridEh1.Columns.AddAllColumns(true); Но, во-первых, у меня не DBGridEh, а tcxGrid, а во-вторых, причем тут сетка вообще, если речь идет о датасетах. в TcxGrid нужно создавать колонки явно, сам он их не созздаёт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:11 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Все, разобрался, не был подключен DataSource к сетке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:16 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
defecator svnvlad Нашел так же на просторах интернета, что после всего нужно вызвать DBGridEh1.Columns.AddAllColumns(true); Но, во-первых, у меня не DBGridEh, а tcxGrid, а во-вторых, причем тут сетка вообще, если речь идет о датасетах. в TcxGrid нужно создавать колонки явно, сам он их не созздаёт Кстати, на очереди создание колонок в tcxGrid в рантайме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:17 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad Код: pascal 1. А где название у колонки? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:24 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
wadman svnvlad Код: pascal 1. А где название у колонки? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Ну вот здесь вроде как Код: pascal 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:27 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Т.е. кроме FieldDefs, еще надо и у Field название колонки отдельно делать? А почему работает без этого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:28 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad Ну вот здесь вроде как Это не то название, хотя и таблица не запрос, а виртуальная. Сойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:28 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad А почему работает без этого? Я на живом запросе привел пример. Немного иная ситуация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:29 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
wadman, а вот еще вопрос - при повторном вызове процедуры ругается на дубликаты полей. MemTableSchedule.DestroyTable; видимо не помогает. Что надо вызывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:51 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
svnvlad wadman,а вот еще вопрос - при повторном вызове процедуры ругается на дубликаты полей. MemTableSchedule.DestroyTable; видимо не помогает. Что надо вызывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 12:56 |
|
||
|
MemTableEh - динамическое создание полей
|
|||
|---|---|---|---|
|
#18+
Gluck99, Убрал создание TField, тоже работает. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Потом просто вызываю MemTableSchedule.FieldDefs.Clear. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 13:15 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39930989&tid=2038549]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 332ms |

| 0 / 0 |
