[ Печать ]https://sayanogorsk.info/board/topics/33939-pomogite-s-access/

Помогите с Access

Ladybird
Ladybird
12 Декабря 2012, 17:01
Подскажите как сделать в Access чтобы при выборе одного параметра из таблицы Клиенты, менялся параметр в поле КодКлиента.
Эмм. Вот картинки постараюсь на них объяснить. Наименованные организации берется из таблицы Клиенты и нужно чтобы при смене наименования менялся и кодклиента. КодКлиента и Наименование организации содержаться в таблице Клиенты. А рис.1. это данные для добавления в таблицу Вакансия.
Саяногорск Инфо - 77.jpg, Скачано: 527
рис.1 таблица Вакансия


Саяногорск Инфо - 777.jpg, Скачано: 644
рис. 2 таблица Клиенты.

Помогите бедной студентке. Никак не могу додумать этот моментик. Пишу курсовую и плачу((
-=Фдуч=-
-=Фдуч=-
12 Декабря 2012, 18:07
С Access к сожалению не помогу но когда у меня возникают вопросы по формулам и скриптам в Excel то этот сайт очень помогал, посмотри я думаю логика у редакторов одинаковая, по крайней мере язык скриптов один VisualBasic.
Ladybird
Ladybird
12 Декабря 2012, 20:14
ЦИТАТА (-=Фдуч=- @ 12 декабря 2012, 18:07)
С Access к сожалению не помогу но когда у меня возникают вопросы по формулам и скриптам в Excel то этот сайт очень помогал, посмотри я думаю логика у редакторов одинаковая, по крайней мере язык скриптов один VisualBasic.

О, спасибо! Отличный сайт!
Sana
Sana
12 Декабря 2012, 21:54
MakGruber, Убарть нафиг или код клиента, или название организации (два этих контрола отображают одну строку таблицы, нафиг её 2 раза повторять?).
Ladybird
Ladybird
12 Декабря 2012, 22:16
ЦИТАТА (Sana @ 12 декабря 2012, 21:54)
MakGruber, Убарть нафиг или код клиента, или название организации (два этих контрола отображают одну строку таблицы, нафиг её 2 раза повторять?).

Ну так надо. В логической схеме информационной системы они должны быть (требует преподаватель). А так, конечно, нафик нафик эту тавтологию.
Саяногорск Инфо - snimok.jpg, Скачано: 367
Sana
Sana
12 Декабря 2012, 22:26
MakGruber, Форма для чего сделана? Для вакансии? В таблице вакансии код клиента 1? Вроде бы 1 зачем 2 поля выбора для него в форме? Желтым помечено 2 поля это коды клиента и код персонала, ну так это разные таблицы, они и не должны быть никак связаны...

Не знаю, или я действительно в чем то туплю...
Ladybird
Ladybird
12 Декабря 2012, 22:30
ЦИТАТА (Sana @ 12 декабря 2012, 22:26)
MakGruber, Форма для чего сделана? Для вакансии? В таблице вакансии код клиента 1? Зачем 2 поля выбора для него в форме?

Да форма для вакансии. Это ошибочка для кодклиента просто поле для отображения, а не поле со списком. Т.е. я хочу сделать, чтобы при выборе из поля со списком наименования организации внизу в кодеклиента отображался соответствующий таблице Клиенты код этого самого клиента-организации.

Да это я туплю. Не могу объяснить правильно что-ли.


вот в последней картинке это связи между таблицами. Вообщем это у меня курсовая по дисциплине «Проектирование информационных систем» (Предметная область: кадровое агентство). Все таблички вроде как должны быть связаны, взаимодействовать.
Sana
Sana
12 Декабря 2012, 22:39
MakGruber, Да со связями то всё в порядке. (ну если не обращать внимания, что куча полей продублирована, это какбе денормализованная бд, или есть второй вариант, что я вообще не понял что это, и зачем оно надо)

Я не знаю ассеss, ну а просто к полю этому нельзя прицепить поле из той же таблицы которая прицеплена к выпадающему списку? По идее если при изменении в списке курсор передвинется, может и во втором поле отобразится новое значение? Но честно я хз, я не знаю как там что работает.
Ladybird
Ladybird
12 Декабря 2012, 23:03
ЦИТАТА (Sana @ 12 декабря 2012, 22:39)
MakGruber, Да со связями то всё в порядке. (ну если не обращать внимания, что куча полей продублирована, это какбе денормализованная бд, или есть второй вариант, что я вообще не понял что это, и зачем оно надо)

Я не знаю ассеss, ну а просто к полю этому нельзя прицепить поле из той же таблицы которая прицеплена к выпадающему списку? По идее если при изменении в списке курсор передвинется, может и во втором поле отобразится новое значение? Но честно я хз, я не знаю как там что работает.

Нее. Так не работает. Я думала может кто подскажет как можно SQL запрос как-то грамотно составить. Или еще как. Вообщем спасибо за помощь всё-равно)
Себастиан_торговец
Себастиан_торговец
13 Декабря 2012, 08:20
Ladybird, а напиши здест ТЗ полностью
Sana
Sana
13 Декабря 2012, 08:27
Ladybird, Тут дело не в SQL, тут надо внутренним языком (VB) синхронизировать поля. Т.е. на событие onChange (или onSelect, или не знаю как оно там называется выпадающего списка), повесить функцию которая проставит во второе поле соответствующее значение.

А вообще не слушай меня, как я уже 10 раз сказал, я не разбираюсь в access. Может сейчас проснется из тех кто разбирается.
boris_razr
boris_razr
13 Декабря 2012, 09:39
ЦИТАТА (Ladybird @ 12 декабря 2012, 23:16)
Ну так надо. В логической схеме информационной системы они должны быть (требует преподаватель). А так, конечно, нафик нафик эту тавтологию.
Саяногорск Инфо - snimok.jpg, Скачано: 367


Это так Access 2010 связи между таблицами рисует или это ты так нарисовала? Я с 2003 мог бы еще помочь так как более менее помню что где делается, никаких VB и SQL тут не надо. Надо смотреть как сделана связь между таблицами и саму форму смотреть в конструкторе. Саму базу я думаю ты не скинешь мне посмотреть, так как вижу что там данные занесены? Хотя если можешь скинуть то посмотрел бы, может помог бы чем.
Танк
Танк
13 Декабря 2012, 09:51
Почитай тут www.cyberfor...d702504.html
Если не получится, стукни в личку.. Дам свое мыло, скинешь базу... Попробую помочь ну и объясню потом что да какsmile.gif
Sana
Sana
13 Декабря 2012, 09:53
boris_razr, Ну связи то между таблицами очевидны из картинки, не понятно нафига на форме нужен клиенткод в отдельной поле? Потому что этот же клиенткод в списке выбора организации вводится, и накой его дублировать не понятно, но если его надо будет задублировать по изменению первого контрола, то ИМХО только через VB.
boris_razr
boris_razr
13 Декабря 2012, 10:25
ЦИТАТА (Sana @ 13 декабря 2012, 10:53)
boris_razr, Ну связи то между таблицами очевидны из картинки, не понятно нафига на форме нужен клиенткод в отдельной поле? Потому что этот же клиенткод в списке выбора организации вводится, и накой его дублировать не понятно, но если его надо будет задублировать по изменению первого контрола, то ИМХО только через VB.

Очевидны по каким полям связаны, а какая связь один-к-одному или один-ко-многим я тут не вижу. Надо смотреть как построена бд, если по нормальному то я думаю что этот код просто напросто счетчик и повторений тут не должно быть, да и изменить его нельзя, по сути его можно вообще скрыть, так как для пользователя это поле никакой смысловой нагрузки не несет. На форме он просто отображается из таблицы "Клиент" и никакой VB не надо.
Sana
Sana
13 Декабря 2012, 10:56
boris_razr, Тип связи между таблицами "Клиент" и "Вакансия" не понятна??? ЛОЛ. Интересно что бы ты сказал по поводу БД саяногорск инфо, где 150 таблиц и ни одной картинки со стрелками... biggrin.gif biggrin.gif biggrin.gif

Зачем другими словами повторять то что я выше написал? Понятно что он на форме просто отображается из таблицы "Клиент", вопрос был не про это, а про то что при изменении организации в выпадающем списке (которое по сути та же таблица клиент), надо чтобы код обновлялся и в этом поле (ставился код выбранной организации), а из этого значит что в данный момент он сам не обновляется. А по поводу нужен он или нет на форме, я написал в первом своем сообщении в теме, на что мне ответили что он нужен.
boris_razr
boris_razr
13 Декабря 2012, 11:29
ЦИТАТА (Sana @ 13 декабря 2012, 11:56)
boris_razr, Тип связи между таблицами "Клиент" и "Вакансия" не понятна??? ЛОЛ. Интересно что бы ты сказал по поводу БД саяногорск инфо, где 150 таблиц и ни одной картинки со стрелками...  biggrin.gif  biggrin.gif  biggrin.gif

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

И какая же? smile.gif 1-1 или 1-М? Ну 150 нехило конечно, ну разобраться если понимаешь что смотришь не составит труда, создавал бд из 40 таблиц и ничего.
Sana
Sana
13 Декабря 2012, 11:44
boris_razr, Ессно 1 ко многим. У клиента может быть >1 вакансии. И вообще мне этот вопрос кажется очень странным.
boris_razr
boris_razr
13 Декабря 2012, 11:56
А про стрелочки вопрос относился к access 2010, так ли в нем отображается схема данных в действительности или нет. Да и бд для сайта не на access'е написана.
Sana
Sana
13 Декабря 2012, 11:59
boris_razr, А какая разница?
Ladybird
Ladybird
13 Декабря 2012, 14:52
ЦИТАТА (Танк @ 13 декабря 2012, 09:51)
Почитай тут www.cyberfor...d702504.html
Если не получится, стукни в личку.. Дам свое мыло, скинешь базу... Попробую помочь ну и объясню потом что да какsmile.gif

Вот очень похожая ситуация. Только код по ссылке работает, а у меня почему то нет.
Саяногорск Инфо - 111.jpg, Скачано: 178



и мой
Саяногорск Инфо - 2222.jpg, Скачано: 169
Ladybird
Ladybird
13 Декабря 2012, 14:55
ЦИТАТА (Sana @ 13 декабря 2012, 08:27)
Ladybird, Тут дело не в SQL, тут надо внутренним языком (VB) синхронизировать поля. Т.е. на событие onChange (или onSelect, или не знаю как оно там называется выпадающего списка), повесить функцию которая проставит во второе поле соответствующее значение.

А вообще не слушай меня, как я уже 10 раз сказал, я не разбираюсь в access. Может сейчас проснется из тех кто разбирается.

Да-да-да надо было написать на VB. Нашла какой код должен быть, только, что-то не работает.
Ladybird
Ladybird
13 Декабря 2012, 18:46
Всем спасибо, решение найдено! punk.gif
При использовании материалов гиперссылка обязательна.