CSVRenderer - Date style is not enforced on render\export

Hello Support,
We use Aspose.Cells 1.9.0.0 in production report servers 2012.
For date column in the report, we use the “Language” property for the cell, feeding it with the correct value according to the locale\language of the customer which executes the report.
We have an issue when we render a report to CSV\TSV using Aspose rendering extension - that the date field is not formatted according to the Language of the cell.
What we have the field is:
Language: =Parameters!Culture.Value (e.g.: en-AU)
but the output is always according to the Report server machines locale (en-US).

Here is the extension configuration in the SSRS rsreportserver.config:

<Extension Name="ACCSV" Type="Aspose.Cells.ReportingServices.CSVRenderer,Aspose.Cells.ReportingServices">
				<Configuration>
					<DeviceInfo>
						<FieldDelimiter>,</FieldDelimiter>
					</DeviceInfo>
				</Configuration>
			</Extension>
			<Extension Name="ACTXT" Type="Aspose.Cells.ReportingServices.TabDelimitedRenderer,Aspose.Cells.ReportingServices">
				<Configuration>
					<DeviceInfo>
						<FieldDelimiter>tab</FieldDelimiter>
					</DeviceInfo>
				</Configuration>
			</Extension>

Is this a know bug or are we missusing it?

Thanks

Boaz, Sizmek

@boaz.goldstein

Thanks for using Aspose APIs.

We have logged your issue in our database for product team investigation and for a fix. We will look into your issue and update you asap.

This issue has been logged as

  • CELLSRS-512 - CSVRenderer - Date style is not enforced on render or export

Hello Support,
This case is open now for several days and still no response.
Can you update with current status ?

Thanks

Boaz G, Sizmek

@boaz.goldstein,

We have fixed the issue now. Please try it the attached fix/version: Aspose.Cells for RS v17.4.1:

Copy Aspose.Cells.ReportingServcies.dll into ${SQL Server Reporting Services installation folder}\ReportServer\bin.

And export csv file again.

If you still face the issues, please post detail information here. We will check it.

Thank you.

Hello Support,
Thanks for sending the file with the fix.

An important question before running tests - this is the latest version (17.4) which have probably introduced (with previous versions) many updates and changes since the version we currently use in production - 1.9 — should i be familiar with any breaking change in backward compatibility ? i dont want to fix 1 problem and create other multiple issue…

Thanks
Boaz G, Sizmek

@boaz.goldstein,

Well, there is no significant breaking changes you should be aware of, the version is backward compatible. You may simply try the latest fix/version if it figures out your issue now. Regarding new enhancements, features and other fixes included in different releases, you may check and browse the release notes section here:

Thank you.

Thanks Amjad.
After initial tests i do get good results with date formatting. thanks!
Additional question and problem that we have with the component is when we need to export data with Unicode characters (e.g. japaneese) - insread of providing the correct character set, the result csv file include ??? .
Can you please let me know if there is any special setting i should set in order to support unicode characters or is something you need to support in the code itself ?

thanks
BoazG, Sizmek

@boaz.goldstein

Please share your simple CSV file and its output Excel file that was generated using Microsoft Excel and Aspose.Cells for comparison. We will look into it and help you asap.

@boaz.goldstein

Aspose.Cells for Reporting Services supports set encode code for csv and txt renderer.

<encode value="Unicode"/>

Please check following configuration in Aspose.Cells.ReportingServices.xml.

<DataOnlyRender Mode="Default">
    <encode value="Unicode"/>
    <Delimiters value=","/>
    <RenderTableList value ="False"/>
    <NoOutPutIsValid ALL="False"/>
</DataOnlyRender>

Please update configuration information as shown above.

Hello Shakeel,
Its been 2 weeks since last update - i was on vacation.
i checked the Aspose settings as we use them in our production server and contained in the following file:
C:\Program Files (x86)\Aspose\Aspose.Cells.ReportingServices\Aspose.Cells.ReportingServices.xml

