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

Автоматическая подстановка значений из списка

19.01.2009, 09:38. Показов 16341. Ответов 25
Метки нет (Все метки)

Доброго времени суток уважаемые знатоки! Задача стоит примитивная, но из-за временных ограничений нет возможности вникать в справочные материалы. Поиск тоже ничего особенного не дал... Короче так: "табл_месяца" - содержит месяца на разных языках, положим АНГЛИСКЫЙ, РУССКИЙ, КАЗАХСКИЙ. "форма_лицензия" (сохраняется в "табл_лиц") - позволяет оформлять бланки лицензий на разных языках. Так вот как сделать, чтоб при изменении в поле "месяц_англ" автоматично менялись значения в полях "месяц_каз" и "месяц_рус"?
На "форма_лицензия" значения полей месяцев беруца из "табл_месяца" подстановкой.
Ежели ВАМ влом МНОГО отвечать, дайти ссылочку где можно почитать!
Заранее спасибо.
0

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

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.01.2009, 09:38
Ответы с готовыми решениями:

Re: Автоматическая подстановка значений из списка
Приветствую :) Недавно на фирме возникла необходимость собрать в кучу всю информацию по продукции...

Автоматическая подстановка значений
Здравствуйте! Помогите пожалуйста мне разобраться со следующим вопросом: К примеру имеются 4 поля...

Автоматическая подстановка значений на форму
Здравствуйте. Пожалуйста помогите. На форме "Заявки" есть поля "услуга" и "цена". --Нужно...

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

25
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
20.01.2009, 01:15 2
Например, так.
0
Вложения
Тип файла: rar #bd13.rar (25.2 Кб, 686 просмотров)
0 / 0 / 0
Регистрация: 19.01.2009
Сообщений: 15
20.01.2009, 06:33  [ТС] 3
Спасибо тебе товарищ! Ща себе заделаю. Щастья тебе.
0
0 / 0 / 0
Регистрация: 19.01.2009
Сообщений: 15
20.01.2009, 12:39  [ТС] 4
Этсамое... Уважаемый Михайло и другие сильные мира сего, при использовании сего подхода не получается записать данные в таблицу с ЛИЦЕНЗИЯМИ. Вообще, посоветуйте как новичку, концептуально как сие изготовить?
Я тут исходничек изготовил, гляньте ежели не затруднит - мне так понятней будет.
0
Вложения
Тип файла: rar ДАС ИСХОДНИК.rar (18.5 Кб, 157 просмотров)
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
20.01.2009, 22:59 5
Так а программа где?
Слабо понял что и куда нужно писать...
1
Вложения
Тип файла: rar #das_ish.rar (15.0 Кб, 197 просмотров)
0 / 0 / 0
Регистрация: 19.01.2009
Сообщений: 15
21.01.2009, 06:25  [ТС] 6
Никакой программы нет. Казали хотять все в аксессе. Спасибо огромное, ща попробую освоить. Все мероприятие направлено на более-менне систематизированное храненеие инфы о субжах по лицензиям + "САМОЕ ГЛАВНОЕ" - печать отчета на установленном уже размеченном БЛАНКЕ. Кароче головомойка.

Добавлено через 19 минут 30 секунд
Все пашет. Аки заведенно. Спаисбо тебе Михайло. Тока будь добр разъясни смысл ентих 2х строк:
ST_MNTH_R = E_MNTH_R.Column(1, E_MNTH_R.ListIndex)
E_MNTH_E = E_MNTH_R.Column(2, E_MNTH_R.ListIndex)

Заодно, как человек шарящий, посоветуй путевую книгу по проектированию БД и по работе с Аксесс в частности. А то на горизонте долгострой намечается и судя по всему мя туды впрягут.

Тучи сгущаются... Слушай, какие из существующих СУБД имеют более менее ЧАЙНИК-ФРЭНДЛИ интервейс? А то мне видима переквалифицироваца нада будет.
0
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
22.01.2009, 01:58 7
Под программой я имел в виду набор команд на VBA, которые и помогают достичь того, чего не удаётся достичь стандартными средствами MS Access.
Эти строки заполняют поля значениями из соответствующего столбца поля со списком E_MNTH_R.
В таком случае я бы посоветовал установить MS Access из состава MS Office 97 - у него руссифицированная помощь. Можете, конечно, взять только файлы помощи, но это будет менее удобно - так Вы сможете тыкать курсором в свойства элементов управления и нажимать F1. В остальных же MS Office справка англоязычна...
Приличный интерфейс в сжатые сроки неподготовленный разработчик может получить (создать) только на MS Access. И если Вы не страдаете звёздной болезнью объектно-ориентированного программирования, то Вам и среда разработки вполне подойдёт, и принципы создания СУБД не покажутся дикими.
MS Access позволяет очень многое достичь стандартными средствами (с минимальными усилиями по программированию). Так что если Вы увидели, что нужно много писать программы, то лучше спросить на форуме - может Вы не в ту степь подались...
По поводу книг - не посоветую, ибо я о них очень плохого мнения: http://am.rusimport.ru/msacces... 862&page=1
Вот это рекомендуют (можно списать, в том числе, Гетц, Литвин в 2 томах):
http://am.rusimport.ru/msaccess/topic.aspx?ID=190

Добавлено через 9 минут 5 секунд
Ошибся: книгу авторов Гетц, Литвин там списать нельзя, но могу выслать, если не найдёте...
0
0 / 0 / 0
Регистрация: 19.01.2009
Сообщений: 15
22.01.2009, 09:15  [ТС] 8
Спасибо большое. Как я понял отдел где я привязан хочет ИС охватывающую ВЕСЬ объем инфы, задействованной в производстве - просто ужас. Пока сошлись на изготовлении небольших "приложений" на подобие того, что представлено в исходнике. А вот литературу ежели не затруднит, то прошу выслать на ящик. Я его в личку кину. Еще рас рахмет.

Добавлено через 2 часа 6 минут 7 секунд
! Только сейчас заметил - при вводе данных через форму (ИСХОДНИК), значения месяцев на РУССКОМ языке выставляются как индекс, типа "ЯНВАРЬ" - а в отчете "1"
Посоветуйте, как бы это исправить

