2017-07-07 72 views
0

我认为这应该是直截了当的。我有一个插入查询。 我正在修改一个查询字段,它调用一个执行dlookup的公共函数并计算任何折扣。 我只想调用这个函数,如果一个id低于某个数字。如果超过这个数字,我想用我的表单中的一个字段填充它。 这是原始呼叫:在查询中访问IIf语句

GetTuition(Forms![createinvoice]!AfterschoolFrame,Forms! 
[createinvoice]!BillCycleID,Forms![createinvoice]![1DayAfterschool15],Forms! 
[createinvoice]![TuitionToPay]) AS Fee 

但是当我添加一个IIF,它崩溃

IIf (Forms![createinvoice]!ScholarID <4 
(GetTuition(Forms![createinvoice]!AfterschoolFrame,Forms! 
[createinvoice]!BillingCycleID, 
Forms![createinvoice]![1DayAfterschool15], 
Forms![createinvoice]![TuitionToPay]) , Forms![createinvoice]!TuitionCost)) 
AS Fee 

任何想法,将不胜感激。

回答

1

您在括号中发生了错误(应删除最后一个和第二个),并在if条件后缺少,

此修复它:

IIf (Forms![createinvoice]!ScholarID <4, 
GetTuition(Forms![createinvoice]!AfterschoolFrame,Forms! 
[createinvoice]!BillingCycleID, 
Forms![createinvoice]![1DayAfterschool15], 
Forms![createinvoice]![TuitionToPay]) , Forms![createinvoice]!TuitionCost) 
AS Fee 
+0

我做了更改(丢失的,在我的剪切/粘贴),它仍然无法正常工作。我已经检查了两个条件,分开完成后它们工作得很好。但是当我把它们放在IIF声明中时,我会遇到'数据不匹配'错误。 – JMarie

+0

我甚至可以改变它们(更改为> 4-将简单值放在其他位置,否则执行dlookup。但是同样的事情 - – JMarie

+0

ScholarID上的数据类型是什么? –