<?xml version="1.0" encoding="utf-8"?>
<Aspose>
	<logger>
		<level value="No"/>      
	</logger>
	<License>
		<filename value=""/>
	</License>
	<CSVRender>
		<encode value="UTF8"/>
		<Delimiters value=""/>
		<RenderTableList value ="False"/>
		<report name="" Mode="" encode="" Delimiters="" RenderTableList=""/>
		<NoOutPutIsValid ALL="False"/>
	</CSVRender>
	<Password value="">
		<EncryptionType></EncryptionType>
		<KeyLength></KeyLength>
	</Password>
	<Client>
		<DateParamterFormat value=""/>
	</Client>
  <AutoFit>
    <Row value ="True"/>
  </AutoFit>
  <Page>
    <SheetName value="default"/>
  </Page>
  <Performance>    
    <Report name=""/>      
  </Performance>  
</Aspose>

Do you suggest to add the “DataOnlyRender” XML node to the above settings as additional node to CSVRender?
Wouldnt the CSVRender node “encode” parameter be enough for supporting unicode characters?

Thanks
BoazG

@boaz.goldstein

Yes, please add DataOnlyRender, it covers CSVRender also. So CSVRender is a subset of DataOnlyRender. It means, you don’t need CSVRender at all if you have DataOnlyRender. Besides, we will look into this issue further and help you.

@boaz.goldstein

We have tested this issue with the most recent version (link given below) and found, it supports CSVRender configuration.

Please try it.

<?xml version="1.0" encoding="utf-8"?> 
<Aspose> 
  <logger> 
    <level value="No"/> 
  </logger> 
  <License> 
    <filename value=""/> 
  </License> 
  <CSVRender Mode="Default"> 
    <encode value="UTF8"/> 
    <Delimiters value=","/> 
    <RenderTableList value ="False"/> 
    <report name="" Mode="" encode="" Delimiters="" RenderTableList=""/> 
    <NoOutPutIsValid ALL="False"/> 
  </CSVRender> 
  <Encryption value="OFF"> 
    <Report name="" > 
      <Password value=""/> 
      <EncryptionType value="Microsoft Strong Cryptographic Provider"/> 
      <KeyLength value="128"/> 
    </Report> 
  </Encryption> 
  <Client> 
    <DateParamterFormat value=""/> 
  </Client> 
  <Page> 
    <SheetName value="default"/> 
  </Page> 
  <Performance value="ON" IsAutoRowFit ="False" IsMerged="True" IsSetStyle="True" IsConditionalFormatting ="False" LimitCellsNumberForMerged="-1" > 
    <Report name=""> 
      <AutoRowFit value="True"/> 
      <SetStyle value="True"/> 
      <Merged value="True"/> 
      <ConditionalFormatting value="True"/> 
      </Report> 
   </Performance> 
  <Chart></Chart> 
  <DigitalSignature value="off"> 
    <report name="" pfxFilename="" pfxPwd="" purpose=""/> 
  </DigitalSignature> 
</Aspose>

Hello Shakeel,
Thank you for the great support.
I would like to clarify the current status because things are getting a bit more complicated as we are handling 2 different issues and in production we are using Aspose.Cell version 1.9
The 2 issues on the table:

  1. Date formatting issue - when exporting SSRS report to CSV\TXT (tab-delimited) - date field are not exported according to “culture” property of a cell in a SSRS report - it is fixed and validated with the last version of the file (which you have sent as part of this support ticket). ACRS2012.V17.4.1.zip

  2. Unicode characters support when exporting to CSV\TXT using CSVRender - while using V1.9 i changed the confi XML To:

     <CSVRender>
     		<encode value="Unicode"/>
     		<Delimiters value=""/>
     		<RenderTableList value ="False"/>
     		<report name="" Mode="" encode="" Delimiters="" RenderTableList=""/>
     		<NoOutPutIsValid ALL="False"/>
     	</CSVRender>
    

