![]() |
|
|
![]()
|
|
| santilaas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 322 Регистрация: 28.8.2005 Где: Блага Репутация: нет Всего: нет |
Привет всем!
Firebird1.5.3, FibPlus5.2, Ehlib4.0 Ситуация такая: редактирую записи непосредственно в таблице (т.е. через DBGridEh), другими словами, без использования формы редактирования. Притом все довольно таки примитивно - на соответствующие кнопки пишу: добавить - DM.DataSet.Append; изменить - DM.DataSet.Edit; удалить - DM.DataSet.Delete; сохранить - DM.DataSet.Post; При закрытии формы хочу, чтобы проверялось условие - если запись модифицировалась, тогда предлагать, сохранить изменения перед закрытием или нет. Пишу:
Затем добавляю данные, без сохранения и пытаюсь закрыть форму НО!!! - (проверял отладчиком) - показывает, что DM.DataSet.Modified = False Вопрос: почему? как тогда быть? -------------------- [ |
|||
|
||||
| Palladin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 932 Регистрация: 15.5.2007 Где: Беларусь г.Гомель Репутация: 1 Всего: 17 |
если показывает что false, а тебе обязательно сохранить попробуй обмануть систему, вообщем в любое поле твоей БД, к примеру поле "Фамилия", добавь в любую имеющуюся строку любой символ и сразу его удали, я думаю такие действия приведут к тому что modified будет показывать true:)
я думаю ты понял что я имею ввиду, или можеш просто добавить один пробел в конец любой записи, хуже базе от этого не станет Или вариант создай в БД еще одно поле, которое в программе видно не будет(visible:=false:)) и туда заноси что угодно, после этого точно будет modified = true, да и делай любое из моих предложений, сразу перед вызовом твоего if, т.е. тут:
-------------------- Глуп тот кто полагается на истину авторитета, а не на авторитет истины [color=red]KAV&KIS==Evil[/color] |
|||
|
||||
| santilaas |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 322 Регистрация: 28.8.2005 Где: Блага Репутация: нет Всего: нет |
перед тем, как задать вопрос на форум, я пробовал сделать подобное и Modified действительно устанавливался в True, но по моему мнению при редактировании записи через DBGridEh изменения должны менять Modified в любом случае, и почему этого не происходит не понятно. Т.е. получается вариант с непосредственным редактированием записи единственный возможный?
-------------------- [ |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |