Регистрация  |  Вход

Можно ли создавать с помощью VF страниц "живые", а не "статичные" Excel файлы?

Вот только что столкнулся с ситуацией когда из простой ВФ страницы генерятся Excel файлы, причем все что для этого нужно - это просто указать в contentType у apex:page "application/vnd.ms-excel#имяФайла;charset=UTF-8".

сама страница состоит из таблиц, как чисто html-ных, так и apex:pageBLockTable.

и получается такой аккуратный Excel файл.

но он так скажем "статичный" - это просто "отражение" ВФ страницы.
т.е. значение в колонке Сумма - это не формула вычисляющая из других колонок, а просто цифры.

ну и конечно меня спрашивают, а можно ли сделать настоящий, "живой" Excel файл, где значение в некоторых колонках, строках задаются формулами?

думаю просто попробовать включить Excel-ный формульный текст в содержание выводимых значений в таблицах на ВФ, но не уверен, что это так просто сработает.

Может быть у кого уже был подобный опыт, и можете подсказать, стоит ли пытаться "оживить" генерируемый Excel?

Вот только что столкнулся с ситуацией когда из простой ВФ страницы генерятся Excel файлы, причем все что для этого нужно - это просто указать в contentType у apex:page "application/vnd.ms-excel#имяФайла;charset=UTF-8".

сама страница состоит из таблиц, как чисто html-ных, так и apex:pageBLockTable.

и получается такой аккуратный Excel файл.

но он так скажем "статичный" - это просто "отражение" ВФ страницы.
т.е. значение в колонке Сумма - это не формула вычисляющая из других колонок, а просто цифры.

ну и конечно меня спрашивают, а можно ли сделать настоящий, "живой" Excel файл, где значение в некоторых колонках, строках задаются формулами?

думаю просто попробовать включить Excel-ный формульный текст в содержание выводимых значений в таблицах на ВФ, но не уверен, что это так просто сработает.

Может быть у кого уже был подобный опыт, и можете подсказать, стоит ли пытаться "оживить" генерируемый Excel?

Ты уверен, что это Excel?
Быть может ты не знаешь, что Excel умеет открывать .html?

Ты уверен, что это Excel?
Быть может ты не знаешь, что Excel умеет открывать .html?

.xls - бинарный формат
.xlsx - основан на xml
Расширение не определяет содержание файла.

.xls - бинарный формат
.xlsx - основан на xml
Расширение не определяет содержание файла.

Gres
Ты уверен, что это Excel?
Быть может ты не знаешь, что Excel умеет открывать .html?

не уверен,

нет, не знал.

но формат именно такой:
contentType у apex:page "application/vnd.ms-excel#имяФайла;charset=UTF-8".

открывается новое окно (куда грузится та страница), которое сразу выбрасывает системное окошко с выбором СОхранить или Открыть. И если сохранять, то пишется расширение .xls

так что не знаю что и сказать.
но потребность в "оживлении" есть

[quote="Gres"]Ты уверен, что это Excel? 
Быть может ты не знаешь, что Excel умеет открывать .html?[/quote]

не уверен,

нет, не знал.

но формат именно такой:
contentType у apex:page "application/vnd.ms-excel#имяФайла;charset=UTF-8".

открывается новое окно (куда грузится та страница), которое сразу выбрасывает системное окошко с выбором СОхранить или Открыть. И если сохранять, то пишется расширение .xls

так что не знаю что и сказать.
но потребность в "оживлении"  есть

Открой файл текстовым редактром и удивись!

Открой файл текстовым редактром и удивись!

Gres
Открой файл текстовым редактром и удивись!

Да, я удивилсё!

внутри разметка из html body.

Но вроде можно и редактировать, и сохранять с Excel в настоящем Excel формате...

[quote="Gres"]Открой файл текстовым редактром и удивись![/quote]

Да, я удивилсё!

внутри разметка из html body.

