|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.04.2011, 22:54 | #1 |
Пользователь
Регистрация: 24.03.2011
Сообщений: 19
|
Создание кнопки для сохранения записи
Доброго времени суток!
Создал форму на основе таблицы. Как сделать так, что бы данные добавлялись в таблицу только после нажатия кнопки, например "Сохранить данные" Если переходить с поля на поле по клавише Tab и после того как оказался на последнем элементе формы нажать Tab еще раз, то запись автоматически сохраняется в таблице, а курсор попадает на первое поле формы. Как изменить такое поведение формы, т.е. пока не будет нажата кнопка "Сохранить данные" новая запись в таблице не создавалась. Может быть необходимо изменить какие то свойства для формы? И еще вопрос. Если необходимо изменить какую нибудь запись в таблице, например за определенную дату, то как это можно сделать используя форму? Как я понимаю сначала необходимо создать запрос с параметрами и на основе этого запроса создать форму. Спасибо! |
17.04.2011, 09:28 | #2 |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 254
|
в окне свойст для формы запретить добавление строк
и написать обработчик события Клик по кнопке. (Подробнее в личку, связь в профиле)
помогать студентам - моя вторая профессия
|
17.04.2011, 15:40 | #3 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 487
|
|
17.04.2011, 21:05 | #4 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 19
|
Цитата:
Я создаю кнопку, запускается мастер, выбираю пункт обработка записей, далее сохранить запись. Как я понимаю это то что мне нужно. И еще. Я открываю форму, ввожу данные в одно из полей, закрываю форму (не нажимая кнопки сохранить запись). Открываю таблицу, а там уже создана запись. Подскажите пож-ста какие свойства формы необходимо изменить что бы данные в таблицу сохранялись только после нажатия кнопки "сохранить запись" |
|
17.04.2011, 21:29 | #5 | |
Форумчанин
Регистрация: 07.03.2010
Сообщений: 796
|
Цитата:
Не надо привязывать поля формы к записям таблицы, а собрать необходимые данные с полей и программно записать их в таблицу.
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
|
|
19.04.2011, 00:19 | #6 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 19
|
Цитата:
И что значит собрать записи с полей и программно записать их в таблицу. Расскажите пож-ста по подробней |
|
19.04.2011, 10:00 | #7 |
Пользователь
Регистрация: 14.09.2010
Сообщений: 68
|
Доброго времени суток!
Например, на форме есть поля TabNum, LName, FName, MName. Есть таблица Persons, с полями Tabnum(числовое), LastName, FirstName, MidName (текстовые). Тогда запрос, вставляющий запись в таблцу, выглядит так: strSQL = "INSERT INTO Persons (TabNum, LastName, FirstName, MidName) " & _ "VALUES (" & TabNum.Value & ", '" & LName.Value & "', '" & _ FName.Value & "', '" & MName.Value & "')" При нажатии кнопки "Сохранить" проверяется заполнение нужных полей, формируется строка запроса на добавление (аналогично примеру) и запускается командой CurrentDB.Execute (strSQL) (для DAO-модели доступа к данным) |
21.04.2011, 10:45 | #8 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 19
|
Цитата:
|
|
03.05.2011, 11:59 | #9 |
Пользователь
Регистрация: 14.09.2010
Сообщений: 68
|
Доброго времени суток!
Для Вашей формы необходимо в свойствах кнопки "Сохранить" на вкладке события в событии "Нажатие кнопки" выбрать [Процедура обработки события] и в окне редактора кода VBA ввести следующий код: Код:
Называть поле с датой Data не есть хорошо - оно может быть интерпретировано как служебное. (Data, кстати - это данные, а дата - Date :-). Лучше называть производными словами, например, InputDate, InsertDate и т.д. Называть поля в таблице и по-русски, и по-английски тоже неправильно, особенно если они могут быть прочитаны и так и так - Касса? На форме названия полей (не подписи!) лучше делать в одно слово и начинать с буквы. Идеально - если поле на форме называется также, как и поле с данными в таблице БД - это открывает простор для манипулирования с кодом и другие интересные вещи. И конкретно для Вашего случая нужны две формы - на одной (которая будет для добавления) данные в полях нужно очистить (чтобы поле имело вид СВОБОДНЫЙ) |
04.05.2011, 23:10 | #10 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 19
|
Цитата:
Опять куча вопросов. Если не трудно объясните. Создал таблицу "Главная касса" - это как бы сводная таблица, в которой должны сохраняться суммарные данные из других таблиц. Например, в поле "Банк" должна сохраняться сумма денег которые сданы в банк, а точнее сумма полей из таблицы "инкассация" поля "5000руб" "1000руб" "500руб". Это числовые поля т.к. в них вносится не сумма денег, а количество купюр соответствующего номинала. Т.е. число в поле должно умножаться на номинал купюры и сумма этих полей должна сохраняться в поле "Банк" таблицы "Главная касса" Еще хотел узнать нужно ли создавать ключевые поля "ID" в каждой таблице что бы по ним связать таблицы или связь можно сделать по полям "Дата", т.к. в каждой таблице должна быть только одна запись за каждую дату. И не будет ли осложнений в будущем. Хочу создать несколько форм. Главной будет форма "Главная касса" а из нее будут открываться остальные формы: "Инкассация", "Касса1", "Касса2", "Касса3", "Касса4", а вот как создать эти формы я не пойму. Точнее не понимаю как создать форму "главная касса" или запрос на основании которого должна формироваться эта форма. Дело в том, что я совсем не знаю VBA и пытаюсь сделать без применения оного. Пробовал создавать запрос с вычисляемыми полями, но постоянно вылезают ошибки. Последний раз редактировалось Dmitriy_Egorov; 04.05.2011 в 23:19. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа для сохранения исходников | Blourid | Софт | 5 | 17.01.2012 14:33 |
создание алгоритма сохранения своих данных при работе с программой | street-walker | Общие вопросы Delphi | 1 | 04.05.2009 18:51 |
формат для сохранения окон | vitalik007 | Общие вопросы Delphi | 9 | 26.05.2008 09:24 |
Компонент для сохранения настроек | OrdJONY | Общие вопросы Delphi | 8 | 24.08.2007 10:36 |
создание cgi для сохранения на сервере exe файла преданного через http | L0rD | Работа с сетью в Delphi | 2 | 22.06.2007 12:52 |