4st*_*ars 2 reporting-services ssrs-2012
无论实际数据的长度如何,我都希望格式化为总共10位数字,并以前导零填充。示例实际数据为123456,则我的结果为0000123456。但是实际数据具有动态长度,这意味着我们无法一直猜测。我可以在SSRS中实现吗?而不是用SQL格式化?
可以通过多种方式实现前导零的动态填充。您可以直接在数据库本身中执行操作,然后在 RS 中显示相同的内容,或者从 DB 获取原始数据,然后在 RS 中进行填充。为了供您参考,我已经展示了两种方式。
RS 中使用的示例数据 -
declare @t table(i varchar(10))
insert into @t values (1),(12),(123),(1234),(12345),(123456),(1234567),(12345678),(123456789),(1234567890)
select i,RIGHT('0000000000'+ISNULL(i,''),10) 'ipadded' from @t
Run Code Online (Sandbox Code Playgroud)
RS 中用于填充的表达式 -
=Right("0000000000" & Fields!i.Value.ToString, 10)
Run Code Online (Sandbox Code Playgroud)
图片 -