Показать сообщение отдельно
  #1  
Старый 24.07.2014, 11:49
activexpoint activexpoint вне форума
Прохожий
 
Регистрация: 24.07.2014
Сообщения: 10
Версия Delphi: xe2, 7
Репутация: 10
По умолчанию Отображение сгрупированных записей БД

Здравствуйте, дорогие форумчане!
Мне нужна ваша помощь. В общем такая ситуация:
Посоветуйте, как лучше решить такую проблему.
Нужно создать справочник, для вычисления комиссии перевода для определенной суммы.
Есть таблица стран, таблица валют. сделал, чтобы комиссия вычислялась по формулам, согласно интервалов(например,0-100,101-200$).
Все работает. В каждой записи моей таблице тарифов есть:
1)айдишник системы;
2)айдишник страны;
3)айдишник валюты;
4)итревал(границы тарифа);
5)формула для рассчета;

Но так его очень тяжело наполнять и изменять, потому что исходные данные тарифа для сист. переводов имеют вид:

Россия, Украина, Белоруссия,Грузия - Доллар, Евро - от1 до100 - 5%;
Россия, Украина, Белоруссия,Грузия - Доллар, Евро - от101 до 200 - 6%; и т.д.

Выходит, что для данной реализации нужно заводить для каждой страны, валюты, да еще для каждого интервала новую запись и для человека, который будет с ним работать - это ад
Думаю, что в бд нужно хранить также по 1 записи, но для пользователя их групировать. Тоесть загружать данные в ДС, а потом В ВТ отображать уже как одну запись. В общем нужно переделать/доделать, чтобы с ним было проще работать пользователю. Чтобы при создании/редактировании одного тарифа пользователь выбрал в ДБГридах несколько стран, потом несколько валют, интерфал и формулу комиссии - ему все отображалось в таком виде:

Россия, Украина, Белоруссия,Грузия - Доллар, Евро - от1 до100 - 5%;

а не в таком(хотя в базе буду хранить в таком):

Россия - доллар - от1 до100 - 5%;
Украина - доллар - от1 до100 - 5%;
...
Россия - евро - от1 до100 - 5%;
Украина - евро - от1 до100 - 5%;
...

И я не знаю как лучше это лучше сделать? Опытные люди, подскажите.
Ответить с цитированием