Добавлено через 31 минуту 0 секунд
Все решил - в свойствах столбцы присоединил и ништяк вроде
0
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
23.01.2009, 14:17 9
Первая в списке - Гетц, Литвин. Если оттуда не удастся, то обращайтесь - вышлю.
http://www.accessoft.ru/Lit/Lit.html
0
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
12.03.2009, 23:34 10
Здравствуйте. Я пользователь MS Access на начальном уровне.
Подскажите, пожалуйста, как в Access 2003 сделать такую штучку:
Есть две таблицы. Таблица Справочник и таблица Бланк.
Ключевое поле в таблице Справочник - KODSTK, в таблице Бланк - поля NOM и DATE.
В схеме связи поле KODSTK (табл. Справочник) связано (один ко многим)
с полем KODSTK таблицы Бланк.
После связки, в таблице Бланк поле KODSTK стало "полем со списком", из которго можно выбрать значение из поля KODSTK таблицы Справочник.
В таблице Справочник так же имеются поля FIO, TEL и т.д. Эти поля (FIO и TEL) повторяются в таблице Бланк.
Как сделать, чтобы при выборе значения в поле KODSTK таблицы Бланк, поля FIO и TEL, которые соответствуют этому KODSTK,
тянулись автоматически из таблицы Справочник.
Бьюсь как рыба об лед и не могу понять как это сделать!!!!((
(Я работаю в 1С - хочется как там - при выборе кода автоматически заноситься наименование, цена и т.п)
0
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
13.03.2009, 02:38 11
В таблицах этого сделать нельзя - используйте формы (например, в режиме таблицы).
Если поля FIO и TEL повторяются из Справочника, то вообще уберите их из Бланка. А в форме выводите эти поля из Справочника путём написания соответствующего запроса.
Если же захотите таки оставить поля, то по событию "После обновления" (AfterUpdate) поля со списком KODSTK можете заполнять другие элементы управления формы...

Добавлено через 10 минут 27 секунд
Такие вещи делаются в формах, а не таблицах, потому что только элементы управления форм/отчётов имеют события, по которым можно выполнять те или иные действия.
Если поля FIO, TEL дублируются из Справочника в Бланк, то уберите эти поля из Бланка, а на форме отображайте эти поля из Справочника путём соотвествующего написания запросов.
Если же Вам эти поля нужны, то заполняйте их программно по событию "После обновлния" (After Update).
1
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
14.03.2009, 00:22 12
Цитата Сообщение от Михайло_ Посмотреть сообщение
А в форме выводите эти поля из Справочника путём написания соответствующего запроса.
Спасибо за ответ. Тода каким образом построить этот запрос? Что туда включить? Если не тяжело, подскажите, пожалуйста!
0
117 / 117 / 10
Регистрация: 12.05.2010
Сообщений: 1,207
16.03.2009, 00:06 13
Будет проще, если Вы выложите сюда свою базу (в сжатом и заархивированном виде, в формате не выше MS Access 2003) или её часть (с необходимыми таблицами, запросами и формами).
0
10019 / 2607 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
16.03.2009, 10:29 14
Цитата Сообщение от Inkeria Посмотреть сообщение
каким образом построить этот запрос? Что туда включить?
SQL
1
2
SELECT {все что нужно из таблицы Бланк (Бланк.поле1,..Бланк.полеN)},Справочник.FIO, Справочник.TEL
FROM Бланк INNER JOIN Справочник ON Справочник.KODSTK=Бланк.KODSTK
примечание: фигуристые, а равно и круглые скопки в запросе в данном случае не ставить
1
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
16.03.2009, 23:45 15
Цитата Сообщение от Влад69 Посмотреть сообщение
SQL
1
2
SELECT {все что нужно из таблицы Бланк (Бланк.поле1,..Бланк.полеN)},Справочник.FIO, Справочник.TEL
FROM Бланк INNER JOIN Справочник ON Справочник.KODSTK=Бланк.KODSTK
примечание: фигуристые, а равно и круглые скопки в запросе в данном случае не ставить
Спс!!! Получилось!!!
0
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
17.03.2009, 01:35 16
Влад69, Если в процессе участвует больше, чем две таблицы?
Я не знакома с SQL и не знаю, как правильно построить выражение.
Если Вас не затруднит, помогите, пожалуйста.
Такое получилось после Вашей подсказки (все работает как хотелось):

SELECT Журнал_счетов.OKPOKONTR, Журнал_счетов.NOMSHET, Журнал_счетов.DATASHET, Справочник_контрагетов.NAMEKONTR, Справочник_контрагетов.TELKONTR, Справочник_контрагетов.FAKSKONTR
FROM Журнал_счетов INNER JOIN Справочник_контрагетов ON Журнал_счетов.OKPOKONTR=Справочник_контрагетов.OKPOKONTR;

Как в этот запрос (я понимаю, что все должно быть слито в один запрос???) добавить выбор так же из Справочника услуг, Справочника сотрудников и Справочника поставщика и т.п.
Во вложении скриншот схемы связи.
0
Миниатюры
Автоматическая подстановка значений из списка  
palarm
17.03.2009, 17:33 17
А таблице такого не сделать - нет у нее никаких событий. Нужно сделать форму, на ней поле со списком, и на событие "После обновления" вешать процедуру типа:
Me.Поле1.Value = Me.ПолеСоСписком1.Column(1)
Счет столбцов идет от нуля. В данном случае подставляется второй столбец.
А вообще, стоит полумать - так ли уж надо именно копировать данные из справочника? Может достаточно просто их показать на форме, выдернув запросом по коду?
10019 / 2607 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
18.03.2009, 10:38 18
Уважаемая Inkeria, можно делать сколько угодно джойнов в 1 запросе. Главное представлять как все это связать.
я смотрю у Вас 5 Справочников услуг, и каждый связан по своему коду с Журналом_счетов (зачем столько, неужели нельзя все было в 1 сделать, а для типа услуги ввести поле Тип_Услуги (, хотя не мое это дело)) Вот и джойним их каждую по своему коду
SQL
1
2
3
INNER JOIN Справочник_услуг1 ON Журнал_счетов.KodUsl1=Справочник_услуг1.KodUsl
...
INNER JOIN Справочник_услуг5 ON Журнал_счетов.KodUsl5=Справочник_услуг5.KodUsl
Co Справочником сотрудников и Справочником поставщика немного сложнее: надо подключить еще таблицу Журнал_актов.
А вообще в Аксе есть такая фигня как конструктор запросов. Там
1. кидаешь таблицы,
2. объявляешь между ними нужные связи (если не были объявлены ранее, для данного случая это не нужно)
3. Выбираешь нужные поля
4. Задаешь при необходимости: условия, группировку (и групповые операции) и сортировку.
5. осталось только сохранить . Все.



Добавлено через 2 минуты 57 секунд
К palarm'y. Вы вообще читаете или только пишете? Для начала хотя бы правила форума прочли.

Добавлено через 16 часов 36 минут 14 секунд
Inkeria, обманул я Вас вчера, надо
SQL
1
2
3
LEFT JOIN Справочник_услуг1 ON Журнал_счетов.KodUsl1 = Справочник_услуг1.KodUsl
...
LEFT JOIN Справочник_услуг5 ON Журнал_счетов.KodUsl5 = Справочник_услуг5.KodUsl
скорее всего, ибо иначе запрос будет пустым.
Удачи в освоении Акса
1
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
18.03.2009, 22:49 19
Цитата Сообщение от Влад69 Посмотреть сообщение
Удачи в освоении Акса
Спасибо еще раз за путеводную нить! Буду
0
Форумчанка
5 / 5 / 0
Регистрация: 12.03.2009
Сообщений: 53
20.03.2009, 00:58 20
Цитата Сообщение от Влад69 Посмотреть сообщение
я смотрю у Вас 5 Справочников услуг, и каждый связан по своему коду с Журналом_счетов (зачем столько, неужели нельзя все было в 1 сделать, а для типа услуги ввести поле Тип_Услуги (, хотя не мое это дело)) Вот и джойним их каждую по своему коду
Здравствуйте еще раз!
Вы, конечно, извините, за надоедливость. Таки хочу добить этот вопрос. Соединить все справочники у меня получилось. Но вот со Справочником услуг проблемка вышла.
На самом деле имеется один Справочник услуг.
Я делала связи из таблицы Справочник_услуг.KODUSL в Журнал счетов.KODUSL1, Журнал счетов.KODUSL2, Журнал счетов.KODUSL3, Журнал счетов.KODUSL4, Журнал счетов.KODUSL5. Т.о, я пять раз просто связала это поле (Справочник_услуг.KODUSL) со всеми остальными (KODUSL1…KODUSL5). Акс сам в схеме связи присвоил такое название таблицам (но фактически это одна и та же таблица - Справочник_услуг).
В моем виде деятельности в счете не бывает больше 5 позиций (обычно 2-3).
Вот я и решила сделать 5 столбцов (KODUSL1…KODUSL5), иначе, пришлось бы делать другую структуру Журнала счетов (я бы просто дублировала все данные построчно, а строка отличалась бы только кодом услуги и база была бы просто огромна).
Теперь пробую все это слепить, но ничего не выходит… (думаю, получиться, если добавить в справочник услуг еще 5 полей – NAMEUSL и их подвязать к KODUSL1…KODUSL5, но это будет не понятно что)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2009, 00:58

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

Сортировка в поле со списком. Автоматическая подстановка значений
Здравствуйте. Мне необходимо сделать так, чтобы в выпадающем списке были видны значения только...

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

Автоматическая подстановка номера
Существует порблема - люди нумеруют документацию и с каждого нового года номера начинаются заново....

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


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

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

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