Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
грид
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста Таблица заказа Код, дата, Какой, итд , КОД ЕД. ИЗМЕРЕНИЯ Таблица едениц измерения(справочник)-поля код ед.измерения, Назввание ед. измерения один к многим(код-код-интегер), как понимаете. В таблице по всем правилам реляционной модели храню код ед. измерения Имеет место быть каскадный триггер упдейта, рестрикт удаления Есть грид, на котором отражаются пункты заказа КОД, ДАТА, итд и КОД ЕДЕНИЦЫ ИЗМЕРЕНИЯ 1)Хочу видеть не код еденицы измерения, а название еденицы измерения в гриде но только я пытаюсь в колумне прописать источник записи не код из таблицы заказов, а название из справочника+прописываю индекс---- отражается первая запись из справочника, а не согласно кодов как быть не хочется прописывать все ручками, помому что в заказе таких полей будет несколько , как это сделать в дизайнере, какого свойства не вижу таблицы в окружении формы полько не посылайте прописать ручками отношения, открыть таблицы итд 2)и кстати в некоторых прогах видел хранять и код еденицы измерения, и название вносят в таблицу заказов а это то зачем. например измениться "кг" на "килограмм" и чего будет? или каждый раз при открытиии проверять, менять-стоит ли благодарствую.....ппрошу внимательно ответить, сам долго бьюсь, помочь, прочитать некому, негде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2003, 19:04 |
|
||
|
грид
|
|||
|---|---|---|---|
|
#18+
1)Хочу видеть не код еденицы измерения, а название еденицы измерения в гриде Пример: my_alias - твоя таблица с кодом ед.изм. spisediz - список ед.изм pole5 = 'iif(seek(my_alias.kodediz,"spisediz","kodediz"),spisediz.naimr,"")' thisform.Form1.grid1.column5.controlsource = pole5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2003, 20:03 |
|
||
|
грид
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответ Как примерно отобразить, я понял, но кривовато как то... как сделать проше А вообще вопрос скорее был про структуру построения Извините за не очень корректную постановку вопроса Вопрос скорее о правильности структуры построения Дано 2 вварианта, какой правильный 1)сделать а)Таблица заказа Код, дата, Какой, итд , КОД ЕД. ИЗМЕРЕНИЯ б)Таблица едениц измерения(справочник)-поля код ед.измерения, Назввание ед. измерения один к многим(код-код-интегер), как понимаете. 2)а)Таблица заказа Код, дата, Какой, итд , ЕД. ИЗМЕРЕНИЯ(С) Сделать индекс по полю ЕД. ИЗМЕРЕНИЯ(С) регуляр б)Таблица едениц измерения(справочник)-поля код ед.измерения, Назввание ед. измерения(С) Сделать индекс по полю Назввание ед. измерения (кандидат) Создать отношение один к многим попробовал так и так, заведенные триггеры удаления работают-не дают удалить из справочника запись если в ЗАКАЗАХ есть связанная запись триггер обновления тоже работает-если изменить в справочнике "кг" на "килограмм"(например), каскадно меняется в таблице заказов второй вариант мне на данный момент более предпочтителен, потому что проще будет организовывать грид с заказами(он будет на основании только одной таблицы)-все вопросы отпадают. 1)Вообще правильно ли это? 2)Наверно не правильно и чем второй вариант мне грозит в будущем(подводных камней пока не вижу) Благодарствую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2003, 20:25 |
|
||
|
грид
|
|||
|---|---|---|---|
|
#18+
по второму варианту и поле код_Ед.изм. в таблице единиц измерения становится вобщем-то не нужным. А еще можно так же поступить со справочником товаров, потом со справочником клиентов и.т.д. :) Чтобы из нескольких нормализованных таблиц получить 1 удобную для просмотра пользователемтаблицу используйте View, Select * from или Set relation. > отражается первая запись из справочника, а не согласно кодов стало быть НЕ установили правильно отношения между таблицами в dataenviroment формы, поэтому и не соответствует наименование единицы коду в таблице zakaz. А должно быть примерно так: .Relation1.Parentalias='zakaz' .Relation1.Childalias='sp_edizm' .Relation1.RelationalExpr='kod_edizm' &&поле в таблице zakaz .Relation1.childorder='kod' &&индекс по коду в таблице sp_edizm > подводных камней пока не вижу Использование в таблице Zakaz вместо кодов самих длинных наименований. приведет 1) к "распуханию" самой таблицы, "распуханию" индекса по данному полю и к соответсвенно к снижению прозводительности; 2)для изменения наименования единицы вместо того чтобы изменить 1 запись в справочнике sp_edizm, потребуется изменить множество записей в таблице zakaz и еще куче таблиц, где фигурирует ссылка на ед.изм. И может оказаться, что в этот момент эти таблицы или хотя бы какая-нибудь одна нужная запись в них заблокированы другими пользователями. То что это делает триггер, не меняет сути. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2003, 15:52 |
|
||
|
грид
|
|||
|---|---|---|---|
|
#18+
edizm (kod, name) - справочник ед. изм. zakaz (kod, data, kod_ed_izm) - таблица заказов Для edizm создаешь индекс по коду (если он есть то просто устанавливаешь) Код: plaintext 1. 2. 3. 4. 5. здесь i - номер столбца, в котором стоит zakaz.kod_ed_izm В дизайнере: 1. В DataEnviroment устанавливаешь связь 2. Указываешь Grid.RecordSource 3. Указываешь Grid.Columns.ControlSource как в примере выше (можно просто выбрать из списка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 09:49 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32308068&tid=1597650]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
128ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 429ms |

| 0 / 0 |
