Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 10
1

Автоматическое копирование ключевого поля главной таблицы в подчиненную

22.08.2019, 16:15. Показов 1346. Ответов 11

Уважаемые форумчане, добрый день!
Пытаюсь сделать базу для дальнейшей статистической обработки. Связала таблицы по ключевым полям и теперь хочу сделать формы, удобные для заполнения.

Ключевое поле [Patient_ID] таблицы "Пациент_основа" является связующим с подчиненной таблицей "Визит_начало", в которой ему соответствует поле [Patient_ID_visit_before].

Главная форма создана на основе главной таблицы "Пациент_основа". В этой форме сделала кнопку, по нажатию которой открывается подчиненная форма "Визит_начало" и очень хочется, чтобы
1) Сама подчиненная форма открывалась привязанной к текущей записи основной формы. Я попыталась сделать это в виде макроса и вкладки УсловияОтбора: [Patient_ID_visit_before]=[TempVars]![Patient_ID]. Вроде получилось, но возникла другая проблема
2) Как сделать так, чтобы при заполнении новой записи в основной форме и последующем нажатии кнопки вызова подчиненной формы, в этой самой подчиненной форме автоматически заполнялось поле [Patient_ID_visit_before] на основании поля [Patient_ID], которое было показано в главной форме, до вызова подчиненной.

Я понимаю, что мой вопрос может показаться кому-то глупым и, скорее всего, на него уже отвечали с соседних темах, но я честно старалась найти ответ самостоятельно в интернете и в том числе на этом форуме, попробовала сделать модуль VBA, но не получилось. В VBA я практически не разбираюсь, но готова научиться.

Огромная просьба, если есть такая возможность, посмотрите пожалуйста приложенную базу и помогите найти решение этого вопроса!
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вложения
Тип файла: 7z Кресло_база_001.7z (54.8 Кб, 4 просмотров)
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.08.2019, 16:15
Ответы с готовыми решениями:

Как сделать Автоматическое заполнение ключевого поля таблице
Подскажите пожалуста как сделать так чтобы ключевые поля разных таблиц заполнялись автоматом?...

Блокировка входа в подчиненную форму, если в главной не заполнены основные поля
Доброго времени суток! Бьюсь над таким вопросом: как заблокировать вход в Подчиненную форму, если...

Изменение значения ключевого поля таблицы
Форумчане, доброго времени суток! Пользователь ошибочно ввел в ключевое поле типа счетчик ...

Ошибка значения по умолчанию при установке значением ключевого поля этой же таблицы
Господа, возможно я не смог правильно для поисковиков сформулировать, но ответа не нашел. ...

11
8289 / 4119 / 944
Регистрация: 05.10.2016
Сообщений: 11,356
Записей в блоге: 1
22.08.2019, 17:31 2
Цитата Сообщение от Marryva Посмотреть сообщение
посмотрите пожалуйста приложенную базу и помогите найти решение этого вопроса!
А если подчинённых записей несколько - то как?
0
8289 / 4119 / 944
Регистрация: 05.10.2016
Сообщений: 11,356
Записей в блоге: 1
22.08.2019, 17:37 3
Marryva, что за чудная связь?
Подумайте пожалуйста что вы связываете (какую сущность с какой) и зачем.
Отвечать не обязательно.
0
Миниатюры
Автоматическое копирование ключевого поля главной таблицы в подчиненную  
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 10
22.08.2019, 20:27  [ТС] 4
Eugene-LS, даже если подчиненных записей несколько, необходимо, чтобы в любой подчиненной таблице автоматически заполнялся ID пациента из поля [Patient_ID] основной таблицы.
А по поводу связи, идея следующая: во время визита пациента помимо его основного диагноза у есть сопутствующие, причем их несколько, но они, как правило, типовые. Поэтому моей задачей является вносить эту информацию относительно их 1 визита, таким образом, получается отдельная таблица с сопутствующими диагнозами и датами их появления, где у каждой записи свой ID, но при этом несколько записей (каждая - отдельный диагноз) могут принадлежать к одному и тому же визиту
0
8289 / 4119 / 944
Регистрация: 05.10.2016
Сообщений: 11,356
Записей в блоге: 1
22.08.2019, 21:03 5
Цитата Сообщение от Marryva Посмотреть сообщение
где у каждой записи свой ID, но при этом несколько записей (каждая - отдельный диагноз) могут принадлежать к одному и тому же визиту
Ну это понятно, хотя интерфейс мне видится не однозначным ...
попробую, усталой уже "думалкой", сочинить что нить для вас - 10 - 40 минут ...

Добавлено через 20 минут
Marryva, не совсем понятна ваша логика.
Чем вы оперируете?
Подчинённой формой (которую попытались скрыть доведя её размер до неск. милиметров) или ещё чем?
...
Если подчинённой всё решается просто и быстро назначением полей связи.
Если другой формой (всплывающей) - то какой?

А пока STOP ...

Не по теме:

Девушки всегда загадочны ... и пусть так и будет! (разгадывать интереснее)

