C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Необычная сортировка
Dmitri
  Отправлено: 19.06.2003, 21:04


admin@localhost

Группа: Модератор
Сообщений: 110



Есть Table1 (Paradox), DBGrid. Как реализовать сортировку по текстовоу полю, но с учетом следующего: в начале ячейки может быть ненужная для сортировки аббревиатура, так вот эту аббревиатуру и надо опустить при сортировке полей.

Пример:

CODE

Кука
ООО "Ада"


В данном случае сортировка должна "обрезать" ООО " и отсортированные поля будут выглядеть таким образом:

CODE

ООО "Ада"
Кука


Подскажите, пожалуйста, как повлиять на стандартную сортировку Table1 и "обрезать" все сочетания ООО " в начале каждой ячейки, поддающейся сортировке?
Гость_Nick
Отправлено: 20.06.2003, 12:52


Не зарегистрирован







Мне кажется это сложная проблема.
Я так понимаю тебе нужно сделать так, что бы Юзер не нашедший контрагента "Ада" (так как он называется ООО "Ада"), не завел его еще раз.
Я решил (думал что решил) сделав два поля,
Краткое имя и Полное имя.
Расчитывая что
Краткое имя — АДА
Полное имя  — ООО "АДА"
Все равно в краткое имя заводили
ОАО МП МуромМашЗавод
ОАО МП "МуромМашЗавод"
МП ММЗ
МуромМашЗавод
и тд.
Это не не сделаеш на комп уровне.
Если только организовать замену
Одного ID на другое ID во всех связанных таблицах


Admin
Отправлено: 20.06.2003, 17:08


Владимир

Группа: Администратор
Сообщений: 1190



Перед разработкой БД необходимо тщательно продумать
ее состав:

из каких таблиц она будет состоять (по логике задачи)
поля в каждой таблице и их тип
связи между таблицами
ключевые поля в таблицах
индексы по каким полям необходимо создать
и т.д.

То есть, если таблиц немного — нарисовать их сначала на бумаге,
(приблизительно, как это реализовано в Access)
проанализировать, и только после этого строить их.

Конечно, по ходу работы определенные изменения будут вноситься

Что касается конкретной проблемы, то да, обычно делают 2 поля
полное название организации и идентификатор (сокращенное),
например
ООО "Хлебобулочный комбинат № 5 здорового питания имени товарища Сидорова"
и идентификатор "Хлебокомбинат № 5"


Вернуться в Работа с базами данных в C++Builder