Но вроде можно и редактировать, и сохранять с Excel в настоящем Excel формате...

Только с помощью стороннх сервисов.
Либо самому разбирать и собирать бинарники или xml в зависимости от формата.

Только с помощью стороннх сервисов.
Либо самому разбирать и собирать бинарники или xml в зависимости от формата.

Gres
Только с помощью стороннх сервисов.

ага, значит просто вписать в разметку-ячейку формулу в надежде что Excel примет ее "как родную" - нет надежды?

формула воспримется просто как текст...

жаль...

[quote="Gres"]Только с помощью стороннх сервисов. [/quote]

ага, значит просто вписать в разметку-ячейку формулу в надежде что Excel примет ее "как родную" - нет надежды?

формула воспримется просто как текст...

жаль...

Попробуй открыть .xlsx документ как zip архив

Попробуй открыть .xlsx документ как zip архив

Gres
Попробуй открыть .xlsx документ как zip архив

какой xlsx документ?

все что я могу - заставить страницу "прикинуться" .xls файлом...

или его сначала (сменить формат,) закинуть в zip, разархивировать?

[quote="Gres"]Попробуй открыть .xlsx документ как zip архив[/quote]

какой xlsx документ?

все что я могу - заставить страницу "прикинуться" .xls файлом...

или его сначала (сменить формат,) закинуть в zip, разархивировать?

Den Brown
какой xlsx документ?

Создай документ в excel с произвольным содержанием и попробуй открыть как архив

[quote="Den Brown"]какой xlsx документ?[/quote]
Создай документ в excel с произвольным содержанием и попробуй открыть как архив

Den Brown
все что я могу - заставить страницу "прикинуться" .xls файлом...

Ты можешь просто указать расширение.

[quote="Den Brown"]все что я могу - заставить страницу "прикинуться" .xls файлом...[/quote]
Ты можешь просто указать расширение.

Gres
Ты можешь просто указать расширение.

Эх, да для клиента все должно из коробки работать без сложных телодвижений.

но я завтра все это попробую, но думаю что только для эксперимента.

Вроде как СФ опартнерился с МС, может скоро будут и стандартные решения...

[quote="Gres"]Ты можешь просто указать расширение.[/quote]

Эх, да для клиента все должно из коробки работать без сложных телодвижений.

но я завтра все это попробую, но думаю что только для эксперимента.

Вроде как СФ опартнерился с МС, может скоро будут и стандартные решения...

Gres
Только с помощью стороннх сервисов.
Либо самому разбирать и собирать бинарники или xml в зависимости от формата.

Ошибаешься. Я делал и делаю xml который понимает excel как родной.

[quote="Gres"]Только с помощью стороннх сервисов.
Либо самому разбирать и собирать бинарники или xml в зависимости от формата.[/quote]

Ошибаешься. Я делал и делаю xml который понимает excel как родной.

wilder
Ошибаешься. Я делал и делаю xml который понимает excel как родной.

Excel понимает и xml и html я же не спорю, наоборот, говорю, что xlsx основан на xml.

[quote="wilder"]Ошибаешься. Я делал и делаю xml который понимает excel как родной.[/quote]
Excel понимает и xml и html я же не спорю, наоборот, говорю, что xlsx основан на xml.

Gres
wilder
Ошибаешься. Я делал и делаю xml который понимает excel как родной.

Excel понимает и xml и html я же не спорю, наоборот, говорю, что xlsx основан на xml.

Пока салесфорс не начнёт нормально работать с zip архивами xlsx будет проблематичным форматом.

[quote="Gres"][quote="wilder"]Ошибаешься. Я делал и делаю xml который понимает excel как родной.[/quote]
Excel понимает и xml и html я же не спорю, наоборот, говорю, что xlsx основан на xml.[/quote]

Пока салесфорс не начнёт нормально работать с zip архивами xlsx будет проблематичным форматом.

wilder
Я делал и делаю xml который понимает excel как родной.

