2011-12-29 8 views
0

'ExcelファイルやCSVファイルを頂点コード(添付ファイル)で作成することは可能ですか?現在のところ、私はVFページで動作することがわかりますが、私はvfページを使用していない頂点コードでそれを行うために探しています、私はオプションが表示されません。エイペックスコードでExcelファイルを作成

何か助けていただければ幸いです。

おかげ

+0

VFページでファイルを保存したくない場合は、どこにファイルを保存する予定ですか?それを書類などに保管しますか? –

答えて

3

は、残念ながら、CSVファイルの作成を処理するためのApexにはネイティブCSVライブラリやAPIはありません。確かにXLSドキュメントではありませんが、ネイティブのXML DOMライブラリを使用してExcelにやさしいXMLドキュメントを作成することはできます。

CSVを書き込むには、これはかなり簡単です。それは基本的に各レコードの書き込みの終わりに、キャリッジリターンおよび/または改行を含む大きな巨大な文字列です。 String.replaceAll('\','\'');などを使用してプロパティ値のエスケープメイションを慎重に管理する必要があります。これは、あなたのスクリプトステートメントをひどくひどく噛んでしまいます。 次に、新しいDocument()を作成し、Blob.valueOf(String)を使用して文字列をBlobに変換し、そのBlobをドキュメントの本体としてインスタンス化します。 非常に大規模な文書を作成する予定の場合は、他の形式の書式を作成するか、この処理をリモートシステム(EC2?)にオフロードし、文書をタイムリーに応答させることを検討してください。

Apex CSVユーティリティは、必要な場合にはすでに書いてあります。

+0

私はこの記事を見つけて、さらにグーグルグーグルで、salesforceにネイティブのescapeCsv()メソッドが追加されていることがわかりました。 https://developer.salesforce.com/releases/release/related/New+String+Methods – martin

関連する問題