|
|
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
Есть три формы (таблицы) (1-Договор, 2-Акты (к договору), 3 - Оплата ( к актам)). Необходимо, чтобы эти три таблицы связывались последовательно и при этом 2 и 3 формы были ленточными. При связи по умолчанию ленточной возможно сделать только 3 форму. Я поместил все три формы как подчиненные на основную. Вопрос в том, как грамотно связать их, чтобы при выборе активной записи в 1 форме, во 2 форме отображались только записи относящиеся к текущей в 1-ой. А при выборе активной записи во 2-й - соответственно отображались только принадлежащие её записи 3-й формы. Помогите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 18:45 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
1. RecordSource 2-й и 3-й форм должен включать where с упоминанием нужного контрола. 2. В нужный момент (допустим, на OnCurrent и/или AfterUpdate старшей формы) должно происходить Requery (младшей формы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:11 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
У меня получился вот такой запрос в "Источник записей" формы 2, но он все равно отображает все записи таблицы 2 (Акты). tabAkt - это таблица 2 dogovor - Это таблица 1 SELECT tabAkt.fForDog, tabAkt.fAktNum, tabAkt.fAktDate, tabAkt.fAktText, tabAkt.fAktSum, tabAkt.fAktAvans, tabAkt.fAktValuta, dogovor.fNum FROM dogovor INNER JOIN tabAkt ON dogovor.fNum = tabAkt.fForDog WHERE ((([tabakt]![ffordog])=[dogovor]![fNumDog])); Что не правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:21 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
У меня получился вот такой запрос в "Источник записей" формы 2, но он все равно отображает все записи таблицы 2 (Акты). tabAkt - это таблица 2 dogovor - Это таблица 1 SELECT tabAkt.fForDog, tabAkt.fAktNum, tabAkt.fAktDate, tabAkt.fAktText, tabAkt.fAktSum, tabAkt.fAktAvans, tabAkt.fAktValuta, dogovor.fNum FROM dogovor INNER JOIN tabAkt ON dogovor.fNum = tabAkt.fForDog WHERE ((([tabakt]![ffordog])=[dogovor]![fNumDog])); Что не правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:22 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
SELECT * FROM tabAkt WHERE ffordog=Forms!MyForm.DogovorSub.Form!DogovorControl И я не понял, почему один раз tabAkt.fForDog=dogovor.fNum а другой tabAkt.fForDog=dogovor!fNumDog ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:33 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
Извиняюсь за вопрос, но я не понял строчки: SELECT * FROM tabAkt WHERE ffordog=Forms!MyForm.DogovorSub.Form!DogovorControl Что подразумевается под DogovorControl здесь? И DogovorSub Это зарезервированное слово Access или вместо него надо что-то подставить? Плиз, расшифруйте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:40 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
:^) Эта строчка и была (был) весь ответ. Если я правильно понял, то имеется форма, а на ней несколько сабформ. Поскольку я не знаю, как они называются, то я написал условно: MyForm - сама форма DogovorSub - тот контрол типа SubForm, внутри которого показана форма с договорами DogovorControl - на форме с договорами тот контрол, который содержит то ли fNumDog, то ли fNum, в общем то поле, по которому таблица договоров связана с таблицей актов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:47 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
При запуске у меня всегда просят ввести Forms!MyForm.DogovorSub.Form!DogovorControl. Что у меня не так??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:47 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
Опа! Получилось!!! Спасибо огромное Владимир Саныч!!! Вы - лучший! Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 19:58 |
|
||
|
Связывание таблиц в Access
|
|||
|---|---|---|---|
|
#18+
Владимир Саныч! Еще вопрос по поводу Связи таблиц Как мне теперь сделать так, чтобы при вводе конкретного акта во 2-й форме этот акт автоматически относился бы к соответствующему договору (1 форма). То есть поле fForDog таблицы актов (2) автоматически заполнялось бы номером текущего договора из таблицы 1 (поле fNum). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2003, 20:08 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32225686&tid=1680150]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
144ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 452ms |

| 0 / 0 |
