IDataFunctions_4_0::ConvertMoneyStringToNumber

Ee797948.c++_off(en-US,CS.10).gifEe797948.vb_on(en-US,CS.10).gif

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

Definition

HRESULT IDataFunctions_4_0::ConvertMoneyStringToNumber(VARIANTvtMoney,VARIANTvtLocale,VARIANT*pvtRet);

Parameters

vtMoney

[in] A VARIANT that contains a string representation of the monetary value to convert.

vtLocale

[in] 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.

pvtRet

[out, retval] A pointer to a VARIANT used to return the converted monetary value.

Return Values

This method returns an HRESULT indicating whether it completed successfully. See the Error Values section for more details.

Error Values

This method returns S_OK (0x00000000) to indicate success and standard COM HRESULT 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, which can be accessed using the API function GetErrorInfo. In particular, the GetDescription method of the IErrorInfo interface may return a text description of the error.

Remarks

The pvtRet parameter contains valid data only if the method completes successfully.

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.

See Also

DataFunctions Object

IDataFunctions_4_0::get_Locale, put_Locale

IDataFunctions_4_0::ConvertFloatString

IDataFunctions_4_0::ConvertNumberString


All rights reserved.