0
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 10
22.08.2019, 21:33  [ТС] 6
Eugene-LS, так и хочется сказать "Ой, всё!" Но я понимаю, что проблема в моем незнании) в любом случае, спасибо за то, что уделяете время и внимание!
Первоначально, я в главной форме (Пациент_основа - данные из таблицы Пациент_основа) сделала подчиненную (подчиненная_Визит_начало - данные из таблицы Визит_начало) и попыталась заполнить основную форму с целью проверить, будет ли подставляться [Patient_ID] главной формы в [Patient_ID_visit_before] подчиненной. Но этого, почему то, не произошло. Да и на самом деле удобнее, на мой взгляд, по кнопкам разделить отдельные подчиненные формы, что я и попыталась сделать, а саму подчиненную форму сжала до миниатюрных размеров, так как на одном из видео в YouTube так порекомендовали сделать.
Я думала, что уже назначила поля связи в "Схеме данных", но, скорее всего, как Вы и заметили, видимо надо их назначить, только не могу понять как именно это сделать!
0
8289 / 4119 / 944
Регистрация: 05.10.2016
Сообщений: 11,356
Записей в блоге: 1
22.08.2019, 22:46 7
Marryva, спасибо за подробные пояснения.
А как вы хотите (как вам удобнее)?
Вводить в подчинённой или в всплывающей?
0
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 10
22.08.2019, 22:50  [ТС] 8
Eugene-LS, думаю, лучше во всплывающей, чтобы доп. окно поверх главной формы появлялось.
0
8289 / 4119 / 944
Регистрация: 05.10.2016
Сообщений: 11,356
Записей в блоге: 1
22.08.2019, 23:57 9
Лучший ответ Сообщение было отмечено Marryva как решение

Решение

Цитата Сообщение от Marryva Посмотреть сообщение
думаю, лучше во всплывающей, чтобы доп. окно поверх главной формы появлялось.
Вот и славно!

Для начала "Вредный совет 01" никогда не используйте в заголовках модулей:
Visual Basic
1
2
Option Compare Database
Option Explicit
А вы так и поступаете - это хорошо и не правильно. Зачёт!

"Вредный совет 02"
Никогда не удаляйте код удалённых объектов форм (после экспериментов) - пусть будет! Авось пригодится ....
А вы так и поступаете - это хорошо и не правильно. Зачёт!

"Полезный совет 01"
Создавайте форму добавления (она же просмотра) и потом... :
Visual Basic
1
2
3
4
5
6
7
8
9
Dim RecID As Long
    
    Me.Dirty = False          ' Сохранка (кратко без чека данных ...)
    RecID = Me!Patient_ID     ' ID в переменную ...
'Визит_начало
    
     DoCmd.OpenForm "Визит_начало", , , , acFormAdd 'в режиме добавления ...
     Forms("Визит_начало")![Patient_ID_visit_before] = RecID
     'Вот и всё! :)
1
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 10
23.08.2019, 00:44  [ТС] 10
Eugene-LS, огромное Вам спасибо! Прекрасно работает! Действительно не встречала подобных решений на просторах просмотренных мной сайтов. Вы - СУПЕР! А советы не важно какие, главное, что они есть. Уж лучше получить информацию для обдумывания, чем не иметь информации вообще. Завтра сяду и начну заполнять, уверена, что по ходу действий еще не раз буду спотыкаться)

Не по теме:

Не по теме:
Если Вам интересно, могу подсказать, как получить безлимитный бесплатный доступ к платному ресурсу lynda точка com. Если кратко, то это дочерний сервис LinkedIn, огромная библиотека с огромнейшим количеством курсов на практически любые темы с удобным интерфейсом. Правда, все на английском, но есть как встроенные субтитры, так и транскрипт речи автора. Плюс еще задания дают для закрепления материала. Я там и по Access многое находила, но вот, что связано с VBA дается тяжеловато на понятийном уровне.

0
Eugene-LS
23.08.2019, 00:53
  #11

Не по теме:

Цитата Сообщение от Marryva Посмотреть сообщение
Если Вам интересно
Спасибо - точно не интересно

0
Эксперт MS Access
6746 / 4340 / 272
Регистрация: 12.08.2011
Сообщений: 12,761
23.08.2019, 10:12 12
Мало того, что на русском полно, так ещё и по-японски учить?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.08.2019, 10:12

Копирование данных одного поля из разделенной формы (таблицы) в нужные записи другой таблицы
Здравствуйте! Добрый вечер! Подскажите пожалуйста, как из разделенной формы (в которой после...

Автоматическое заполнение поля таблицы
Здравствуйте. Имеются две таблицы: 1.Группы, в которой содержатся 2 поля: код группы и код...

Автоматическое заполнение поля формы из таблицы
Добрый день господа. Такая вот проблема,с которой бьюсь длительной время.На форуме вроде как есть...

Автоматическое заполнение поля таблицы с оборудованием
Добрый день. столкнулся с проблемой массового вода данных. ЧТО Есть: Есть БД которая состоит...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.