Название: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Druxa от Сентябрь 20, 2007, 18:04 есть QSqlTableModel которая вставляется в QTableView, как добавить в модель и связать с видом свой какой-нибудь расчёт?
Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Пантер от Сентябрь 20, 2007, 18:09 Возможно туплю, но что-то типа
SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Druxa от Сентябрь 20, 2007, 18:24 Возможно туплю, но что-то типа Не не надо средствами БД, не хочу её перегружать.SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Вячеслав от Сентябрь 20, 2007, 18:28 Возможно туплю, но что-то типа Не не надо средствами БД, не хочу её перегружать.SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: ритт от Сентябрь 20, 2007, 20:46 >Для любого современного сервака _такие_ расчеты - ничто...
согласен. но не проблема ведь сделать и средствами кутэ, причём, задача тривиальная. наследуешься от QSqlQueryModel и перегружаешь метод QVariant data(const QModelIndex& index, int role) const по индексу узнаёшь номер столбца (или параметр, по которому будешь определять в какой столбец/строку писать расчётные данные) и вызовами даты из требуемых ячеек набираешь исходные данные для обсчёта советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка а, да...практически забыл: перегрузи ещё ровКаунт и колКаунт :) Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Вячеслав от Сентябрь 20, 2007, 22:21 >Для любого современного сервака _такие_ расчеты - ничто... Ну да .... дописать ~50 символов в запрос или городить свой класс - каждый выбирает сам ;)Мне ехать(и нехай сервак думает - будет возникать или запросы причешу или еще мозгов добавлю ;) побыстрее.....согласен. но не проблема ведь сделать и средствами кутэ, причём, задача тривиальная. наследуешься от QSqlQueryModel и перегружаешь метод QVariant data(const QModelIndex& index, int role) const по индексу узнаёшь номер столбца (или параметр, по которому будешь определять в какой столбец/строку писать расчётные данные) и вызовами даты из требуемых ячеек набираешь исходные данные для обсчёта советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка а, да...практически забыл: перегрузи ещё ровКаунт и колКаунт :) Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: ритт от Сентябрь 20, 2007, 23:24 ну, если у него в третьем столбце простая арифметика, то, конечно, проще запросом и не ипсти мозги на форуме...
а ежели какое-нибудь моделирование или др. сложные вычисления? - тоже запросегом? Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Вячеслав от Сентябрь 21, 2007, 09:32 ну, если у него в третьем столбце простая арифметика, то, конечно, проще запросом и не ипсти мозги на форуме... Пример можно ? моделирования ?а ежели какое-нибудь моделирование или др. сложные вычисления? - тоже запросегом? Вариантов-то масса ;) И для каждого случая надо свой ввыбирать по месту .... Бензопилой картошку тоже чистить можно, но вот удобно-ли ? Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: ритт от Сентябрь 21, 2007, 10:07 ну, так-то да...если ему конкретно формула из сабжа была нужна, то тема давно исчерпана
Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: matsumoto от Сентябрь 21, 2007, 11:46 советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка что за прослойка такая? можно поподробнее? Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Druxa от Сентябрь 21, 2007, 21:08 Народ, расчёт простой, но их штук 10 нужно сделать, что стандартных Qt методов нету как я понял :(
Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Вячеслав от Сентябрь 21, 2007, 21:46 если математика простая - пихай в запрос ;) Если что-нибудь типа статистики - или делай свой класс как выше советовали или смотри в сторону ХП ....
Название: Re: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B? Отправлено: Icoz от Сентябрь 25, 2007, 19:30 советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка что за прослойка такая? можно поподробнее? Думаю тебе про http://doc.trolltech.com/4.3/qproxymodel.html#details (http://doc.trolltech.com/4.3/qproxymodel.html#details) пытались сказать... |