Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Связанные таблицы
 
 автор: zhebov_andrey   (17.04.2009 в 10:01)   личное сообщение
 
 

Кто-нибудь, объясните пожалуйста на пальцах как создавать связанные таблицы??? Я только начал осваивать Access, хорошая оказывается весчь...

  Ответить  
 
 автор: Анатолий (Киев)   (17.04.2009 в 11:01)   личное сообщение
 
 

С термином "связанные таблицы" есть некоторая путаница.
Вас интересуют таблицы, находящиеся в другой БД и связанные (присоединенные, прилинкованные) с текущей БД? Или связь ( 1 к 1, 1 ко многим) между таблицами по полям?
Уточните.


Я только начал осваивать Access


Не пожалейте времени на чтение HELP-a.

  Ответить  
 
 автор: zhebov_andrey   (17.04.2009 в 13:08)   личное сообщение
 
 


Или связь ( 1 к 1, 1 ко многим) между таблицами по полям?



Именно это я и хотел узнать, извиняюсь если неправильно выразился

  Ответить  
 
 автор: Анатолий (Киев)   (17.04.2009 в 13:21)   личное сообщение
 
 

Через меню открываете схему данных, хватаете мышкой поле в одной таблице, тащите и ложите на поле в другой таблице. Появится окошко, в котором можно указать параметры целостности данных.

  Ответить  
 
 автор: Goblin   (17.04.2009 в 19:02)   личное сообщение
53 Кб.
 
 

Чтобы создать связанную таблицу 1:много нужно чтобы в таблице поле 1 было индексировано без повторений. (ключевое) В другой таблице поле должно иметь тот же тип, что и в первой. Я все завязываю на код (счетчик). Значит в таблице которые будут завязаны на данное поле, поле должно быть числовым. Короче один раз увидь. Закрепляю архив.

  Ответить  
 
 автор: zhebov_andrey   (20.04.2009 в 08:58)   личное сообщение
 
 

Спасибо, очень наглядный пример!!!

  Ответить  
 
 автор: zhebov_andrey   (29.04.2009 в 20:16)   личное сообщение
20 Кб.
 
 

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

  Ответить  
 
 автор: Goblin   (29.04.2009 в 20:39)   личное сообщение
44 Кб.
 
 

Но может все же в данном случае разделить столь большую таблицу на 2 таблицы. Пациента вводить 1 раз с его паспортными данными. А все остальное на него в подчиненной форме по датам можно расписать. Когда и что было. В каждой строчке свое. На одну таблицу можно построить 2 и более форм, но в этом случае, если надо будет нечто новое ввести в подчиненную форму, то придется копировать и пациента. Или переписывать по новой. И подчиненная будет вечно пустая. (не более 1 строчки)
Кароче предлагаю вот так.

  Ответить  
 
 автор: zhebov_andrey   (29.04.2009 в 21:38)   личное сообщение
 
 

Да так мне нравиться!!! Спасибо!!! Просто есть одна проблемка, Все эти данные нужно будет выгружать в Excel в одну строку (задание начальника), так как было в моей таблице...Если можно объединить эти две таблички в одну при экспорте, то будет просто замечательно...

  Ответить  
 
 автор: Goblin   (29.04.2009 в 22:24)   личное сообщение
43 Кб.
 
 

Это запросом можно сделать. НО.
В эксель одну строку? Для чего? Может просто отчет составить и на печать. Или зачем акс нужен, если все то же самое в экселе можно вбивать. Что-то непонятно. Если итоговый документ в экселе, то через поля слияния можно попробовать. Тут цель нужна, а огород городить в аксе, потом в экселе - не понятная задача. По крайней мере для меня. В экселе можно также формы строить. Не такие как в аксе, но для таблицы можно.
Один из самых простых способов и примитивных - это открыть окно базы данных, отметить (не открыть) отметить запрос (запрос1) и в верхней строке миню нажать на кнопку - Связи с офис. Выбрать Анализ в эксель. В нашем случае будет 5 строк в файле эксель на листе Запрос1.
Можно и кнопку на форму вывести. Но тогда потрудиться немного предстоит.

  Ответить  
 
 автор: Goblin   (29.04.2009 в 22:50)   личное сообщение
79 Кб.
 
 

Много написал в предыдущем опусе. Даю рисунок как куда нажать. Но это простой и наивный способ. Может пригодиться.

  Ответить  
 
 автор: zhebov_andrey   (30.04.2009 в 08:18)   личное сообщение
 
 

Да я знаю что большая таблица в Excel получается, но так хочет мой начальник... В принципе я и начал изучать Access чтобы упростить работу с Excel...
Спасибо за помощи и понимани!!!

  Ответить  
 
 автор: snipe   (30.04.2009 в 08:30)   личное сообщение
 
 

Да начальнику должно быть по барабану как Вы будете хранить информацию......
Ему ведь главное как Вы ее потом преподнесете......
а тут можно при помощи запроса создать таблицу в Excel и показать .......

  Ответить  
 
 автор: zhebov_andrey   (30.04.2009 в 09:15)   личное сообщение
 
 

Проблема в том, что начальник сам будет вносить всю инфу и затем выгружать в Excel, вот поэтому и заморачиваюсь так...

  Ответить  
 
 автор: Goblin   (30.04.2009 в 10:08)   личное сообщение
 
 

