SSRS导出为CSV时添加额外的字符

时间:2020-01-09 15:44:12

标签: reporting-services ssrs-2016 ssrs-2014 ssrs-2017 azure-sql-reporting

我正在创建一个表达式,将多个字段组合到SSRS中的单个字段中。但是,当我导出为CSV时,某些记录会附加其他双引号。我该如何解决?

原始数据:

SCode|BuildingNumber|StreetName|City|State|
---------------------------------------------
ABC|   |123 Street|New York   |NY|
DEF|   |456 Street|Los Angeles|CA|
IJK|123|7th Ave   |Chicago    |IL|
XYZ|   |789 Cir   |Atlanta    |GA|

我正在使用的表达式:

=Fields!SCode.Value & "#" & IIF(IsNothing(Fields!BuildingNumber.Value), Fields!StreetName.Value, Fields!BuildingNumber.Value & "\," & Fields!StreetName.Value) & "#" & Fields!City.Value & "#" & Fields!State.Value"

导出为CSV后的数据:

ABC#123 Street#New York#NY
DEF#456 Street#Los Angeles#CA
"IJK#123, 7th Ave#Chicago#IL"
XYZ#789 Cir#Atlanta#GA

谢谢!

1 个答案:

答案 0 :(得分:0)

如果存在分隔符(逗号)或某种形式的返回章程,则CSV导出仅应在字段周围添加文本分隔符。

仅当值包含定界符时才添加文本限定符 字符或值有换行符时。

MS Docs

检查文本中的逗号,返回字符和换行符。

您的示例没有逗号,但可能仍然有返回或换行符。

datetime

换行符和返回字符是ASCII中的字符编号10和13。