Главная страница
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.073 c
1-1129025202
Alex_Mel
2005-10-11 14:06
2005.10.30
Как корректно создать несколько экземпляров формы...


1-1128624589
Gall
2005-10-06 22:49
2005.10.30
Иконки приложения


1-1128412642
Woolen
2005-10-04 11:57
2005.10.30
TApplicationEvents.OnMessage работает не совсем понятно


14-1128921696
Ega23
2005-10-10 09:21
2005.10.30
С днем рождения! 10 октября


4-1124894011
Суслик
2005-08-24 18:33
2005.10.30
Теоретический вопрос по перемещению окон.