Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

А бывают гриды с КАЛЬКУЛИРУЕМЫМИ КОЛОНКАМИ? [D7, MSSQL]


Страницы:   1 2

BlackTiger ©   (2002-12-30 13:55:00) 

Я имею ввиду такую вэсч

Есть результат запроса (допустим, нехилый по времени выполнения).
Теперь пользователь должен иметь возможность получить колонку, содержащую какую-либо формулу по полям из результата, при этом формулу задает он сам.

Можно ли в какой-нибудь грид запихать новую колонку с формулой типа
xxDBGrid.Column["NewCalcColumn"].Formula := "[Field 1]+[Field 2]*100";


Здесь, конечно, нужны парсеры выражений.
Но может можно замутить аналог стандартными средствами?

Или сделать "запрос к запросу"?

Подскажите, если не трудно.


BlackTiger   (2002-12-30 14:30:00) [21]

Эхххх, господа, господа...
Вы анализ проекта и техзадание тоже так же читаете?
Если да, то какие вы нафиг программеры! (Никого не хочу обидеть, но посту не-по-делу)

Есть ДВА условия
1. ПОЛЬЗОВАТЕЛЬ САМ ОПРЕДЕЛЯЕТ ФОРМУЛУ
2. ЗАПРОС "ДОЛГОГО ВЫПОЛНЕНИЯ" и каждый раз его вызывать - "жирно будет"

Я хочу использовать fkCalculated, но формулу задавать ДИНАМИЧЕСКИ (как ее передать - это другой вопрос).

Интересно, а вот есть ли такие DB-парсеры (freeware, желательно), которым можно передать Fields текущей записи и текст формулы, а они вернут мне результат?


dimis   (2002-12-30 14:15:00) [22]

в этом случае проше всего самому составлять запрос
(SQL.ADD)
проблема мне видится в том чтобы пользователю было удобно вводить формулы


Alexandr   (2002-12-30 14:09:00) [23]

вы исходный пост читали?
Вникли в суть вопроса?
А чего ж тогда ерунду всякую пишете?


sniknik   (2002-12-30 14:08:00) [24]

В самом MSSQL можно кальк поле сделать
CREATE TABLE mytable
(
low int,
high int,
myavg AS (low + high)/2
)

не пойдет?


asmith   (2002-12-30 14:05:00) [25]

MSSQL сам позволяет создавать вычисляемые поля при, см. BOL, CREATE TABLE


Alexandr   (2002-12-30 14:01:00) [26]

6) Лучший грид - excel


Alexandr   (2002-12-30 14:00:00) [27]

1) Грид только отображает данные.
2) Данные беруться у DataSet к которому через dataSource привязан твой грид
3) У dataSet есть вычисляемые поля.
4) Для вычисляемого поля можно прикрутить вычислитель формул.
5) Если данные долго выбираются, а нужны постояно , т.е. часто обновлять их нет необходимости, то их можно временно хранить в другой таблице - хоть в БД, хоть локально в каком-нибудь TMemTable.


Delirium^.Tremens   (2002-12-30 13:58:00) [28]

двойной клик на ..DataSet.. NEW - Calculated


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо