2008-09-30 48 views
1

我试图在Visual Studio 2008中,显示在报表设计器布尔场当我试图运行它,发生了错误:显示布尔字段在Visual Studio报表设计

"An error has occurred during report processing. 
     String was not recognized as a valid Boolean." 

我试图转换它使用CBool​​()但它没有工作。

+0

需要一点点mroe信息。我认为这是客户端报告与您自己的数据源?如果是的话,那么DS上的类型是什么?你在报告中填入什么类型的字段? – mattlant 2008-09-30 08:08:41

回答

0

我正在使用SQL Server 2005.数据类型是位。

1

我可能在这里弄错了,但CBool​​是转换为布尔值。你可能想要的是转换为字符串,以便它可以显示。但是,我不确定默认行为是什么(即0/1,true/false,-1/0,是/否等),因此您可以在报表中的代码部分添加一个函数来显示一个布尔值,你想要的确切方式。

3
=iif(Fields!YourBool.Value, "True", "False") 

我错过了什么吗?

+2

有一件事要注意,如果你正在做'= iif(Fields!YourBool.Value,“是”,“否”)之类的东西,NULL是返回'No'。如果你想正确地使用NULL:`= iif(isnothing(Fields!YourBool.Value),Nothing,iif(Fields!YourBool.Value,“Yes”,“No”))`这真是太长而冗长了! (alt - 修改sql查询) – 2012-10-31 11:25:16

相关问题