Привет Всем!
До сих пор для экспорта данных из browse в Excel использую библиотеку Олега Руденко dexcel.
Если кто помнит эту замечательную быструю библиотеку, прошу совета (или кусок кода) как в процессе выполнения XLS.Write:Table(Queue:XLS) сделать так, чтобы в выходном excel-файле появились "промежуточные итоги"
dexcel - промежуточные итоги
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- SergioRaguzini
- Старожил
- Сообщения: 252
- Зарегистрирован: 08 Декабрь 2009, 19:16
- Откуда: Краснодарский край
- Благодарил (а): 16 раз
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5234
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 64 раза
dexcel - промежуточные итоги
Привет, Сергей. Что такое "промежуточные итоги"?
C6/C12, ШВС, tps/btrieve.
- SergioRaguzini
- Старожил
- Сообщения: 252
- Зарегистрирован: 08 Декабрь 2009, 19:16
- Откуда: Краснодарский край
- Благодарил (а): 16 раз
dexcel - промежуточные итоги
Вячеслав, Приветствую!
Например, есть некая упорядоченная (отсортированная по id-магазинов) таблица данных некой торговой организации. При выводе необходимо вычислить итоги (это и есть "промежуточные") по магазину (GroupFooter), далее идет(-ут) следующие магазины со своими итогами и в конце общий итог по организации.
Как делать в dexcel общие итоги, а вот как вставить "промежуточные" не пойму
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5234
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 64 раза
dexcel - промежуточные итоги
Я помешаю итоги в общую очередь со строками. Чтобы отличать, используется байтовое поле typeRec, которое обычно принимает значение 0 - заголовок группы, 1 - строка, 2 - итого по группе, 3 - общий итог. Для вложенных подгрупп есть ещё поле level, в которое помещается номер уровня, а визуально это отображается добавлением многоточия перед названием подгруппы. Иногда, но редко, бывает встраивание одной таблицы в другую, в этом случае typeRec принимает несколько другие значения. В таком виде все выводится в LIST контрол на экран, и его можно экспортировать в Excel как есть (с сохранением ширины колонок, фильтров и т.п.) через dexcel и специальный шаблон. Шаблон экспортирует содержимое LIST построчно. В самом dexcel я делал небольшую доработку, введя стиль для отображения заголовков и итогов, который bold.
Эта схема работает хорошо и покрывает основные задачи. Размещение данных предварительно на экране позволяет организовывать итерактивную работу с ними.
Недавно потребовалось выделение цветом отдельных ячеек таблицы. Основная схема такого не поддерживает, поэтому в шаблоне прописал признак ручного вывода строки, и в ручном коде перед экспортом строки в эксель отдельным колонка присваивал по условию специальный стиль.
В общем, резюмируя, если просто выводить в эксель, то надо делать это не одним методом, а построчно. Тогда можно вклинить строки с промежуточный итогами, их стилизацию.
Эта схема работает хорошо и покрывает основные задачи. Размещение данных предварительно на экране позволяет организовывать итерактивную работу с ними.
Недавно потребовалось выделение цветом отдельных ячеек таблицы. Основная схема такого не поддерживает, поэтому в шаблоне прописал признак ручного вывода строки, и в ручном коде перед экспортом строки в эксель отдельным колонка присваивал по условию специальный стиль.
В общем, резюмируя, если просто выводить в эксель, то надо делать это не одним методом, а построчно. Тогда можно вклинить строки с промежуточный итогами, их стилизацию.
C6/C12, ШВС, tps/btrieve.