SSRS表达式 - 支票打印日期之间的空间

时间:2015-03-28 08:52:03

标签: xml reporting-services microsoft-dynamics ssrs-2008-r2

我的日期字段Fields!DateStr.Value的日期为12 March 2015

我对此进行了转换,以便我可以使用它来打印支票,该支票对于日期的每个数字都有不同的块或方块。

我的表达是 -

=Format(CDate(Fields!DateStr.Value),"dd")+" "+Format(CDate(Fields!DateStr.Value),"MM")+"    "+Format(CDate(Fields!DateStr.Value),"yy")

返回:

12 03 15

但它仍然不适合检查块

我希望它返回

1  2  0  3  1  5

任何人都可以帮我想一想我已经尝试过分裂&修剪,但他们现在正在为我工​​作。

谢谢

1 个答案:

答案 0 :(得分:0)

检查此代码:


在SSRS中:

=Left(Format(CDate(Today()),"dd"),1)+" "+Right(Format(CDate(Today()),"dd"),1)+" "+Left(Format(CDate(Today()),"MM"),1)+" "+Right(Format(CDate(Today()),"MM"),1)+" "+Left(Format(CDate(Today()),"yy"),1)+" "+Right(Format(CDate(Today()),"yy"),1)

Today()替换为Fields!DateStr.Value


在SQL中:

declare @Date varchar(10)=  REPLACE(Convert(varchar,getdate(),105),'-','')

DECLARE @postition INT, @result VARCHAR(100); 

   SET @result = REPLACE(Convert(varchar,getdate(),105),'-','')
   SET @postition = 2 -- location where we want first space 
   WHILE @postition < LEN(@result)+1 
   BEGIN 
       SET @result = STUFF(@result, @postition, 0, SPACE(1)); 
       SET @postition = @postition+2; 
   END 
   Print @result; 

你也可以使用上面的sql代码作为sql函数。