Я добавлю, что если уж совсем по науке и с полной нормализацией делать, то надо не одну таблицу делать, а несколько. В головной таблице держать enum с типом ссылки, в каждой дочерней таблице держать ссылку на головную таблицу (например по recId), и ссылку на определяющую сущность по какому-то другому ключу. Соответственно, например таблица профиля разноски по поставщику развалилась бы на три таблицы с разными ссылками - VendLedgerAccounts, VendLedgerAccountsVend, VendLedgerAccountsVendGroup.
Но как верно заметил mazzy, хотя нормализованная форма теоретически дает непротиворечивость и компактность хранения, она еще дает и бОльшую сложность для пользователя и бОльшие трудности с организацией интерфейса. Поэтому отцы-основатели из Damgaard выбрали имеющийся подход. Меня он вполне устраивает...
|