|
|
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Компонента TcxDBVerticalGrid привязана к НД TpFibDataSet и используется просто для вывода данных на экран, для отображения данных. Но появилась нужда добавить 1-2 строки TcxDBEditorRow и заполнить их не из привязанного НД. Создать строку типа cxCombobox или cxTextEdit не проблема, но получается так, что в cxCombobox ничего выбрать нельзя, а в cxTextEdit ничего ввести нельзя ни ручками, ни программно. А очень хочется. P.S. Можно, конечно, заменить сетку на TcxVerticalGrid,но тогда придется все строки заполнять ручками в коде, а мне - леньки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:21 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11, Вычисляемые поля в DataSet ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:52 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
И как мне это поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:56 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11, в событии OnCalcFields датасета этим полям можно присвоить значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 15:55 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Я пока по другому сделал. В строку добавил выпадающую панель и там уже пусть пользователь что-то меняет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:01 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Polesov X11, Вычисляемые поля в DataSet Ему нужны "вычисляемые строки", а не поля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:23 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
строки в данном случае - это поля, ведь это вертикальная сетка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:28 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11, тогда он прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:34 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 P.S. Можно, конечно, заменить сетку на TcxVerticalGrid,но тогда придется все строки заполнять ручками в коде, а мне - леньки Что стоит Единожды написать процедуру, заполняющую Грид по НАИМЕНОВАНИЮ колонок из Датасета ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 22:10 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Не стоит использовать этот вертикальный грид для показа одной строки данных, он для этого не предназначен как нам сказали. Оказывается мы его неправильно используем, он для отображения сразу многих записей :) Т.е отобразить он конечно отобразит, но при обновлении единственной отображаемой строки данных тормозить будет беспощадно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2020, 09:11 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
вертикальная сетка довольно удобна для формы редактирования/добавления/показа записи из базы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2020, 10:21 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Вопрос в том, надо просто отображать пользователю данные или надо еще их редактировать? Если просто отображать, то что может быть проще OnGetDisplayText Editor'а: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Properties = Label, FieldName пустое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2020, 13:57 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Непонятно, как это событие работает, как его правильно использовать, в какие моменты. При открытии формы, при перерисовке... когда оно срабатывает? Ок, сделал строку с выпадающим списком (TcxLookupComboBox) и привязал к НД, выбираю там что-то, но строка пустая, пока она активна, в режиме редактирования. Как только фокус покидает ячейку, вижу результат выбора. Как только щелкаю туда - снова пустая. Для выбора использую событие EditPropertiesCloseUp, где назначаю выбранное значение глобальной переменной. А потом эту глобальную переменную использую в PropertiesGetDisplayText. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 15:21 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Непонятно, как это событие работает, как его правильно использовать, в какие моменты. При открытии формы, при перерисовке... когда оно срабатывает? Вообще я в таких случаях делаю очень прямолинейно и просто - создаю два вертикальных грида. Один DB, второй обычный. В DB-гриде отображаю данные из датасета (чтобы руками не прописывать), а второй обычный грид кидаю на форму ниже, под DB-гридом, прямо вплотную, чтобы оба грида составляли как бы одно целое. Для пользователя внешне это будет выглядеть как один вертикальный грид. Но это работает только в том случае, разумеется, если отображаемые данные и редактируемые данные можно расположить последовательно. Если редактируемые строчки надо вклинить между данными из БД, то этот вариант не подойдёт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 15:41 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Работает и пользуюсь, и вижу, что переменной выбранное в списке значение присваивается, только вот не отображается, пока не выйдешь из режима редактирования. Как только снова щелкаю по строке (по ячейке), значение снова исчезает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 15:43 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Две сетки мне не подходит. Мой пользователь имеет доступ к редактированию визуально части сетки. Т.е. это кагбэ дизайнер формы. Поэтому вот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 15:44 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Ок, сделал строку с выпадающим списком (TcxLookupComboBox) и привязал к НД, выбираю там что-то, но строка пустая, пока она активна, в режиме редактирования. Как только фокус покидает ячейку, вижу результат выбора. Как только щелкаю туда - снова пустая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 16:02 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Перечитайте ТЗ с самого начала. Намекну, что у меня в этой одной строке нет привязки к НД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 16:13 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Перечитайте ТЗ с самого начала. Намекну, что у меня в этой одной строке нет привязки к НД. Но даже если нет привязки, можно создать фиктивное поле в результате запроса и привязаться к нему. Не знаю, правда, как к этому отнесётся Fib, но проверить можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 16:26 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Вы не поняли, это список (ListSource) привязан, т.к. источник отображения списка. А свойство FieldName пустое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 16:35 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
В общем, решение пока такое, но не очень, после выбора значения из TcxLookupComboBox, в событии EditPropertiesCloseUp добавил строку Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 17:02 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Вы не поняли, это список (ListSource) привязан, т.к. источник отображения списка. А свойство FieldName пустое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 17:05 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Возвращаюсь к нашим баранам. НД только для отображения. Поэтому он всегда ReadOnly, т.е. при попытке что-то присвоить полю, будет exception - dataset not in isert or edit mode. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 17:09 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Возвращаюсь к нашим баранам. НД только для отображения. Поэтому он всегда ReadOnly, т.е. при попытке что-то присвоить полю, будет exception - dataset not in isert or edit mode. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 17:58 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Именно с Calculated Fields я и экспериментировал и получил ошибку, вышеуказанную. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 17:59 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Именно с Calculated Fields я и экспериментировал и получил ошибку, вышеуказанную. Какова дальнейшая судьба значений, веденных пользователем? P.S. В FibDataset-е можно определить UpdateSQL, в котором писать в базу только, что нужно. И куда нужно. Только поля должны содержаться в запросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2020, 18:12 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
Генерируется некая http-ссылка и пользователь по ней переходит, если нажмет вторую кнопку. Скажем так. Пользователь выбирает имя бота и переходит к нему по нажатию на кнопку, чтобы было чуть понятней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2020, 09:53 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Генерируется некая http-ссылка и пользователь по ней переходит, если нажмет вторую кнопку. Скажем так. Пользователь выбирает имя бота и переходит к нему по нажатию на кнопку, чтобы было чуть понятней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2020, 11:47 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
не проблема, но где, как отображать выбор, имя бота, ссылку и т.д.? пользователь должен видеть сделанный выбор и возможность нажать кнопку и очень желательно в одной и той же строки сетки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2020, 11:59 |
|
||
|
Присвоить значение строке TcxDBVerticalGrid (ReadOnly DataSet)
|
|||
|---|---|---|---|
|
#18+
X11 Генерируется некая http-ссылка и пользователь по ней переходит, если нажмет вторую кнопку. Скажем так. Пользователь выбирает имя бота и переходит к нему по нажатию на кнопку, чтобы было чуть понятней. В SQL-запрос добавляем фиктивное поле, например: Код: sql 1. На добавленное поле назначаем строку в DbVerticalGrid c EditProperties ComboBox, список которого заполняем, например, в OnCreate формы. Всем строкам, которые нельзя менять, присваиваем Properties.EditProperties.ReadOnly := True; В UpdateSQL DataSet-а пишем холостой запрос, что бы можно было вводить значения: Код: sql 1. 2. Ниже исходные тексты (D-XE7, ежли чо): создание таблицы Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. текст dpr Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. текст pas Код: 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. текст dfm Код: 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. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2020, 12:14 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2037864]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
21ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 317ms |

| 0 / 0 |
