DataFunctions.ConvertMoneyStringToNumber

Ee810932.c++_on(en-US,CS.10).gifEe810932.vb_off(en-US,CS.10).gif

Use this method to convert a money string to a number, based on the default or specified locale.

Definition

Function ConvertMoneyStringToNumber(vtMoney As Variant,vtLocale As Variant) As Variant

Parameters

vtMoney

A Variant that contains a string representation of the monetary value to convert.

vtLocale

A Variant that specifies the locale to use to convert the string. If this parameter is not specified, the value of the Locale property of the DataFunctions object is used.

Return Values

If this method completes successfully, it returns an integer Variant that represents the value of the specified string in the base monetary unit of the specified locale; otherwise, NULL is returned.

Error Values

This method sets the Number property of the global Err object to S_OK (&H00000000) to indicate success and to standard COM error values to indicate failure. For more information about standard COM errors, see Standard COM Errors. Additional information may be available using the global Err object. In particular, the Description property may contain a text description of the error.

Remarks

The ConvertMoneyStringToNumber method returns the value in the base monetary unit for a given locale. Thus, given a value in dollars, ConvertMoneyStringToNumber returns the number of cents in the dollar value.

Additionally, ConvertMoneyStringToNumber does not round values. For example, if you pass this method "123.009" the method returns 12300, not 12301.

This method returns a Variant of type long, not an OLE currency type.

In some cases, this method returns NULL when converting a string representation of monetary value to the currency Variant type for Swedish and Portuguese (Portugal) locales. To avoid this problem, use the Microsoft Visual Basic Scripting Edition (VBScript) function **Replace(**MoneyString, CurrencyDigitGroupingSymbol, "") to remove the currency digit grouping symbol from the money string prior to calling the method ConvertMoneyStringToNumber.

For more information about memory ownership issues related to COM property and method parameters, see Managing COM Parameter Memory.

Example

<HTML>
<HEAD>
</HEAD>
<BODY>
<%
Dim Result
Dim Amount
Amount = "12000"
Set MSCSDataFunctions = Server.CreateObject("Commerce.DataFunctions")
' Set Locale to USA
myLocale = "1033"
MSCSDataFunctions.Locale = myLocale
Result = MSCSDataFunctions.ConvertMoneyStringToNumber("34.095", myLocale)
Response.Write "USA: " & Result & "<P>"
%>
</BODY>
</HTML>

See Also

DataFunctions Object

DataFunctions.Locale

DataFunctions.ConvertFloatString

DataFunctions.ConvertNumberString


All rights reserved.