G
Guest
I have a custom function that I use on an OPenForm action to calculate and
display some information.
The function is:
Private Function Calculate_Charges()
Call Lookup_Charges
PolType = Me!PolType
SdRateNow = DLookup("[SD]", "[TblCharges]", "[Class] = [PolType]")
ICLRateNow = DLookup("[ICL]", "[TblCharges]", "[Class] = [PolType]")
GSTRateNow = DLookup("[GST]", "[TblCharges]", "[Class] = [PolType]")
If Me!PayFreq = "Annual" And Me!InstNo = 1 Then
Me!SD.Value = (Me!Premium * SdRateNow) / 100
Me!ICL.Value = (Me!Premium * ICLRateNow) / 100
Me!GST.Value = ((Me!Premium + Me!SD - Me!Brokerage) * GSTRateNow) / 100
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
ElseIf Me!PayFreq = "Quarterly" And Me!InstNo = 1 Then
Me!SD.Value = ((Me!Premium * 4) * SdRateNow) / 100
Me!ICL.Value = ((Me!Premium * 4) * ICLRateNow) / 100
Me!GST.Value = (((Me!Premium * 4) + Me!SD - Me!Brokerage) * GSTRateNow) / 100
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
Else
Me!SD.Value = 0
Me!ICL.Value = 0
Me!GST.Value = 0
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
End If
End Function
I need to use exactly the same calculation in a query. I have tried nesting
IIf statements but it seems too cumbersome.
Is there a way I can "call" this function in my query?
Thanks
David
display some information.
The function is:
Private Function Calculate_Charges()
Call Lookup_Charges
PolType = Me!PolType
SdRateNow = DLookup("[SD]", "[TblCharges]", "[Class] = [PolType]")
ICLRateNow = DLookup("[ICL]", "[TblCharges]", "[Class] = [PolType]")
GSTRateNow = DLookup("[GST]", "[TblCharges]", "[Class] = [PolType]")
If Me!PayFreq = "Annual" And Me!InstNo = 1 Then
Me!SD.Value = (Me!Premium * SdRateNow) / 100
Me!ICL.Value = (Me!Premium * ICLRateNow) / 100
Me!GST.Value = ((Me!Premium + Me!SD - Me!Brokerage) * GSTRateNow) / 100
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
ElseIf Me!PayFreq = "Quarterly" And Me!InstNo = 1 Then
Me!SD.Value = ((Me!Premium * 4) * SdRateNow) / 100
Me!ICL.Value = ((Me!Premium * 4) * ICLRateNow) / 100
Me!GST.Value = (((Me!Premium * 4) + Me!SD - Me!Brokerage) * GSTRateNow) / 100
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
Else
Me!SD.Value = 0
Me!ICL.Value = 0
Me!GST.Value = 0
Me!GSTFee.Value = ((Me!BrokerFee) * GSTRateNow) / 100
Me!GSTBrokerage.Value = (Me!Brokerage * GSTRateNow) / 100
End If
End Function
I need to use exactly the same calculation in a query. I have tried nesting
IIf statements but it seems too cumbersome.
Is there a way I can "call" this function in my query?
Thanks
David