Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server Report Builder 2012 3.0中的Iif函数_Sql Server_Reporting Services_Reportbuilder3.0_Iif_Ssrs Expression - Fatal编程技术网

Sql server SQL Server Report Builder 2012 3.0中的Iif函数

Sql server SQL Server Report Builder 2012 3.0中的Iif函数,sql-server,reporting-services,reportbuilder3.0,iif,ssrs-expression,Sql Server,Reporting Services,Reportbuilder3.0,Iif,Ssrs Expression,我正试着自动开发票,但最后一部分让我卡住了。如果客户与供应商来自不同的国家,则不应缴纳增值税。要在我的发票中获取此信息,我尝试插入一个表达式,但它给出以下错误: 'textrun'Textbox16.段落[0].TextRuns[1]的值表达式包含错误:[BC30455]未为'Public Function IIf(表达式为布尔值,TruePart为对象,FalsePart为对象)的参数'FalsePart'指定参数。' 这是我使用的表达式: =IIf(First(Fields!Customer

我正试着自动开发票,但最后一部分让我卡住了。如果客户与供应商来自不同的国家,则不应缴纳增值税。要在我的发票中获取此信息,我尝试插入一个表达式,但它给出以下错误:

'textrun'Textbox16.段落[0].TextRuns[1]的值表达式包含错误:[BC30455]未为'Public Function IIf(表达式为布尔值,TruePart为对象,FalsePart为对象)的参数'FalsePart'指定参数。'

这是我使用的表达式:

=IIf(First(Fields!CustomerCountry.Value, "Invoice"))<>(First(Fields!SupplierCountry.Value, "Invoice")),0,((SUM(Fields!DurationHours.Value * Fields!HourlyRate.Value))*0.21)
=IIf(第一个(字段!CustomerCountry.Value,“发票”))(第一个(字段!SupplierCountry.Value,“发票”)),0,((总和(字段!DurationHours.Value*字段!HourlyRate.Value))*0.21)
有人能帮忙吗


提前感谢

您在iif语句中的第一个
第一个
函数中有一个额外的括号。请尝试以下方法:

=IIf(First(Fields!CustomerCountry.Value, "Invoice")<>(First(Fields!SupplierCountry.Value, "Invoice")),0,((SUM(Fields!DurationHours.Value * Fields!HourlyRate.Value))*0.21))
=IIf(第一个(字段!CustomerCountry.Value,“发票”)(第一个(字段!SupplierCountry.Value,“发票”)),0,(总和(字段!DurationHours.Value*字段!HourlyRate.Value))*0.21)

只要记住保持它非常简单,然后构建

从以下内容开始:

似乎也不起作用。它给了我以下错误:textrun“Textbox16.段落[0].TextRuns[1]”的值表达式应包含错误:[BC30198])。您还缺少结尾括号。我已经编辑了我的答案。@JorgenV你能接受TPhe的答案吗?这将帮助后面的其他人。不确定该方法是否有用,但我注意到,当我像你一样有大的查询时,最好将它们分成小块,然后使用必要的括号(us)/括号(uk)为了吸引更多的观众,请使用
reporting services
tag@AndyK这些不应该颠倒吗?用美国的说法,这是一个方括号,这是一个圆括号。我认为在英国,它们是方括号和圆括号(圆括号。嗨@TPhe,我看了这个:@AndyK对,那个链接似乎说它在美国被称为括号,在英国被称为括号。你写评论的方式似乎是说它在美国被称为括号,在英国被称为括号,这与我的理解相反。