Заполнение справочных таблиц в программе

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Fed
Сообщения: 17
Зарегистрирован: 13 ноя 2005, 10:39

Заполнение справочных таблиц в программе

Сообщение Fed » 25 ноя 2005, 13:16

Хотелось бы узнать, кто как заполняет справочные таблицы (не совсем корректное название, я понимаю) в базе, когда их много. Т. е. имеется много таблиц, причем данные в них изменяются достаточно редко - один раз забили и забыли. Писать отдельное приложение/окно/форму для работы с каждой - геморой. Тем не менее пользователь должен иметь к этим таблицам доступ. Есть идея написать универсальное окно, в котором предлагается сначала выбрать справочную таблицу для редактирования, а затем в обычном Grid-e (Delphi) вносить изменения. Это окно не отягощено интерфейсом, т.к. пользоваться им придется редко. Укажите, правильно ли мыслю, поделитесь своим опытом.

SAMZ
Сообщения: 128
Зарегистрирован: 21 мар 2005, 08:17

Re: Заполнение справочных таблиц в программе

Сообщение SAMZ » 25 ноя 2005, 15:25

Fed писал(а):Хотелось бы узнать, кто как заполняет справочные таблицы (не совсем корректное название, я понимаю) в базе, когда их много. Т. е. имеется много таблиц, причем данные в них изменяются достаточно редко - один раз забили и забыли. .
Это кому, что нравится. Реализации самые разные. Есть в том числе и описанная у Вас. Некоторые разработчики засовывают все справочники в одну таблицу с некоторым количеством избыточных для конкретного справочника полей. В такой табоице используется поле, допустим, SPRID interger для идентификации вида справочника. Это облегчает создание унифицированного интерфейса работы со справочниками. Понято, что такой "мешок" со справочной информацией должен сопровождаться мастер таболицей видов справочников.

smu
Сообщения: 39
Зарегистрирован: 29 окт 2005, 10:12

Re: Заполнение справочных таблиц в программе

Сообщение smu » 28 ноя 2005, 00:40

Fed писал(а):Есть идея написать универсальное окно, в котором предлагается сначала выбрать справочную таблицу для редактирования, а затем в обычном Grid-e (Delphi) вносить изменения. Это окно не отягощено интерфейсом, т.к. пользоваться им придется редко. Укажите, правильно ли мыслю, поделитесь своим опытом.
Не советую использовать Grid для редактирования. К сожалению, много зависит от того насколько грамотные пользователи. Я использую схему:
1. сбоку слева дерево со справочными таблицами
2. сверху справа Grid для текущей таблицы в режим просмотра
3. снизу справа панель с полями для редактирования записей и кнопками

Klyk
Сообщения: 100
Зарегистрирован: 26 окт 2004, 23:28

Re: Заполнение справочных таблиц в программе

Сообщение Klyk » 28 ноя 2005, 08:01

smu писал(а): Не советую использовать Grid для редактирования. К сожалению, много зависит от того насколько грамотные пользователи...
Смотря как сделать этот грид. если взять тот же Ehlib, то можно навести красоту волшебную. я наоборот отказался от дополнительных полей.. дабы избежать громоздкости интерфейса.

а по теме.
в БД сделано как описал SAMZ. На клиентской части: DBLookupComboboxEh для списка видов справочников, а в гриде (тоже из ehlib) - собственно сам справочник.

ЗЫ. так устроены только ооочень маленткие справочники.. которые редактируються ооочень редко

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Сообщение Ivan_Pisarevsky » 28 ноя 2005, 08:22

На мой взгляд разделяй и властвуй, то бишь я разложил справочники по таблицам, к каждой свой грид и панель инструментов. А то сольешь в одну супер таблицу, потом какой-нидь неосторожный чих и хрен найдешь где аукнется... А сделать пару формочек для редактирования одного справочника через банальный копи-паст из стандартой заготовки занимает считанные минуты.

Fed
Сообщения: 17
Зарегистрирован: 13 ноя 2005, 10:39

Сообщение Fed » 28 ноя 2005, 11:41

Вариант smu мне особенно понравился. Спасибо.
На мой взгляд разделяй и властвуй, то бишь я разложил справочники по таблицам, к каждой свой грид и панель инструментов. А то сольешь в одну супер таблицу, потом какой-нидь неосторожный чих и хрен найдешь где аукнется...
Я имел в виду не создание мега-Grid-а, а универсальную форму, внешний вид Grid-a получается в программе исходя из того, с какой таблицей работаешь (какие в ней поля, в частности) - если в таблице два поля для заполнения пользователем, то и в Grid их будет тоже два.

А что такое Ehlib?

Klyk
Сообщения: 100
Зарегистрирован: 26 окт 2004, 23:28

Сообщение Klyk » 28 ноя 2005, 23:12

Fed писал(а): А что такое Ehlib?
http://www.ehlib.com/RUS/default.htm

Ответить