Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
ВнизОчистка DBGRID-а Найти похожие ветки
← →
Sirus (2006-09-13 13:12) [0]Подскажите, знатоки, как очистить сетку DBGRID-а от введенных данных. Допустим у меня есть кнопка на форме Отменить и я хочу при нажатии на нее убрать из сетки DBGRID-а все данные не записывая их в данную. Подскажите примерный код такой операции.
Благодарю за внимание.
Сайрус
13.09.2006
← →
Некто_Аполло (2006-09-13 13:15) [1]DB_Grid прикреплен к таблице базы данных. Тебе нужно ее очистить.
← →
Sergey13 © (2006-09-13 13:20) [2]> [0] Sirus (13.09.06 13:12)
Ты вроде давно уже сюда пишешь, но уровень вопросов так и не растет.
По сути - ты хочешь побрить зеркало. Нет в гриде данных.
← →
Sirus (2006-09-13 14:31) [3]То, что данных в DBGRID-e нет - это я усвоил. Но не зависимо от этого проблема остается. Можно сформулировать ее иначе : как очистить экран формы с DBGRID-ом, убрав из сетки все введенные данные, т.е. показать пустой DBGRID. Внятного ответа я не получил, а неконкретные рассуждения пролемы не решают. Кстати, в таблицу я ничего пока не ввожу, так что и очищать нечего. Мне просто надо отменить набранные данные и произвести сопутствующие этому операции ( очистить сетку DBGRID-а).
С уважением Сайрус
13.09.2006
← →
StriderMan © (2006-09-13 14:34) [4]очисть DataSet, прицепленный к этому гриду.
← →
Elen © (2006-09-13 14:47) [5]
> StriderMan
TDataSet.Active:=false? не пойдет?
← →
Sergey13 © (2006-09-13 14:50) [6]> [3] Sirus (13.09.06 14:31)
> Кстати, в таблицу я ничего пока не ввожу, так что
> и очищать нечего.
А куда же ты вводишь, скрытный ты наш?
← →
Virgo_Style © (2006-09-13 15:11) [7]DataSet.Cancel, что ли?
← →
Sirus (2006-09-13 15:29) [8]Пока из предложенного ничего не катит. Выдает, что методы в форме не поддерживаются.Так что вопрос не такой простой как кажется кое-кому. Может кто детальней объснит все тонкости.
Сайрус.
← →
Sergey13 © (2006-09-13 15:35) [9]> [8] Sirus (13.09.06 15:29)
> Может кто детальней объснит все тонкости.
Это сложно, так как ты пока детально не объяснил что делаешь.
← →
MsGuns © (2006-09-13 15:40) [10]>Некто_Аполло (13.09.06 13:15) [1]
>DB_Grid прикреплен к таблице базы данных.
Ну да, как штык к автомату.
>Тебе нужно ее очистить.
Замечательный совет ;)))
>Sirus (13.09.06 15:29) [8]
>Пока из предложенного ничего не катит. Выдает, что методы в форме не поддерживаются.Так что вопрос не такой простой как кажется кое-кому. Может кто детальней объснит все тонкости.
Сайрус.
Вопрос возник от непонимания сути организации работы с базами данных в Delphi
"Очитстить" грид можно многими способами, начиная от переоткрытия запроса с предикатом
Where Field1<>Field1
и заканчивая простым отключением датасета от грида
DBGrid1.DataSource.DataSet := nil;
Главное же я так и не понял, зачем грид нужно ОЧИЩАТЬ ?
Если речь идет о заполнении некоторых документов (типа счета-фактуры) "с нуля", то для этого ГРИД очищать не надо, просто :
- либо открывется запрос на несуществующую детализацию мастер записи (если в таблицу заголовков счетов была только что добавлена новая запись, то в детал-таблице у нее не будет ни одной строки-записи и запрос вернет пустой НД), если надо вносить изменения в БД "по ходу" ввода информации (через кэш либо напрямую сразу)
- либо надо работать через компоненты, напрямую с БД не связанные, а "по кнопке" записывать отдельным запросом порцию изменений либо сразу весь документ с полной заменой старого содержимого.
← →
MsGuns © (2006-09-13 15:42) [11]>StriderMan © (13.09.06 14:34) [4]
>очисть DataSet, прицепленный к этому гриду.
Можно поподробнее ?
>Virgo_Style © (13.09.06 15:11) [7]
>DataSet.Cancel, что ли?
И что будет ?
← →
Sirus (2006-09-13 16:24) [12]Спасибо за предложенные варианты, но все страдают одним серьезным недостатком. Отключая DBGRID от DataSet они очищают даже то, что не следует убирать (наименование полей таблицы ). Получается не очень красиво.
Сайрус.
← →
MsGuns © (2006-09-13 16:30) [13]>Sirus (13.09.06 16:24) [12]
>Отключая DBGRID от DataSet они очищают даже то, что не следует убирать (наименование полей таблицы ). Получается не очень красиво.
Сайрус.
Поставьте заведомо ложный фильтр и будет вам пустой грид с шапкой. Только вот на вопрос а зачем это все ответ не получен.
← →
Virgo_Style © (2006-09-13 17:06) [14]MsGuns © (13.09.06 15:42) [11]
И что будет ?
В ответ на
> Кстати, в таблицу я ничего пока не ввожу, так
> что и очищать нечего.
телепатор предположил, что надо отменить то, что пользователь натворил в режиме редактирования, до post. Насколько мне известно, именно это и произошло бы.
← →
Slym(RO) (2006-09-14 10:36) [15]LockType:=ltBatchOptimistic
CancelBatch
UpdateBatch
← →
MsGuns © (2006-09-14 11:34) [16]>Virgo_Style © (13.09.06 17:06) [14]
>телепатор предположил, что надо отменить то, что пользователь натворил в режиме редактирования, до post. Насколько мне известно, именно это и произошло бы.
Из сабжа явно следует, что надо очистить "грид", т.е. удалить (из буфера, из таблицы, с глаз долой - автор не удосужился пояснить, а наводящий вопрос и вовсе проигнорировал), и все введенные на сей момент записи. Коих может быть две, десяток, сотня... Т.е. методы над одной записью (к коим и относятся упомянутые Вами Post и Cancel) тут явно не при чем. Т.е. проблемы ни разу не решают.
Пока автор четко не скажет ЧТО ЕМУ НАДО СДЕЛАТЬ, дальнейшее обсуждение бессмыслено.
← →
Virgo_Style © (2006-09-14 11:53) [17]MsGuns © (14.09.06 11:34) [16]
Из сабжа явно следует, что надо
Sirus (13.09.06 13:12)
очистить сетку DBGRID-а от введенных данных.
Поскольку очистка сетки от данных - это заведомо странная идея, каждый напрягает свою фантазию, как может.
> Пока автор четко не скажет ЧТО ЕМУ НАДО СДЕЛАТЬ,
> дальнейшее обсуждение бессмыслено.
Ну тогда, с Вашего позволения, дискуссию с Вами заканчиваю %-)
← →
аматор © (2006-09-14 13:56) [18]Привет...
Используйте таблицу в памяти, на диске. Потом заносите из той таблицы в базу че душа пожелает. Плюс, если используете сервеный вариант, ВААБЩЕ лафа. Еще, кажись, клиент датасет есть (это приблизительный перевод :)). Вариантов море. Но, очистить, :), мона перерисовать дбгрид. А вообще зачем в инете столько книг лежит? Да в клиет датасете есть фишка, дельтой обзывает, она показывает какие изменения вы произвели.
← →
Anatoly Podgoretsky © (2006-09-14 19:23) [19]MsGuns © (14.09.06 11:34) [16]
Пока автор четко не скажет ЧТО ЕМУ НАДО СДЕЛАТЬ, дальнейшее обсуждение бессмыслено.
Автор не скажет, как сказил он тут давно, но как будто и не приходил.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.012 c