Export report as csv (unicode) [message #635861] |
Thu, 28 October 2010 07:52  |
Eclipse User |
|
|
|
Hello,
I use birt-runtime-2_3_2,I export data with CSVRenderOption to csv file,but the unicode characters like 'Ü' are becomes "Ü".It is problem from CSVRenderOption,parsing or exel,any idea?
Regards,
Lubo
|
|
|
|
Re: Export report as csv (unicode) [message #635873 is a reply to message #635871] |
Thu, 28 October 2010 09:05   |
Eclipse User |
|
|
|
Are you sure?Exel,but how to fix that problem?It is depents on version or plugin?Here is my code for export :
public void executeReportCsvDataExtraction(String strReportsDirectory,String strReportName,String strParameters) throws Exception
{
try
{
Log4J.infoout(String.valueOf(m_objReportEngine));
IReportRunnable design = m_objReportEngine.openReportDesign(strReportsDirectory+File. separator+strReportName+ ".rptdesign");
IGetParameterDefinitionTask paramtask = m_objReportEngine.createGetParameterDefinitionTask( design );
Collection clParameters = paramtask.getParameterDefns( true );
ReportDesignHandle designHandle = (ReportDesignHandle) design.getDesignHandle( );
ElementFactory designFactory = designHandle.getElementFactory( );
buildDataSource(designFactory, designHandle);
designHandle.close();
//Create task to run and render the report,
IRunAndRenderTask task = m_objReportEngine.createRunAndRenderTask(design);
Hashtable htParameters=new Hashtable();
StringTokenizer objParametersTokenizer=new StringTokenizer(strParameters,"&");
String strParameter;
int iIndex;
for(;objParametersTokenizer.hasMoreTokens()
{
strParameter=objParametersTokenizer.nextToken();
iIndex=strParameter.indexOf('=');
if (iIndex>-1)
{
htParameters.put(strParameter.substring(0,iIndex),
strParameter.substring(iIndex+1));
}
}
Iterator iter = clParameters.iterator();
IParameterDefnBase param;
IScalarParameterDefn scalar;
String strParameterValue;
while ( iter.hasNext( ) )
{
param = (IParameterDefnBase) iter.next( );
if ( param instanceof IScalarParameterDefn )
{
scalar = (IScalarParameterDefn) param;
strParameterValue=String.valueOf(htParameters.get(scalar.get Name()));
switch (scalar.getDataType())
{
case IScalarParameterDefn.TYPE_INTEGER:
case IScalarParameterDefn.TYPE_DECIMAL:
task.setParameterValue(scalar.getName(),Integer.parseInt(str ParameterValue));
break;
default:
String a=(String) htParameters.get(scalar.getName());
task.setParameterValue(scalar.getName(),a);
break;
}
}
}
task.validateParameters();
CSVRenderOption csvOptions = new CSVRenderOption();
csvOptions.setOutputFormat( "CSV" );
csvOptions.setOutputFileName("c:/csvReport.csv");
task.setRenderOption( csvOptions );
task.run();
task.close();
}
catch( Exception ex)
{
ex.printStackTrace();
throw ex;
}
}
[Updated on: Thu, 28 October 2010 09:17] by Moderator
|
|
|
|
|
|
|
Re: Export report as csv (unicode) [message #1810035 is a reply to message #637735] |
Mon, 29 July 2019 12:50  |
Eclipse User |
|
|
|
Hello,
I am facing similar problem, when i export the csv file. It renders fine in Apple sheets, but does not in excel.
Is there a solution for the same ?
thanks,
Fullar
my code....
options = new CSVRenderOption();
options.setEmitterID("org.eclipse.birt.report.engine.emitter.csv");
CSVRenderOption csvOptions = (CSVRenderOption)options;
csvOptions.setShowDatatypeInSecondRow(false);
csvOptions.setDelimiter(",")
csvOptions.setExportTableByName("table");
|
|
|
Powered by
FUDForum. Page generated in 0.05004 seconds