Ну так предложение с запросом не подходит? ?Обязательно надо кнопками что ли? Можно запрос с критерием по выбору сделать. Что в итоге

  Ответить  
 
 автор: zhebov_andrey   (30.04.2009 в 14:10)   личное сообщение
 
 

Да нет нормально и так... Просто этот метод я и сам нашел, думал подскажете как сделать профессиональней... Спасибо за помощь!!!

  Ответить  
 
 автор: zhebov_andrey   (04.05.2009 в 09:36)   личное сообщение
 
 

Господа спецы!!! Еще один вопросик!!!
В прикрепленной базе есть форма "онкоосмотр" в которой есть подчиненная форма "подчиненная форма История болезни". При нажатии на кнопку "подробно" открывается подчиненная форма, все как Goblin подсказал, за что ему отдельное спасибо...Проблема вот в чем: Когда я заканчиваю заносить данные в подчиненную форму и начать заполнять всю форму новыми данными я нажимаю на кнопку "новая карточка", а флажки остаются включееными, а нужно чтобы онитоже обнулялись!!!
И еще одна проблема с флажками: если занести карточку, а потом ее закрыть, то все флажки окажуться выключенными, хотя в таблице они проставленны и получается путанница.
Подскажите пожалуйста как это исправить!!!
PS: Базу я залил вот сюда: http://slil.ru/27505529

  Ответить  
 
 автор: snipe   (04.05.2009 в 10:34)   личное сообщение
 
 

Ваша проблемка зарылась в следующем месте - в таблице "история болезни" поля Хирургическое вмешательство, лучевое лечение и т.д. (где по идее должны стоять галки) текстового формата, а флажки на форме не связаны (свободные) с таблицей отсюда и возникает эта путаница.... как только поля в таблице поменяете на Логическое и привяжете Ваши флажки к полям в таблице проблема исчезнет.....

  Ответить  
 
 автор: zhebov_andrey   (04.05.2009 в 11:10)   личное сообщение
 
 

Да так получается, но при экспорте в Excel выходят значения "истина" или "ложь" хотелось бы чтобы в Excel при истине выводилось "V", и при значении ложь пустое поле!!! Это возможно сделать???

  Ответить  
 
 автор: snipe   (04.05.2009 в 11:44)   личное сообщение
 
 

Можно.....
как я помню Вы для выгрузки в Excel используете отчет ......
Нужно сделать отчет (при помощи мастера) ......
далее изменить Имя поля (например было Хирургическое вмешательство сделать Хирургическое вмешательство1) и так для каждого поля
далее в сроке Данные написать =iif([Хирургическое вмешательство]=0;"операции не было";"операция была")

Ну или как вам там удобно
вообщем получается следующее если поле хирургическое вмешательство=0 то вывести Операции не было, иначе вывести Операция была

  Ответить  
 
 автор: zhebov_andrey   (04.05.2009 в 14:00)   личное сообщение
 
 

Это в отчете нужно изменить имя поля и данные???

  Ответить  
 
 автор: snipe   (04.05.2009 в 15:52)   личное сообщение
 
 

да

  Ответить  
 
 автор: zhebov_andrey   (04.05.2009 в 16:48)   личное сообщение
 
 

а iif это так пишеться или нужно if ???

  Ответить  
 
 автор: Goblin   (04.05.2009 в 22:14)   личное сообщение
45 Кб.
 
 

Благодарности принял, спасибо. Рад что помогло.
В вижуле пишется If, в запросе - IIF
Вот пример. Кажется ваша проблема решается просто. Вот в запросе1 все указано. Если я понял проблему правильно.
PS немного разобрался в чем дело. В вашей таблице не видел ни одного логического поля. Поэтому создал свои (в подчиненной таблице форме). На нашем примере, что бы не городить огород, предлагаю открыть запрос и выкинуть отобранную запись в эксель с помощью макроса. В конце таблицы будут выражение1 и выражение2 с галочками V как заказывали.

  Ответить  
 
 автор: snipe   (05.05.2009 в 06:13)   личное сообщение
 
 

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

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

например (для одного поля)

if me!hir="V" then
me!Флажок94=true
else
me!Флажок94=false
end if

и так для каждого флажка
Но если честно это извращение

  Ответить  
 
 автор: zhebov_andrey   (05.05.2009 в 11:35)   личное сообщение
 
 

В Вашем примере есть небольшая проблемка: в Excel выгружается только текущая запись, а нужно чтобы все...Что делать?

  Ответить  
 
 автор: zhebov_andrey   (05.05.2009 в 13:27)   личное сообщение
 
 

В Вашем примере есть небольшая проблемка: в Excel выгружается только текущая запись, а нужно чтобы все...Что делать?

С этим разобрался сам...

  Ответить  
 
 автор: zhebov_andrey   (05.05.2009 в 11:38)   личное сообщение
 
 

Да и еще вопросик... Так и не разобрался как сделать чтобы при открытии формы отображалась тольго главная, а подчиненная при нажатии на кнопку "подробно", а то у меня сразу все открывается и теряется смысл этой кнопки...

  Ответить  
 
 автор: zhebov_andrey   (05.05.2009 в 14:01)   личное сообщение
 
 


Да и еще вопросик... Так и не разобрался как сделать чтобы при открытии формы отображалась тольго главная, а подчиненная при нажатии на кнопку "подробно", а то у меня сразу все открывается и теряется смысл этой кнопки...



Все... С этим тоже разобрался...

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList