LimeReport Forum
General Category | Основное => Discussion | Обсуждение => Topic started by: aarekuha on February 19, 2019, 09:04:48 am
-
Доброго времени суток!
Из Qt передаю QAbstractItemModel в dataManager. Все переданные записи не нужны. Возможно ли их фильтровать в самом LimeReport?
-
На данный момент, фильтровать внешние данные limereport не умеет. Точнее может в случае подчиненного источника данных, но главный источник данных всё же должен быть заранее подготовлен вашим приложением.
-
Спасибо большое! Вопрос закрыт.
-
Если вопрос в фильтрации выделенных строк в TableView :) то вот простое решение
class SelectionProxy: public QSortFilterProxyModel{
public:
SelectionProxy(QItemSelectionModel* selectionModel, QObject* parent = 0)
:QSortFilterProxyModel(parent), m_selectionModel(selectionModel) {
setSourceModel(selectionModel->model());
}
// QSortFilterProxyModel interface
protected:
bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const{
QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent);
return m_selectionModel->isSelected(index);
}
private:
QItemSelectionModel* m_selectionModel;
};
......
report.dataManager()->addModel("test",new SelectionProxy(ui->tableWidget->selectionModel()),true);