2010-03-09 1 views
0

Итак, у меня есть несвязанная форма, которую я использую для сохранения данных в таблицу при нажатии кнопки.MS Access 2003 - Unbound Form использует инструкцию INSERT для сохранения в таблице; как насчет субформ?

Есть ли способ, которым я могу иметь подформы для ввода, которые позволят мне сохранять данные в таблицу внутри этой же кнопки? В основном я хочу добавить дополнительные параметры ввода для пользователя, и, хотя я знаю другие способы сделать это, мне особенно интересно, как это сделать (если это можно сделать).

Так что скажем, что «родительская форма» - это frmMain. И есть две дочерние формы «sub1» и «sub2». Например, сакэ говорит, что на frmMain есть два текстовых поля: txtTitle & txtAuthor. sub1 и sub2 оба имеют текстовую рамку на них, которые представляют что-то вроде цен. Идея - это заголовок & автор книги, а затем цена в каждом магазине (упрощенная).

Так что я попробовал это (потому что я думал, что это стоит выстрел):

Dim db as DAO.database 
Dim sql as String 


sql = "INSERT INTO (Title, Author, PriceA, PriceB) VALUES (" 

if not isnull(me.txtTitle) then 
    sql = sql & """" & me.txtTitle & """," 
Else 
    sql = sql & " NULL," 
End If 

if not IsNull(me.txtAuthor) then 
    sql = sql & " """ & me.txtAuthor & """," 
else 
    sql = sql & " NULL," 
end if 

if not IsNull (forms!sub1.txtPrice) then 
    sql = sql & " """ & forms!sub1.txtPrice & """," 
else 
    sql = sql & " NULL," 
end if 

без отделки кода, я думаю, вы можете увидеть Гоча я пущенный. Я попробовал это и получил «Доступ не может найти форму» «». Я думаю, что могу понять, почему на этом подходе тоже, потому что, когда я нажимаю кнопку, которая вызывает новую подформу в родительскую форму, значения, которые были только что введены, не удерживаются/не сохраняются по мере закрытия суб1 и открытия суб2. Я должен упомянуть, что идея выше не предназначена для того или иного подхода, а обе подформы используются каждый раз.

так что это пример. Я хочу использовать этот метод (если возможно), чтобы иметь около 7 различных вариантов подформы в одной форме и сохранять их в таблице с помощью инструкции SQL.

Я понимаю, что могут быть лучшие способы, но мне просто интересно, могу ли я получить там этот подход из любопытства.

Спасибо, как всегда!

+0

Для того, чтобы быть понятным здесь, это не обычный тип подчиненности с несколькими записями, они являются элементами управления подформы с формой с дополнительными несвязанными элементами управления, верно ли это? Если да, то почему вообще существуют субформы, почему не tabcontrol? – Fionnuala

+0

Право и способ управления вкладками - это то, что я могу сделать. просто интересно для простоты любопытства, если я смогу сделать вышеприведенную идею работать .... снова .... не то, что это даже лучшая оценка. благодаря! – Justin

ответ

3

Ваша проблема с тем, как вы имеете в виду управления, вместо

форм! Sub1.txtPrice

попробовать

меня! Sub1.form.txtPrice

Вы можете увидеть больше примеров того, как обращаться к подформатам здесь

http://www.mvps.org/access/forms/frm0031.htm

+0

+1 Это хороший момент. – Fionnuala

+0

большое спасибо – Justin

Смежные вопросы