Страницы: 1
RSS
Связывание двух таблиц, как лучше
 
Задача стоит такая: есть ДБ с клиентами и есть таблица учета сделок с этими клиентами. Вопрос как лучше организовать заполнение таблицы сделок (столбец с клиентами)? На каждую строку таблицы сделать вручную ссылку на конкретного клиента или можно заполнять все вручную (просто копировать фио и вставлять), или реализовать все списками...? И вообще нужна ли динамическая связь между ними...
Хочется все изначально вести правильно, чтобы в будущем, когда накопится немалое количество информации, было легко ее анализировать. Опыта в экселе мало, поэтому прошу совета.
Спасибо.
 
Я бы делал плоскую таблицу: каждая сделка - отдельная строка. В столбцах номер (необязательно), дата сделки, имя клиента, другие данные (товар, сумма и пр.) Имя клиента брать из справочника.
Потом из этой БД можно будет построить практически любой отчёт.
 
Цитата
Имя клиента брать из справочника
А что за справочник?
 
Справочник - таблица на отдельном листе, где буду собраны клиенты. Что может быть в самой таблице (кроме ФИО) - Вам решать. Возможно, номера телефонов, адреса и т.п. Справочник можно будет использовать при вводе данных в саму БД: выпадающий список, КомбоБокс на форме...
 
А что делать, если за одной фамилией может скрываться 2 клиента (такая специфика - например у родителей 2-е детей), разносить в разные строки вроде бы нарушение логики одна строка - один клиент, а если в одной строке указывать, то при учете ни как не разнести...
 
Тут несколько вариантов:
1. Фамилия одна, но имена-отчества разные.
2. Разные даты рождения.
3. Ещё много чего разного ))
4. Каждому клиенту присвоить уникальный номер (ID) -  
 
Цитата
qwelip написал:
разносить в разные строки вроде бы нарушение логики одна строка - один клиент
Нет никакого нарушения: фактически ведь клиенты разные?
 
Цитата
Нет никакого нарушения: фактически ведь клиенты разные?
Да, получается так.
Цитата
Каждому клиенту присвоить уникальный номер (ID)
Была мысль, но тут получается, что при выборе клиента в таблицу сделок указывать просто ID или имя + ID. Как лучше с точки зрения дальнейшего анализа?
 
Если при выборе фамилии окажется, что таких несколько, то смотреть (в КомбоБокс, например) на другие данные - ID, имя-отчество...
Сейчас Вы как-то их разделяете ведь? ))
 
В том то и дело, что пока ни как)) все пока только организуется
я извиняюсь, не совсем представляю что такое комбобокс?)
 
Так как нет конкретного вопроса, требующего решения, то переношу тему в "Курилку". Возможно, кто-нибудь ещё подключится к обсуждению.
 
Конкретный вопрос есть как раз. И список клиентов есть, просто все нужно организовать.  
 
КомбоБокс - это такой элемент управления. Например, поле выбора шрифта на вкладке "Главная".  Может иметь несколько столбцов.
 
Цитата
qwelip написал: есть ДБ с клиентами и есть таблица учета сделок с этими клиентами....? И вообще нужна ли динамическая связь между ними...
это вопрос к вам - нужна ли она вам? для чего эта таблица вам? как используете её далее (отчёты, сводки, поиск сделок или т.д.)?.. отсюда и вырисуется ответ Как... если знать Для чего...
По сути: если речь о БД, то и хранить как БД - Access (ограничение 2 Гб)... чем обоснован выбор Excel? Но если хочется через xl работать с данными БД - (кстати, не описали объём данных) - то можете посмотреть в сторону SaveToDB (#10) (по ветке и линк на сайт плагина есть) - чтобы загонять инфо в .sdf-файл (БД), там же можно хранить справочники, а в xl тянуть, что надо...
Отзыв:
p.s. лично не использовала - свой отзыв не оставлю
**********
пример ввода (#61), например, такой использовать (для любой БД можно такое реализовать) - поскольку важно написание тех ФИО - поэтому Юрий М и посоветовал Справочник - (чтобы ФИО заполнялись без ошибок) чтобы потом по одинаковым ФИО можно было вытянуть сделки (или что ещё на ваше усмотрение)... вопрос Для чего, Как использовать - отсюда вытечет ответ Как заполнять и вести БД
p.s. любую инфо из БД потом можно доставать SQL-запросами... (и в xl, и в access, и с плагином и без)
P.S. даже ошибки ввода можно проверить SQL-запросом... здесь #15
Изменено: JeyCi - 21.09.2016 14:41:52
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
 
можно и выпадающий Листбокс
(тоже - такой элемент управления) использовать при заполнениии (фильтрующий по первым вводимым буквам):
Фильтрованный выпадающий список средствами VBA
Поиск значений в базе данных по первым буквам при вводе на листе (как в 1С)
(для корректного ввода фамилий из Справочника)
или такие Выпадающие списки:
вариант текстбокс+листбокс (ComboBox с посимвольным отслеживанием введенного текста)
Фильтр в listbox по вводу букв
Поиск через textbox по базе с выводом в listbox
Альтернатива выпадающему списку (форма с поиском)
Альтернатива выпадающему списку (форма с поиском)_2
ADOПоиск по части значения #12
p.s.
и прост интересный винтик - нажимать чтобы список выпадал
Изменено: JeyCi - 21.09.2016 14:39:06
чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок - обратитесь к собеседнику на ВЫ - ответ на ваш вопрос получите - а остальное вас не касается (п.п.п. на форумах)
Страницы: 1
Наверх