Har en sida med massor av beräkningar, kunden matar in ett värden("avst") detta delas med ett värde från databasen("max") ... Om du vill använder serverns decimalseparator: Nej, jag vill ha ett avstånd i cm, alltså 87.7....cm inte 0.87.......cm värdet som matas in är i cm tex 200 cm. Har du provat med CDbl()? Vad har du för fält typ på Min och Max? Vad använder du för decimalseparator i avst? Vilken decimalseparator har du instälet på servern? TAck nu funkar det, vad gör CDbl? CDbl() står för "Convert Double" Omvandla till flyttal med dubellprecision eller något sådant.det var inte så simpelt decimal problem
ex:
avst = 200
max = 2.28
svar = avst/max
Svaret borde bli: 87.7192980
men det svar jag får är: 0.877192980
Varför blir det så?
<code>
Set Connect = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Connect.Open "adress"
SQL = "SELECT * FROM prodTb WHERE prodID=" & prodID
rs.Open SQL, Connect
max1 = rs("max")
max = Replace(max1, ",", ".")
avst = Request.form("avst")
minB = avst/max
</code>
Snälla hjälpSv: Simpelt decimal problem...
Jag tror du ska multiplicera värdet med 100...
Det är väl procent du vill ha? - det får man genom att multiplicera faktorn med 100...
:)Sv: Simpelt decimal problem...
<code>
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "adress"
SQL = "SELECT * FROM prodTb WHERE prodID=" & prodID
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Connect
If rs.EOF Then
Response.Write "Record no found!"
Else
max = CDbl(rs("max"))
avst = CDbl(Request.form("avst"))
minB = avst / max
End If
</code>
Om du vill alltid vill använda punkt som decimalseparator:
<code>
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "adress"
SQL = "SELECT * FROM prodTb WHERE prodID=" & prodID
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Connect
If rs.EOF Then
Response.Write "Record no found!"
Else
max = Val(rs("max"))
avst = Val(Request.form("avst"))
minB = avst / max
End If
</code>Sv: Simpelt decimal problem...
ChristoferDet var inte så simpelt decimal problem
Här är hela min kod
<code>
<%
prodID = Request.QueryString("prodID")
format = Request.form("format")
avst = Request.form("avst")
'Response.Write(prodID)
'Response.Write(format)
'Response.Write(avst)
Set Connect = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Connect.Open "wiktors-prod1"
SQL = "SELECT * FROM prodTb WHERE prodID=" & prodID
rs.Open SQL, Connect
max1 = rs("max")
max = Replace(max1, ",", ".")
min1 = rs("min")
min = Replace(min1, ",", ".")
If format = 1 then
minB = avst/max
maxB = avst/min
minBH = minB*0.75
maxBH = maxB*0.75
minD = minB*1.25
maxD = maxB*1.25
minDT1 = (minB*1.25)/2.54
minDT = FormatNumber(minDT1, 0)
maxDT1 = (maxB*1.25)/2.54
maxDT = FormatNumber(maxDT1, 0)
Else
minB = avst/max
maxB = avst/min
minBH = minB*0.5625
maxBH = maxB*0.5625
minD = minB*1.1475
maxD = maxB*1.1475
minDT1 = (minB*1.1475)/2.54
minDT = FormatNumber(minDT1, 0)
maxDT1 = (maxB*1.1475)/2.54
maxDT = FormatNumber(maxDT1, 0)
End if
%>
</code>Sv: Det var inte så simpelt decimal problem
<code>
<%
prodID = Request.QueryString("prodID")
If IsNumeric(prodID) Then
format = Request.form("format")
avst = CDbl(Request.form("avst"))
'Response.Write(prodID)
'Response.Write(format)
'Response.Write(avst)
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "wiktors-prod1"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM prodTb WHERE prodID=" & prodID, Connect
max1 = rs("max")
min1 = rs("min")
If format = 1 then
minB = avst / max
maxB = avst / min
minBH = minB * 0.75
maxBH = maxB * 0.75
minD = minB * 1.25
maxD = maxB * 1.25
minDT1 = (minB * 1.25) / 2.54
minDT = FormatNumber(minDT1, 0)
maxDT1 = (maxB * 1.25) / 2.54
maxDT = FormatNumber(maxDT1, 0)
Else
minB = avst / max
maxB = avst / min
minBH = minB * 0.5625
maxBH = maxB * 0.5625
minD = minB * 1.1475
maxD = maxB * 1.1475
minDT1 = (minB * 1.1475) / 2.54
minDT = FormatNumber(minDT1, 0)
maxDT1 = (maxB * 1.1475) / 2.54
maxDT = FormatNumber(maxDT1, 0)
End if
End if
%>
</code>Sv: Det var inte s&#229; simpelt decimal problem
:) ChristoferSv: Det var inte s&#229; simpelt decimal problem
Typ decimal tal.