|
|
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
После TDataSet.Insert в TDBGrid добавляется запись выше текущей. Как сделать чтобы новая запись появлялась ниже? Есть ещё методы, кроме того, чтобы перед TDataSet.Insert делать TDataSet.Next? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 16:58 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
.Append ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:04 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
shitikov.Append Append добавляет в конец, а нужно ниже текущей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:38 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Next+Insert ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:46 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
miksoftNext+Insert ? TUnknownЕсть ещё методы, кроме того, чтобы перед TDataSet.Insert делать TDataSet.Next? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:52 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
дык после обновления набора все записи отсортируются по индексу, какая разница куда вставлять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:56 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
В исходниках TDBNavigator подцепиться не к чему, там есть только TDBNavigator.BeforeAction. Там сразу вызов Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 17:58 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Артем_84дык после обновления набора все записи отсортируются по индексу, какая разница куда вставлять? Нужно чисто визуальное решение. При вставке в базу новая запись будет связана с предыдущей. Должно быть визуально похоже на вставку новой записи в ту запись, на которой стоим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 18:02 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown> Insert;и можно написать только нежелательный Next; Ты не понимаешь, что такое Insert (вставка). Вставить можно до. Вставка после - это Append. TUnknown> Нужно чисто визуальное решение. 1. Свой грид 2. IMD. 3. Вставка с учетом сортировки - т.е. со значением поля больше/меньше, чем у текущей записи. P.S. Хотя чем не подходит Next - непонятно. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 18:05 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknownАртем_84дык после обновления набора все записи отсортируются по индексу, какая разница куда вставлять? Нужно чисто визуальное решение. При вставке в базу новая запись будет связана с предыдущей. Должно быть визуально похоже на вставку новой записи в ту запись, на которой стоим. отсортировать (order by) так чтобы она именно так и выводилась ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 18:07 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам2. IMD. 3. Вставка с учетом сортировки - т.е. со значением поля больше/меньше, чем у текущей записи. что такое "IMD"? по форуму упоминается без определения. что нужно заполнить, чтобы после Код: plaintext alex0отсортировать (order by) так чтобы она именно так и выводилась видимо, только после Post? Нужна видимость именно до Post. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 18:34 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown> что такое "IMD"? по форуму упоминается без определения. In-Memory DataSet. TUnknown> что нужно заполнить, чтобы после Insert; пустая запись в гриде TUnknown> рисовалась после текущей ещё до того, как будет Post? 1. В гриде нет никаких записей. Обычные гриды (в т.ч. TDBGrid) отображает записи датасета в том порядке, в котором они идут. Также большинство гридов не сортирует/переставляет записи самостоятельно. 2. До Post есть куча других событий и их обработчиков. TUnknown> Где новая запись будет после Post- в данном случае не важно. Однако... Можно все же поинтересоваться откуда вытекает эта задача и чем принципиально не подходит Next ? P.S. А еще я думал, редактирование "в гриде" наконец кануло в Лету. Ошибался... Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 18:41 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамМожно все же поинтересоваться откуда вытекает эта задача и чем принципиально не подходит Next ? P.S. А еще я думал, редактирование "в гриде" наконец кануло в Лету. Ошибался... Задача- попытка достаточно сложного форматирования информации в стандартном гриде при желательном сохранении редактирования. Грид можно редактировать хотя бы потому, что такая возможность в нём стандартно предусмотрена. Даже сравнительно удобно предусмотрена. А можно не редактировать. Зависит от задачи. За неимением другого метода придётся воспользоваться Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:01 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown Код: plaintext У остальных - где как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:07 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустамчем принципиально не подходит Next ? Его нужно вешать на контрол ввода новой записи, кнопку или TDBNavigator. Хотелось обойтись гридом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:09 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
miksoftУ остальных - где как... Рассматриваем случай SDAC. Там работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:10 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknownmiksoftУ остальных - где как...Рассматриваем случай SDAC. Там работает.И даже дает правильное значение до того, как выбраны все записи? Я бы предложил контролировать EOF. Оно, имхо, как-то понадежнее будет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:12 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
miksoftИ даже дает правильное значение до того, как выбраны все записи? Я бы предложил контролировать EOF. Оно, имхо, как-то понадежнее будет... В данном случае выбираются все записи. EOF на последней записи не работает в случае, если был Next с предпоследней. У меня SDAC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:19 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown> За неимением другого метода придётся воспользоваться > if RecordCount > RecNo then > Next > else > begin > Append ; > Abort ; // волюнтаризм > end ; Не понял этого куска кода. Он не то чтобы неправильный, он просто бессмысленный. TUnknown> Его нужно вешать на контрол ввода новой записи, кнопку TUnknown> или TDBNavigator. Хотелось обойтись гридом. Нет. Еще раз повторяю - у датасета есть вагон событий. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 19:33 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknownУ меня SDAC.локальная сортировка задействована? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2008, 21:27 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам P.S. А еще я думал, редактирование "в гриде" наконец кануло в Лету. Ошибался... Это детская болезнь.. вроде кори.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2008, 10:56 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамНе понял этого куска кода. Он не то чтобы неправильный, он просто бессмысленный. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. в полном виде более понятно? При наличии такого обработчика дбнавигатор визуально вставляет запись ниже текущей записи. Гаджимурадов РустамЕще раз повторяю - у датасета есть вагон событий. как по датасету получить грид, смотрящий на него? Перебирать все компоненты приложения или, в лучшем случае, указанной формы? Про существование TGridDataLink знаю. Пытаюсь сделать это в "общем" виде, когда есть "универсальный" обработчик и он ничего не знает о программе, кроме того, что можно получить через Sender или подобными методами. OracleXTUnknownУ меня SDAC.локальная сортировка задействована? Нет. Были проверены AfterInsert,BeforeInsert,OnNewRecord,OnCalcFields. Никто из них не позволяет при указанном значении поля из IndexFieldNames вставлять запись в грид в требуемом визуальном порядке до Post. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2008, 11:07 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown> в полном виде более понятно? Чуть более. В изначальном варианте Insert не наблюдался. TUnknown> как по датасету получить грид, смотрящий на него? Никак. Потому что его может не быть или их может быть много. Решение перебирать компоненты - одно из возможных. Только вот грид может находиться вообще в другой форме и т.д. Насчет событий - Вы просто не разобрались. Используйте Next. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2008, 13:16 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов РустамTUnknown> в полном виде более понятно? Чуть более. В изначальном варианте Insert не наблюдался. имеется в виду это? Код: plaintext Гаджимурадов РустамTUnknown> как по датасету получить грид, смотрящий на него? Никак. Потому что его может не быть или их может быть много. Решение перебирать компоненты - одно из возможных. Только вот грид может находиться вообще в другой форме и т.д. Какие есть ещё решения кроме перебора компонентов или написания собственных? Гаджимурадов РустамНасчет событий - Вы просто не разобрались. Используйте Next. Код: plaintext 1. 2. 3. Не работает на последней записи! Разве как-то можно "заменить" TDataSet.Insert на TDataSet.Append в процессе выполнения самого инсерта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2008, 13:46 |
|
||
|
[TDBGrid] добавление новой записи _ниже_ текущей
|
|||
|---|---|---|---|
|
#18+
TUnknown> Какие есть ещё решения кроме перебора компонентов или написания собственных? Нормальных - никаких. TUnknown> Не работает на последней записи! Дык и не должно. Кто вам мешает проверить, что запись последняя и не делать Next ? TUnknown> Разве как-то можно "заменить" TDataSet.Insert на TDataSet.Append в процессе выполнения самого инсерта? Можно. Отменить Insert и сделать Append. Предварительно позаботившись о том, чтобы не уйти в рекурсию. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2008, 14:06 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=35666597&tid=2040379]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
147ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 464ms |

| 0 / 0 |
