Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Вниз

Как построить интерфейс быстрого ввода n взаимосвязанных таблиц?   Найти похожие ветки 

 
tnp.andrew ©   (2004-04-30 07:15) [0]

Здравствуйте!
У меня возник вопрос по поводу интерфейса программы, помогите пожалуйста кто сталкивался с этой проблемой и какими методами её решил.
Например, имеем взаимосвязанные таблицы:
create table countries
(
num_co varchar(3) not null,
name_co varchar(30),
....
primary key(num_co)
);
create table regions
(
num_co varchar(3),
num_re varchar(3) not null,
name_re varchar(30),
....
primary key(num_re),
foreign key(num_co) reference countries(num_co)
);
create table oblasts
....
create table zones
....
create table cities
....
create table streets
(
num_co varchar(3),
num_re varchar(3),
...
num_st numeric(6,0),
name_st varchar(50),
....
primary key(num_st),
foreign key(num_co) reference countries(num_co),
foreign key(num_co,num_re) reference regions(num_co,num_re),
...
foreign key(num_co,num_re,num_ob,num_zo,num_ci) references cities(num_co,num_re,num_ob,num_zo,num_ci)
);

Как построить интерфейс ввода большого количества взаимосвязанных таблиц, если уже на третьем уровне, поле подстановки Lookup компонентов не работает с двумя и более полями. Например используем для ввода областей (oblasts), TDBGrid, в котором первое поле Lookup на страны, второе поле Lookup на регионы. При этом во втором Lookup невозможно задать ключ из двух полей, чтобы отобразились только регионы для уже выбранной страны.
Ответы в виде готовых решений или ссылок на них можете отправить на эл.адрес: tnp.andrew@mail.ru

С уважением, Андрей.


 
Ильш ©   (2004-04-30 07:39) [1]


> можете отправить на эл.адрес: tnp.andrew@mail.ru

может тебе еще и ключи дать от квартиры где деньги лежат? :))))


 
Sergey13 ©   (2004-04-30 08:23) [2]

2tnp.andrew ©   (30.04.04 07:15)  
А зачем для каждой последующей таблицы указывать всю цепочку кодов? Хватит и только предыдущей сущности. Если улица принадлежит Москве, то вряд ли она может принадлежать Украине. Читай про нормализацию.


 
tnp.andrew ©   (2004-04-30 09:42) [3]

На ответ Ильш отвечаю, это форум вопросов не по квартирным ключам. :((( Форум и создан для обмена опытом, даже если и за деньги (тугрики) :))).
На ответ Sergey13 отвечаю, одной предыдущей сущности не хватит для быстрого ввода текущей, т.к. в Lookup поле отображаются все строки предыдущей сущности, но при уже заданной первой, список второй должен сократиться.
Например:
При вводе города Магнитогорск, выбираем Россия, список в Lookup поля для регионов должен уменьшиться до регионов входящих в Россию.
Если задавать только предыдущую сущьность, то будет выведен огромный список содержащий все предыдущие сущности без разбора.


 
Sergey13 ©   (2004-04-30 09:57) [4]

2tnp.andrew ©   (30.04.04 09:42) [3]
А че ты зациклился на Lookup? Это не самый лучший способ работы с инфой, особенно на таких объемах справочников. SQL тут лучше рулит. Тем более для ИБ. Повторюсь - читай про нормализацию.


 
tnp.andrew ©   (2004-04-30 10:01) [5]

Sergey13
Нужен пример программы. Мыло tnp.andrew@mail.ru
С уважением, Андрей.


 
Соловьев ©   (2004-04-30 10:05) [6]


> Например используем для ввода областей (oblasts), TDBGrid,
> в котором первое поле Lookup на страны, второе поле Lookup
> на регионы

у меня есть пример - недавно делал. сколько у.е.?


 
tnp.andrew ©   (2004-04-30 10:10) [7]

Соловьеву,
Второе поле Lookup на регионы отобразит все регионы для всех стран. А нужны только конкретные регионы для выбранной страны.


 
Соловьев ©   (2004-04-30 10:12) [8]


> tnp.andrew ©   (30.04.04 10:10) [7]

я это прекрасно понял. цена?


 
Sergey13 ©   (2004-04-30 10:13) [9]

2tnp.andrew ©   (30.04.04 10:01) [5]
При такой постановке вопроса прочитай еще раз Ильш ©   (30.04.04 07:39) [1]


 
roottim   (2004-04-30 10:39) [10]

почитай про master-detail в TDataSet


 
tnp.andrew ©   (2004-04-30 11:36) [11]

Соловьеву,
Оцени и укажи вид оплаты САМ. Возможен обмен (опытом,...).
С уважением, Андрей.


 
Соловьев ©   (2004-04-30 11:43) [12]


> tnp.andrew ©   (30.04.04 11:36) [11]

см. почту



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.041 c
3-1083326791
Mister
2004-04-30 16:06
2004.05.23
MySQL


6-1081243802
Mihail
2004-04-06 13:30
2004.05.23
Уважаемые мастера! Такой вопрос - мне нужно узнать IP адреса всех


14-1083772753
Thor
2004-05-05 19:59
2004.05.23
Посещаете ли вы фитнес-клубы, качалки, спортзалы, etc.?


7-1079196947
nikitos
2004-03-13 19:55
2004.05.23
Как сделать программу, которая будет закрывать/открывать дисковод


1-1084153616
nitro
2004-05-10 05:46
2004.05.23
Мастаки, подскажите, есть компоненты Table1, Button1 и Combobox1.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский