Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.49 MB
Время: 0.032 c
1-1128412343
Ищущий
2005-10-04 11:52
2005.10.30
не показываются подсказки


4-1125151602
Freez
2005-08-27 18:06
2005.10.30
Узнать имя текущего процесса


4-1124883088
DMitryFox
2005-08-24 15:31
2005.10.30
Непонятки с адресацией


1-1128591758
Dimich1978
2005-10-06 13:42
2005.10.30
Управлять чужой менюшкой лежащей в трее


5-1105589926
farkhod
2005-01-13 07:18
2005.10.30
Компоненты TTextClient и TTextServer