Home All Groups Group Topic Archive Search About

Update Column to add Decimal Point

Author
16 Apr 2007 4:50 PM
Simon Gare
Hi all,

have a 'money' field in the SQL 2000 table that users enter 200 (for example
which represents £2.00) without the decimal point, what I need is to have a
command or something that adds the decimal point before the last 2 digits,
so user enters 200 and the value stored in the table is 2.00 bearing in mind
that this value could be anything from 1.00 to 50.00.

The user enters the data from an asp page on a touch screen device.

Regards
Simon

--
Simon Gare
The Gare Group Limited

website:   www.thegaregroup.co.uk
website:   www.privatehiresolutions.co.uk

Author
16 Apr 2007 5:08 PM
Evertjan.
Simon Gare wrote on 16 apr 2007 in
microsoft.public.inetserver.asp.general:

> Hi all,
>
> have a 'money' field in the SQL 2000 table that users enter 200 (for
> example which represents £2.00) without the decimal point, what I need
> is to have a command or something that adds the decimal point before
> the last 2 digits, so user enters 200 and the value stored in the
> table is 2.00 bearing in mind that this value could be anything from
> 1.00 to 50.00.
>
> The user enters the data from an asp page on a touch screen device.

<script language='jscript' runat='server'>

function addDecPoint(x){
  var s = (x<0)?'-':'';
  x = Math.abs(x);
  x=(x<100)?((x+1000)+'').substr(1):''+x;
  return s + x.replace(/(\d\d)$/,'.$1');
};

</script>

--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Are all your drivers up to date? click for free checkup

Author
16 Apr 2007 5:53 PM
Simon Gare
ok,

field in the table is called car_park the asp page is slightly more
difficult as the user enters the data via a .swf file. can this be run as a
command somewhere else, below is the code on the asp file (bearing in mind
that there is not actual text field here) some more assistance would be
appreciated.

Dim id, waiting, carPark
   Dim driverNo, sId

   Dim sql, conn

   Dim sResponse

   sResponse = ""

   id  = Request.Form("id")
   waiting = Request.Form("waiting")
   carPark = Request.Form("carPark")

   driverNo = Request.Form("driverNo")
   sId  = Request.Form("sId")

   If (Len(id) = 0 OR NOT IsNumeric(id)) OR Len(waiting) = 0 OR Len(carPark)
= 0 OR Len(driverNo) = 0 OR Len(sId) = 0 Then
      Response.Write("end_done=ERROR")
   Response.End()
   End If

   Set conn = Server.CreateObject("ADODB.Connection")
   conn.Open g_connectionString

   ' Updating booking_form...

   sql = "UPDATE booking_form SET waiting_in_minutes='" & waiting & "',
car_park='" & carPark & "', time_cleared=GETDATE(), allocated='COMPLETED'
WHERE ID=" & id

   conn.Execute(sql)

Show quoteHide quote
> <script language='jscript' runat='server'>
>
> function addDecPoint(x){
>   var s = (x<0)?'-':'';
>   x = Math.abs(x);
>   x=(x<100)?((x+1000)+'').substr(1):''+x;
>   return s + x.replace(/(\d\d)$/,'.$1');
> };
>
> </script>
Author
16 Apr 2007 6:58 PM
Evertjan.
Simon Gare wrote on 16 apr 2007 in
microsoft.public.inetserver.asp.general:

[Please do not toppost on usenet]
Topposting corrected


Show quoteHide quote
>> have a 'money' field in the SQL 2000 table that users enter 200 (for
>> example which represents £2.00) without the decimal point, what I
>> need is to have a command or something that adds the decimal point
>> before the last 2 digits, so user enters 200 and the value stored in
>> the table is 2.00 bearing in mind that this value could be anything
>> from 1.00 to 50.00.


>> <script language='jscript' runat='server'>
>>
>> function addDecPoint(x){
>>   var s = (x<0)?'-':'';
>>   x = Math.abs(x);
>>   x=(x<100)?((x+1000)+'').substr(1):''+x;
>>   return s + x.replace(/(\d\d)$/,'.$1');
>> };
>>
>> </script>

> ok,
>
> field in the table is called car_park the asp page is slightly more
> difficult as the user enters the data via a .swf file. can this be run
> as a command somewhere else, below is the code on the asp file
> (bearing in mind that there is not actual text field here) some more
> assistance would be appreciated.
>
> Dim id, waiting, carPark
>    Dim driverNo, sId
>
>    Dim sql, conn
>
>    Dim sResponse
>
>    sResponse = ""
>
>    id  = Request.Form("id")
>    waiting = Request.Form("waiting")
>    carPark = Request.Form("carPark")
>
>    driverNo = Request.Form("driverNo")
>    sId  = Request.Form("sId")
>
>    If (Len(id) = 0 OR NOT IsNumeric(id)) OR Len(waiting) = 0 OR
>    Len(carPark)
> = 0 OR Len(driverNo) = 0 OR Len(sId) = 0 Then
>       Response.Write("end_done=ERROR")
>    Response.End()
>    End If
>
>    Set conn = Server.CreateObject("ADODB.Connection")
>    conn.Open g_connectionString
>
>    ' Updating booking_form...
>
>    sql = "UPDATE booking_form SET waiting_in_minutes='" & waiting &
>    "',
> car_park='" & carPark & "', time_cleared=GETDATE(),
> allocated='COMPLETED' WHERE ID=" & id
>
>    conn.Execute(sql)

Where is your money field you specified in the original posting I added
above???

And you specified a value coming FROM a database, so I would need to se a
SELECT SQL, not an UPDATE SQL, meseems.

===================================================

You can easily change the integer cents value coming from that field in
vbscript and write that:

<% 'vbs
response.write "£ " & addDecPoint(centsValueFromDatabase)
%>

The jscript part can be put anywhere in the vbs-using asp page,
usually I put it at the bottom.



--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)

Bookmark and Share