Т.е. у тебя получалось делать xml с формулами?

[quote="wilder"]Я делал и делаю xml который понимает excel как родной.[/quote]
Т.е. у тебя получалось делать xml с формулами?

Gres
wilder
Я делал и делаю xml который понимает excel как родной.

Т.е. у тебя получалось делать xml с формулами?

Да. Так же могу генерить очень много чего и для Word.

[quote="Gres"][quote="wilder"]Я делал и делаю xml который понимает excel как родной.[/quote]
Т.е. у тебя получалось делать xml с формулами?[/quote]

Да. Так же могу генерить очень много чего и для Word.

Есть примеры?

Есть примеры?

Gres
Есть примеры?

Примеры кода или файлов?

[quote="Gres"]Есть примеры?[/quote]

Примеры кода или файлов?

wilder
Примеры кода или файлов?

Хотелось бы увидеть и то и то

[quote="wilder"]Примеры кода или файлов?[/quote]
Хотелось бы увидеть и то и то

wilder
Я делал и делаю xml который понимает excel как родной.

wilder любит xml.

у меня Excel док всегда фиксированный, это просто экспорт кастомного репорта (но кол-во строк конечно произвольное).

а если его формат фиксирован, то получается что я могу:

1 - создать в Excel документ как я хотел чтобы он выглядел и полностью работающим в плане формул.
2 - сохранить как xlsx (а может даже как просто xml).
3 - открыть его в текстовом или др редакторе и внимательно изучить куда нужно вставлять значение и как итерировать строку со всеми ее формулами.
4 - сделать из распотрашенного файла шаблон, который и использовать в своем апекс коде.

[quote="wilder"]Я делал и делаю xml который понимает excel как родной.[/quote]

wilder любит xml.

у меня Excel док всегда фиксированный, это просто экспорт кастомного репорта (но кол-во строк конечно произвольное).

а если его формат фиксирован, то получается что я могу:

1 - создать в Excel документ как я хотел чтобы он выглядел и полностью работающим в плане формул.
2 - сохранить как xlsx (а может даже как просто xml).
3 - открыть его в текстовом или др редакторе и внимательно изучить куда нужно вставлять значение и как итерировать строку со всеми ее формулами.
4 - сделать из распотрашенного файла шаблон, который и использовать в своем апекс коде.

Den Brown
wilder
Я делал и делаю xml который понимает excel как родной.

wilder любит xml.

у меня Excel док всегда фиксированный, это просто экспорт кастомного репорта (но кол-во строк конечно произвольное).

а если его формат фиксирован, то получается что я могу:

1 - создать в Excel документ как я хотел чтобы он выглядел и полностью работающим в плане формул.
2 - сохранить как xlsx (а может даже как просто xml).
3 - открыть его в текстовом или др редакторе и внимательно изучить куда нужно вставлять значение и как итерировать строку со всеми ее формулами.
4 - сделать из распотрашенного файла шаблон, который и использовать в своем апекс коде.

Абсолютно все точно указал. За одним исключением там есть ещё заморочки со счетчиками строк и столбцов, а в остальном вроде без проблем.

[quote="Den Brown"][quote="wilder"]Я делал и делаю xml который понимает excel как родной.[/quote]

wilder любит xml.

у меня Excel док всегда фиксированный, это просто экспорт кастомного репорта (но кол-во строк конечно произвольное).

а если его формат фиксирован, то получается что я могу:

1 - создать в Excel документ как я хотел чтобы он выглядел и полностью работающим в плане формул.
2 - сохранить как xlsx (а может даже как просто xml).
3 - открыть его в текстовом или др редакторе и внимательно изучить куда нужно вставлять значение и как итерировать строку со всеми ее формулами.
4 - сделать из распотрашенного файла шаблон, который и использовать в своем апекс коде.[/quote]

Абсолютно все точно указал. За одним исключением там есть ещё заморочки со счетчиками строк и столбцов, а в остальном вроде без проблем.