экспорт Flex Datagrid в Excel, который лучше реализовать с Java или Flex? - PullRequest
0 голосов
/ 07 августа 2011

с платформой j2ee, данные datagrid взяты из java dao (из базы данных), поэтому какой способ лучше экспортировать данные datagrid в Excel с помощью java dao или flex? Thx, и забыть мой плохой английский .. .

Ответы [ 3 ]

0 голосов
/ 07 августа 2011

Я бы предложил использовать подход реализации на стороне сервера. В компании, в которой я работаю, мы попробовали оба варианта (но все в порядке .NET). К настоящему времени у нас было так много проблем с экспортом документов (также PDF [не так ли иронично ??]) в сочетании с Flex. Я помню следующие проблемы:

  • вам может потребоваться более свежая версия вашего плагина Flash (> = 10.0) (может вызвать проблемы с устаревшими версиями)
  • были проблемы с указанием различных типов данных, таких как даты
  • в итоге потребовалось больше человеко-дней, чем предполагалось

Реализация на стороне сервера может потребовать больше усилий (на первом этапе), но

  • Java мощнее
  • это быстрее
  • возможна дополнительная конфигурация
  • (сборка мусора работает намного лучше)
0 голосов
/ 09 августа 2011

Я также столкнулся с этой проблемой в своем приложении Flex, чтобы выполнить экспорт сетки данных на стороне клиента или на стороне сервера.

Первоначально я экспортировал сетку данных на стороне клиента, используя as3xls (как упомянуто выше). Сначала это работало хорошо, но потом стало доставлять мне настоящие головные боли, когда были достигнуты ограничения (то есть невозможность экспортировать символы, не входящие в ASCII). Это когда я перестал использовать as3xls.

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

Если вам требуется форматирование или значительно превосходящая мощность Java для обработки экспорта, я бы предложил использовать MS Office API, например Apache POI , чтобы дать вам возможность намного лучше форматировать ваши данные в стандартный XLS или XLSX документы. В итоге это стало решением, за которое мы пошли (за исключением того, что мы используем SmartXLS в качестве нашего API-интерфейса Excel), для большей возможности точно контролировать, каким образом экспортируемые данные должны быть размещены и отформатированы, а также более удобна доставка файлов XLS / XLSX клиентам профессионал, и его легче обслуживать менее опытным клиентам, чем CSV.

0 голосов
/ 07 августа 2011

Ваш настоящий вопрос - там, где у него больше поддержки.Во Flex для меня я нашел 2 решения для этой проблемы:

  1. использует библиотеку сценариев действий as3xls http://code.google.com/p/as3xls/ - она ​​экспортирует настоящий документ Excel, но у него есть минусыэто из моего опыта с ним, он поддерживает только английские символы, он не экспортирует unicoded символы

  2. сохраняет файл feak xls, который содержит формат таблицы html, да, это работает!

...