powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
9 сообщений из 9, страница 1 из 1
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309305
visio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет знатокам Access!

У меня 2 таблицы: клиенты и заказы. На форме размещаю поля из них, источник записей запрос:
Код: sql
1.
SELECT * FROM Клиенты INNER JOIN Заказы ON Клиенты.ID = Заказы.КлиентID;



Начинать ввод буду с email клиента. Если он совпадет с существующим email я бы хотел чтобы автоматически заполнились поля ID клиента, ФИО и телефон и мне бы осталось ввести данные заказа. В таблицу "клиенты" ничего не добавится, а в таблицу "заказы" добавится 1 запись.

А если клиент с таким email не найдется я хочу ввести данные нового клиента и данные заказа, чтоб в обе таблицы добавилось по одной записи.

Сейчас у меня при добавлении старого email добавляется новый клиент.

Как лучше сделать? Поля хочу оставить как на скриншоте (т.е подчиненная форма наверное не пойдет). Делать поиск записей через VBA на основе email мне кажется некрасивым решением. Наверняка же есть простое и красивое решение?
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309314
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Описанный алгоритм надо реализовывать на свободной форме.
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309317
visio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
в смысле на пустой? Не вопрос, могу создать пустую форму и поля из двух таблиц. А дальше как? Неужто придется на VBA проверять поле email каждый раз?
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309328
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
visioНеужто придется на VBA проверять поле email каждый раз?А что тебя смущает, собсно?
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309330
visio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, да вот думал вдруг эту задачу можно решить более элегантным способом) но раз вы говорите, что нельзя я верю, тогда сделаю через VBA, спасибо вам за ответ!
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309342
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
visioраз вы говорите, что нельзяНу почему... можно, если сильно извернуться... но счастье от того, что получилось, не стОит того геморроя, который с этого дела поимеется в нагрузку.
Хотя есть ещё один, не самый плохой, вариант - это основная форма с единственным полем ИдКлиента, на ней подчинённая на основе таблицы Клиенты и подчинённая второго уровня на основе таблицы Заказы. И соответственно дизайн у них такой, чтобы весь этот конгломерат смотрелся как одна форма.
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309459
ИМХО, форму надо строить на таблице Заказы. Поле email на форме сделать полем со списком (ПС) с источником - запрос к таблице Клиенты, возвращающий три поля. id - скрытый связанный столбец, затем email и ФИО. На форме поля "ФИО" и "id" сделать вычисляемыми (=[ПС].Column(2) для ФИО). При вводе нового email обрабатывать событие NotInList по классической схеме с открытием формы Клиенты в режиме диалога.
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309667
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
visio,
как вариант:
...
Рейтинг: 0 / 0
БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
    #39309890
visio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Разобрался!
Большое спасибо sdku, Анатолий (Киев) и Akina.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / БД Клиенты и заказы. Как лучше проверять существование клиента при добавлении заказа?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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