Текущий архив: 2005.10.30;
Скачать: CL | DM;
ВнизДобавление новых записей НЕ по команде. Найти похожие ветки
← →
quadronik © (2005-09-18 05:11) [0]Заметил такую ерунду.(Дельфи+Access) Создал справочник по моделям авто(модель. двигатель, завод , мощность и пр). Данные отобразил ч/з DBGrid. При нажатии кнопки ДОБАВИТЬ открывается форма для заполнения инфы о новой модели.На форму набросал компоненты из DataControls (TDBEdit, TDBComboBOx и пр.) и кнопки ЗАПИСАТЬ/ОТМЕНА. Так вот если заполнять одно из полей то видно на фоне (на DBGrid) что создалась новая строка и одно из полей сразу приобрело новое значение, хотя кнопка ЗАПИСАТЬ еще не нажата. Получается что эти компоненты СРАЗУ передают значение в базу, а не хранят их до получения команды записать.
Вопрос: как сделать так чтобы данные начали отображаться только после нажатия кнопки ЗАПИСЬ?
зы. Записал процедуру для кнопки
if datamodule1.auto.Modified then datamodule1.auto.Post
Не помогает.
← →
YurikGL © (2005-09-18 10:31) [1]
> Так вот если заполнять одно из полей то видно на фоне (на
> DBGrid) что создалась новая строка и одно из полей сразу
> приобрело новое значение, хотя кнопка ЗАПИСАТЬ еще не нажата.
>
Нужно посмотреть значек слева от записи на твоем гриде. Если там звездочка или значек курсора, то потдвержденя еще не произошло. Если треугольник, то изменение подтвердилось. А так - подтверждение может произойти, например, при перемещени курсора на другую запись.
← →
Anatoly Podgoretsky © (2005-09-18 13:08) [2]Во первых неверные предпосылки, ничего до записи в базу не попадает.
Во вторых весьма просто, не используй один и тот же набор для отображения и для редактирования.
← →
quadronik © (2005-09-19 21:01) [3]Ну да, новая строка отмечается звездочкой. И в этом весь глюк: если закрыть форму редактирования, и переместить курсор( ч/з фильтр ) то вылетает ошибка, в которой сообщается что "..невозможно провести запись... не указано такое то поле...". Так что нужно сделать чтобы при закрытии формы редактирования, кнопкой ОТМЕНА, происходило уничтожение этой строки?
Спасибо.
← →
ANB © (2005-09-19 21:02) [4].Cancel дайтасету и все будет ОК.
← →
quadronik © (2005-09-19 21:48) [5]Простите за мою некомпетентность...Но что такое дайтасет? и можно поподробнее, я с дельфи только 2 месяца...
Спасибо.
← →
ANB © (2005-09-19 21:58) [6]Дайтасет - TDataSet - набор данных, предок компонентов для получения данных. У тебя это - datamodule1.auto.
В кнопке "Отмена" напиши
datamodule1.auto.Cancel и будет тебе счастье.
ЗЫ. Надо бы книжек почитать.
← →
quadronik © (2005-09-19 22:23) [7]Счастье действительно пришло!!!
Спасибо Вам ANB за дельный совет.
ЗЫ. А о книгах я лучше промолчу поскольку это целая головная боль для меня, нет у в нашем городке дельного книжного магазина, а на счет интернет-шопинга... Не люблю оставлять подбробную инфу о себе, тем более в интернете.
Еще раз спасибо. Очень помогли.
← →
ANB © (2005-09-19 22:28) [8]
> quadronik © (19.09.05 22:23) [7]
- зайди в потрепаться, попроси ссылки на халявые библиотеки. Скачаешь в электронном виде. Все легче, чем по хелперу разбираться.
ЗЫ. А откуда ты ?
← →
quadronik © (2005-09-20 03:28) [9]Буду очень благодарен за дополнительные источники.
Я из гИшимбай, Башкортостан. Дельфи изучаю еще 1,5 месяца. Хотя разобрался быстро, потому что уже год как знаю Паскаль. Меня поразила мощь, которой обладает Дельфи (офигел просто).
В данный момент учусь по книге М.Фленова (просто чудо что такие замечательные книги можно найти в интернете).
Параллельно (если есть время) вожусь с ассемблером.
Пока это все. Надеюсь будет больше.
← →
Ильш © (2005-09-20 06:25) [10]
> Меня поразила мощь
ооо! круто! куда поразила??? :))))
> Все легче, чем по хелперу разбираться.
когда как... книга книге рознь...
кстати quadronik я из стерлитамака, так что если что кричи :)
← →
ANB © (2005-09-20 08:31) [11]
> когда как... книга книге рознь...
- лучше таки сначала прочитать книгу (хорошую) на понятном языке, а потом с частностями разбираться по справке.
Страницы: 1 вся ветка
Текущий архив: 2005.10.30;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.051 c