Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Программное занесение в таблицу значения, которое связано со справочником / 13 сообщений из 13, страница 1 из 1
18.12.2003, 15:03
    #32356874
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
У меня такая проблема: есть таблица, в которой есть поле ID_tarif - id значения из справочника, есть форма, в которой для етого поля - список и высвечивается текстовое значение вместо ID. Когда вставляешь в форму текст, отсутствующий в справочнике - работает событие "NotInList", полность меня удовлетворяющее.
Вопрос такой: есть текстовые значения этого поля, которые нужно вставлять в таблицу ПРОГРАММНО. Если эти значения есть в справочнике, то
они вставляются запросом типа "UPDATE [base] SET TarifID = Tarifs.ID FROM base, Tarifs WHERE Tarifs.Tarif = base.Tarif ". Но при этом если значения в справочнике нет - то это программой замалчивается. А как сделать, чтобы происходило событие типа "NotInList", если текста нет в справочнике??
Помогите, пожалуйста, новичку.
...
Рейтинг: 0 / 0
18.12.2003, 15:12
    #32356895
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
в схеме базы данных есть мощный инструмент

ограничения и связи

тебе нужно построить такое ограничение многие-к-одному от таблицы к справочнику
...
Рейтинг: 0 / 0
18.12.2003, 15:13
    #32356899
4d_monster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
перед заполнением ПРОГРАММНО выполнить запрос который добавит недостающие данные

IMHO, Mon$te®
...
Рейтинг: 0 / 0
18.12.2003, 15:24
    #32356921
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
4d_monster :
Так я вроде и вставляю данные:
UPDATE [base] SET TarifID = Tarifs.ID FROM base, Tarifs WHERE Tarifs.Tarif = base.Tarif

Но вопрос в том, что при этом никаких сообщений не происходит , когда текста нет в справочнике
...
Рейтинг: 0 / 0
18.12.2003, 15:27
    #32356925
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
АлексейК :

если бы я вставляла в таблицу числа (ID) - то понятно, это бы помогло, но у меня текстовые входные данные
...
Рейтинг: 0 / 0
18.12.2003, 15:31
    #32356935
фыыф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
INSERT отсутствующих в справошник.
...
Рейтинг: 0 / 0
18.12.2003, 15:36
    #32356950
Ander Borisov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
Подождите, подождите ...

Ну если программно вставлять данные, то перед вставкой программно же проверь наличие данных в справочнике. :-)))
...
Рейтинг: 0 / 0
18.12.2003, 15:38
    #32356955
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
Ander Borisov:

Спасибо!
Я, видимо, очень спешу, и не догадалась!
...
Рейтинг: 0 / 0
18.12.2003, 15:44
    #32356970
Ander Borisov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
Да пжалста, в общем-то :-))) Всегда рад помочь :)
...
Рейтинг: 0 / 0
18.12.2003, 15:54
    #32356994
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
Ander Borisov:

Хотя, конечно, это требует много программирования:
событие "NotinList" чем хорошо: ему вернешь нужный Response, оно дальше все само делает: сообщает, что ввел не то, список открывает, а тут все руками..... :((
...
Рейтинг: 0 / 0
18.12.2003, 15:59
    #32357002
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
>если бы я вставляла в таблицу числа (ID) - то понятно, это бы помогло, но у меня текстовые входные данные

вообще ограничению все равно какие данные у тебя лишь бы не ОЛЕ - бинарные данные (по которым нельзя делать связи и индексы)

текстовое поле вполне может быть индексированным.

Важно понять
1 если ты хочешь чтобы в таблицу нельзя было ввести значение ни вручную ни программно если его нет в справочнике - то и делать это нужно в справочнике

2 если тебе нужно добавить некоторые значения в таблицу из справочника то и делай

insert into Таблица from Справочник Where УсловияОтбора
...
Рейтинг: 0 / 0
18.12.2003, 16:07
    #32357012
gorod
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
АлексейК :
Да нет, вопрос был не про то, как связанные данные вставлять, а как наладить такой же интерфейс обработки ошибок, который запускается, когда вставляешь в "поле со списком" текст ручками.
Чтоб ворос пользователю задавать "У вас значение не из списка. Вставить в список?" Потом правильно дальше действовать, если он "Да" нажал и "Нет"
...
Рейтинг: 0 / 0
18.12.2003, 16:12
    #32357021
Ander Borisov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное занесение в таблицу значения, которое связано со справочником
2 gorod: Хотя, конечно, это требует много программирования:

Дык это самое интересное и за это нам платют :-)))
А сидеть и нажимать кропки в мастерах можно и обезьяну научить.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Программное занесение в таблицу значения, которое связано со справочником / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]