Browse по нескольким таблицам и посылаемый Clarion'ом запрос
Модератор: Andrew™
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- ✯ Ветеран ✯
- Сообщения: 5006
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 21 раз
Browse по нескольким таблицам и посылаемый Clarion'ом запрос
С8.0.9759. Стандартные ABC шаблоны. В качестве сервера - Firbird 2.1, стандартный ODBC драйвер, что, думаю, не важно. Есть Browse, для простоты в нём две связанные таблицы, они большие, по 30 полей в каждой. Но мне надо всего 2 (два) поля из первой для показа, ну и в Hot Fields я загоняю ещё 3 поля из первой. Вторую таблицу я использую для SQL фильтра. Смотрю какую Clarion вьюху организовал, всё путём - мои поля и связь по foreign ключу. А теперь смотрю какой Clarion запрос посылает серверу и ужасаюсь - почти все поля из первой таблицы и все поля из второй. Вопрос. Это где-то регулируется или это внутренняя кухня Clarion, туда не залезешь? Зачем, вообще, мне это нужно? Лишние поля тянуть - это не правильно, но бог с ним. Самое главное, я хочу наложить distinct на запрос и, получается, что, чтобы он сработал, приходится ненужные мне поля вставлять в Hot Fields и обнулять их через prop:Name. Согласитесь - дурдом. И, ещё, подводный камень - при добавлении полей в эти таблицы новые поля могут вылезти в этом Browse (запросе) и distinct не сработает.
We are hard at work… for you.
Re: Browse по нескольким таблицам и посылаемый Clarion'ом за
Скорее всего выполняется ThisWindow.Update() и обе записи подгружаются.
-
- ✯ Ветеран ✯
- Сообщения: 5006
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 21 раз
Re: Browse по нескольким таблицам и посылаемый Clarion'ом за
А при чём ThisWindow.Update()? Ведь не факт, что любой Browse тянет все столбцы таблицы. Честно говоря, я думал, что только те столбцы, которые есть в структуре View, участвуют в SQL запросе. Оказалось не так. И, получается на данный момент, что я не могу положиться на структуру View, а должен проверять, какой запрос посылается серверу.
We are hard at work… for you.