At first - it fixed the problem and Japanese characters are now properly shown in the result CSV\TXT file but a new problem has started and we already are dealing with complaining customers: the to has caused a different BOM (Byte Order Mark) in the file, which is changing how Excel is opening this file.
While before the change - if a customer would open the report CSV in excel - it would split the columns properly by the delimiter, After the change - Excel cannot detect the correct BOM\Encoding settings and all the string rows are pushed into the first left-most column in the excel.

What i would like to know is -
If staying in 1.9 and not testing the new version you have attached (ACRS2012.V17.8.zip), is there an additional setting that i should do in order to have both support for unicode characters + restore the correct encoding settings that will enable excel to open the files correctly ?

Regarding the latest version - we are now in the process of renewing the license, hence - we cannot use in production as long as the process is not finished. i guess it will happen in the next few days but i would be glad to provide a temp solution on the existing version 1.9.

See attachement - 2 files:

  1. _Display_tes__Custom_Report_021052_24299183.csv - before the change from UTF8 to Unicode
  2. _Display_tes__カスタム_レポート_040802_24706346.csv - after the change from UTF8 to UnicodeSizmek Aspose Issue - Unicode Support.zip (14.1 KB)

This matter is quite urgent, thanks in advance !

BoazG,
Sizmek

@boaz.goldstein

We will look into your issue and help you asap. We have also logged it in our database. Once, there is some news for you, we will let you know.

@boaz.goldstein

I have attached the following zip files.

TAB-delimited.zip contains CSVRender settings for Tab-delimited export.
Sample Exported Files.zip contains exported CSV and Tab-delimited files.


We have tested them on both 17.8 and 1.9.


Download Links:
TAB-delimited.zip (877 Bytes)
Sample Exported Files.zip (2.1 KB)

Hello Support,
Today we have completed the purchase of Aspose.Cells for reporting services latest version.
I would like to use it in my production so i would like to confirm the steps to achive this, with you.
What we currenty have is -
Aspose.Cells DLL 1.9 + LIC file in Reporting Services Bin folder.
I will replace the DLL with the DLL you sent (ACRS2012.V17.8.zip) + switch to the new LIC file.

  1. Are these the correct steps ?
  2. Is the latest file you sent contains the fixes for the above issues ? (Date field format is the most important) ?

Thanks

BoazG, Sizmek

@boaz.goldstein

Your understanding seems to be correct. Please spare us some time, we will look into your question further and update you asap.

@boaz.goldstein

You need to follow three steps.

  1. Update Aspose.Cells.ReportingServices.DLL.
  2. Switch to new LIC file.
  3. Update Encode and Delimiters value in Aspose.Cells.ReportingServices.xml.

Hi Shakeel,
Thanks for the assistence so far !

Just to make sure that this is not deprecated with the new version -
the current settings in my rsreportserver.config file:

<Extension Name="ACCSV" Type="Aspose.Cells.ReportingServices.CSVRenderer,Aspose.Cells.ReportingServices">
        <Configuration>
          <DeviceInfo>
            <FieldDelimiter>,</FieldDelimiter>
          </DeviceInfo>
        </Configuration>
      </Extension>
      <Extension Name="ACTXT" Type="Aspose.Cells.ReportingServices.TabDelimitedRenderer,Aspose.Cells.ReportingServices">
        <Configuration>
          <DeviceInfo>
            <FieldDelimiter>tab</FieldDelimiter>
          </DeviceInfo>
        </Configuration>
      </Extension>
    </Render>
    <Data>

are they honored by the aspose engine in run time ?
is the word “tab” be used as for assigning a tab character as a delimiter between the fields of a row?
Thanks
BoazG, Sizmek

@boaz.goldstein

Thanks for your question and considering Aspose.Cells for Reporting Services.

We will look into this issue and help you asap.