function moms(priset)
if isnumeric(priset) then
moms = priset*1.25
else
moms = "något e fel"
end if
end function
eller är det jag som inte riktigt förstår frågan
22 svar · 668 visningar · startad av Skywalker
Jah har en databas med lite nettopriser. Men jag vill kunna visa oriserna inklusive moms på websidan...
I tabellen finns två tabeller med priser:
Pris1
Pris2
Bägge två är nettopriser och det skall tillkomma moms på 25% på dom.
Hur gör man en omräknare?
function moms(priset)
if isnumeric(priset) then
moms = priset*1.25
else
moms = "något e fel"
end if
end function
eller är det jag som inte riktigt förstår frågan
Okej... Detta e kanske rätt.
(Pris utan moms)*(1 och 1/3)=(pris med moms)
100kr med moms <=> 25kr moms
75 kr över utan moms
75 kr utan moms * 1,3333333... = 100kr
Då blir det ju bara moms på 20% det skulle vl vara 25%?
Jag får det till om moms är 25%.
Dra av moms = pris * 0,75
Lägga till = pris * 1,333333333333...
0,75*1,333333333... = 1
så.
Helt rätt som @nders säger
för att dra av moms tar man minus 20%.
Enkel matematik bevisar detta,
Du har en vara 100kr exklmoms inklmoms blir det då 125kr. För att komma tillbaka till priset exklmoms måste man få bort 25kr, 10% av 125 är 12,5 20% är soldeles 25kr. Alltså lägg på 25% ta bort 20%.
@nders har därför helt rätt.
Andreas
Helt rätt som @nders säger
för att dra av moms tar man minus 20%.
Enkel matematik bevisar detta,
Du har en vara 100kr exklmoms inklmoms blir det då 125kr. För att komma tillbaka till priset exklmoms måste man få bort 25kr, 10% av 125 är 12,5 20% är soldeles 25kr. Alltså lägg på 25% ta bort 20%.
@nders har därför helt rätt.
Andreas
Jahapp... Men om en vara kostar 125kr med moms och momsen är 25 kr då är ju det bara 20% av totalkostnaden.
En vara för 100kr utan moms och man lägger till 25 % = 125kr. Då är ju dom 25 kronorna bara 25/125 = 1/5 = 20% av totala priset. Momsen skulle vara 25%.
Är det verkligen så att om man säger att momsen är på 25% så menar man 25% av kostnaden exklusive moms? Då är det ju inte en fjärdedel till staten man betalar, utan 20% av priset vid en 25procentig moms.
Menas en moms på 25% att man betalar en 20% av priset till staten(eller nån annanstans).
Har jag flippat ur eller?
Om det är så som ni säger, så har jag lärt mig nått nytt...
Japp. Så är det. En moms på 25% innebär att man lägger till 25% på ursprungspriset. 20% av inkl.moms-priset är alltså moms.
Lös den här ekvationen om ni kan!
x=moms 'ta reda på vilken moms det ska vara för att allting ska gå till staten.
((1+x)*pris)/pris = 100%
Det kan man inte räkna ut. Momsen är inte en del av priset, utan ett tillägg, så det enda sättet att få nästan allt till staten är att sätta momsen till oändligheten - ∞
Ehh.. Men hur gör jag i aspscriptet för att automatiskt räkna om priset?
Trodde det stog på ganska många ställen på den här sidan.
Ta bara priset * 1,25 som @anders visade i första inlägget.
Set RS = conn.execute("SELECT nettpris FROM tabell")
nettpris = RS("nettpris")
momspris = nettpris * 1,25
bire, när du vill skriva ut momspriset så skriver du response.write moms(rs("nettopris")), svårare än så är det inte!
ehumm...
I tabellen finns två tabeller med priser:
Pris1
Pris2
Om priset i grunden är inklusive moms gör du följande:
Pris1 exkl = Pris1 * 0,8
Pris1 inkl = Pris1
Pris2 exkl = Pris2 * 0,8
Pris2 inkl = Pris2
Om priset i grunden är exklusive moms gör du följande:
Pris1 exkl = Pris1
Pris1 inkl = Pris1 * 1,25
Pris2 exkl = Pris2
Pris2 inkl = Pris2 * 1,25
Hoppas det går bra..
formatCurrency
För att skriva ut ovanstående prydligt med kronor och rätt mellanslag kan du använda den inbyggda funktionen formatCurrency.
myPrice = 100
response.write "Pris: " & formatCurrency(myPrice, 0) & " (Med moms: " & formatCurrency(myPrice * 1.25, 0) & ")"
Pris: 100 kr (Med moms: 125 kr)
---
Observera att du måste skriva 1.25, det blir fel om du skriver 1,25. Den sista nollan anger hur många decimaler du vill ha efter priset.
while not rs.eof
' en massa saker
response.write moms(rs("nettopris"))
'en massa saker
wend
Detta är frågan som @nders gav svar på ovan...
Kan någon förklara för mig hur jag ska kunna använda response.write i en loop från databasen???
ffehh? fattar ingenting...
Varför inte bara lägga in på inkl.moms och exkl.moms i två olika kolumner och sen använda getstring och sen skriva ut det... Går mycket snabbare än att skriva ut response.write tvåhundra gånger.
Getstring sparar alla rs(fält) och lägger dem i variabler och sen räcker det att skriva response.write en gång istället för att loopa. Mycket snabbare.
Kolla här hur det funkar:
Jag fattar inte hur man gör som vanligt...
Alltså: Jag har en databas med runt 16 000 artiklar och det finns två fält med priser (gammalt pris & nytt pris) Problemet är att priserna är exklusive moms och jag vill få till ett script som räknar om priserna när de publiceras på sidan.
Här är koden utan någon som helst momsfunktion:
<%
Session("pldata") = "driver={Microsoft Access Driver (*.mdb)};dbq=" &
Server.MapPath("databasen.mdb")
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open Session("pldata")
SQLStmt = "SELECT * FROM artiklar WHERE bilmodell LIKE '" & Request.form("bilmodell") & "%'
ORDER BY beskrivning"
SET RS = Connection.Execute(SQLStmt)
%>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="styles/shop.css">
</head>
<body bgcolor="#ffffff" leftmargin="5" topmargin="5" marginheight="5" marginwidth="5">
<table border="0" width="500" align="left" cellspacing="2" cellpadding="0">
<tr>
<td colspan="4">
<font face="Verdana" Size="1" Color="#0033FF">Dessa nya delar kan vi ta hem till din <b><%=
RS("bilmodell")%>:</b></font>
</td>
</tr>
<% DO UNTIL RS.EOF %>
<tr>
<td width="40%" bgcolor="#f7f7f7">
<font face="Verdana" Size="1" Color="#0066FF"><b>Artikel:</b></font>
</td>
<td width="40%" bgcolor="#f7f7f7" colspan="2">
<font face="Verdana" Size="1" Color="#0066FF"><b>Kommentar:</b></font>
</td>
<td width="20%" rowspan="4" align="center" valign="top">
<font face="Verdana" Size="1" Color="#000000">DITT PRIS:</font><BR>
<font face="Verdana" Size="2" Color="RED"><b><%= RS("pris2")%></b></font><br>
</td>
</tr>
<tr>
<td width="40%" bgcolor="#f7f7f7">
<font face="Verdana" Size="1" Color="#000000"><b><%= RS("beskrivning")%></b></font>
</td>
<td width="40%" bgcolor="#f7f7f7" colspan="2">
<font face="Verdana" Size="1" Color="#000000"><%= RS("notering")%></font>
</td>
</tr>
<tr>
<td width="40%" bgcolor="#f7f7f7">
<font face="Verdana" Size="1" Color="#0066FF"><b>Artikelnummer:</b></font>
</td>
<td width="40%" bgcolor="#f7f7f7" colspan="2">
<font face="Verdana" Size="1" Color="#0066FF"><b>Ordinarie pris:</b></font>
</td>
</tr>
<tr>
<td width="40%" bgcolor="#f7f7f7">
<font face="Verdana" Size="1" Color="#000000"><%= RS("artnummer")%></font>
</td>
<td width="40%" bgcolor="#f7f7f7" colspan="2">
<font face="Verdana" Size="1" Color="#000000"><%= RS("pris1")%></font>
</td>
</tr>
<tr>
<td colspan="4">
<hr size="1" color="#COCOCO">
</td>
</tr>
<%
RS.MoveNext
Loop
%>
</table>
</body>
</html>
<%
RS.Close
Connection.Close
%>
"Pris1" är gammalt pris & "pris2" är det nya priset.
Hjääälp!