经典ASP - 需要帮助更新印花税计算器百分比

时间:2015-01-06 11:53:30

标签: forms asp-classic

我被要求更新印花税计算器百分比,但它写的是asp,我之前从未真正使用它。我已经更新了百分比,但是当我计算出这个数字时,它看起来大约是100英镑到1000英镑。

http://www.stampdutycalculator.org.uk/ 以下是计算器总计应该是什么。

http://smart-search.mobi/cal_test/purchase.asp 这是我正在努力的那个。

http://www.moneysavingexpert.com/mortgages/stamp-duty 正确的vaules和precentages。

这是结果应该是什么的一些例子。

如果输入125000英镑,则应出现0印花税(此工作正常)

如果输入£185000,则应出现1200英镑印花税(1295英镑显示给我)

如果输入£275000,则应出现3750英镑的印花税(3850英镑显示给我)

如果输入£937500,则应出现37500英镑的印花税(这个有效)

如果输入£2100000,则应出现165750英镑的印花税(165900英镑显示给我)


新费率为:

£0 - £125,000 0%,

£125,001 - £250,000 2%,

£250,001 - £925,000 5%,

£925,001 - 150万英镑10%,

超过150万英镑12%

<%
dim a, b, c, d, e, f, g, h, i, j, k, l, z, x, y, w, v
x = request("leasehold")
y = request("newbuild")
a = request("PurchasePrice")
CurrencySymbol ="£"
if x=yes then w=150
if y=yes then v=150
if a>=0 then b=775-w-v
if a>=100001 then b=800-w-v 'A = PurchasePrice | B = Legal Fees'
if a>=150001 then b=850-w-v
if a>=200001 then b=900-w-v
if a>=250001 then b=975-w-v
if a>=300001 then b=1050-w-v
if a>=400001 then b=1150-w-v
if a>=500001 then b=1275-w-v
if a>=600001 then b=1400-w-v
if a>=700001 then b=0
if b=0 then aa="Please Call to Discuss"


'***PRECENTS ARE HERE******'
if a>=125000 then d=a*0     '0%'
if a>=185000 then d=a*0.007 '0.7%
if a>=250000 then d=a*0.014 '1.4%'
if a>=510000 then d=a*0.03 '3.0%'
if a>=937500 then d=a*0.04 '4.0%'
if a>=2100000 then d=a*0.079 '7.9%'
'*******************'

if a>=0 then f=40        'Land Registry Fee ?'
if a>=50001 then f=70
if a>=80001 then f=120
if a>=100001 then f=190
if a>=200001 then f=270
if a>=500001 then f=540
g = 30
e = 160
c = FormatNumber((b*120/100-b),2) 'V.A.T ?'
h = FormatNumber((g*120/100-g),2)
l = formatnumber((b),2)
m = formatnumber((g),2)
n = formatnumber((f),2)
o = formatnumber((e),2)
p = formatnumber((c),2)
q = formatnumber((d),2)
r = formatnumber((h),2)
k = b+c
i = d+e+f+g+h
j = k+i
s = formatnumber((k),2)
t = formatnumber((i),2)
u = formatnumber((j),2)
v = formatnumber((a),2)
%>

1 个答案:

答案 0 :(得分:1)

它是经典的asp,而不是asp.net,它使用VBScript作为服务器端脚本语言

我会假设你的数学是正确的。

你还没有关闭任何if语句,如果,我很惊讶这不会抛出错误信息。这是一个正确语法的例子。

if a>=700001 then b=0 end if

如果您正在检查文本字符串的值,则需要使用引号 - 例如

if x="yes" then w=150 end if

最后,我在你的表单上的purcase.asp上做了一个视图源代码。我注意到您的租约和新构建复选框的值属性都是“关闭”。显然,他们需要“是”才能与asp

中的Request()语句对应

修改

鉴于你在这里提供的费率是我写的代码。

<%
a = Clng(Request("a"))
if a<=125000 Then d=(a*0)
Elseif a>125000 And a<=250000 then d=(a*0.02)  
Elseif a>250000 And a<=925000 then d=(a*0.05)
Elseif a>925000 And a<=1500000 then d=(a*0.1)
Elseif a>1500000 then d=(a*0.12)
End if
Response.write d
%>

编辑2 - 如果我正确理解新的印花税规则,我就是这样做的。请注意,57,500英镑,33,750英镑和2,500英镑是您在10%,5%和2%频段分别支付的最高金额。

<%
a = Clng(Request("a"))
if a<=125000 Then d=0
Elseif a>125000 And a<=250000 then d=((a-125000)*0.02)  
Elseif a>250000 And a<=925000 then d=2500+((a-250000)*0.05)
Elseif a>925000 And a<=1500000 then d=33750+2500+((a-925000)*0.1)
Elseif a>1500000 then d=57500+33750+2500+((a-1500000)*0.12)
End if
Response.write d
%>