【发布时间】:2014-11-26 06:54:33
【问题描述】:
我正在处理一个需要从一组字段值生成 csv 文件的 visualforce 项目。
我正在使用以下代码生成 csv,我应该单击命令按钮来生成文件,但问题是当我在 apex 页面上单击保存时,会生成一个空文件,而无需获取所需的数据。
Visualforce 页面:
<apex:page controller="test2" contentType="text/csv#{!fileName}.csv" showHeader="false" sidebar="false" standardStylesheets="false">
<apex:form >
<apex:outputText value="{!input}" escape="false"/>
<apex:commandButton action="{!exportContent}"/>
</apex:form>
</apex:page>
控制器:
public with sharing class test2 {
// Controller for ExportData.page,
// which expects to be handed the following POST variables:
// @inputdata(string) data to export (i.e. in CSV format)
// @filename(string) name of the file to export, e.g. 'AccountData'
public transient String input { public get; private set; }
public transient String fileName { public get; private set; }
public void exportContent(){
Map<String,String> params = ApexPages.currentPage().getParameters();
// We expect to be handed POST variables called 'inputdata' and 'filename'
fileName = params.get('filename');
if (fileName == null) fileName = 'Data';
input = params.get('inputdata');
if (input == null) input = 'No data provided.';
}
}
【问题讨论】:
标签: csv salesforce visualforce apex