com.crystaldecisions.reports.common.value
Class CurrencyValue

java.lang.Object
  extended by CrystalValue
      extended by com.crystaldecisions.reports.common.value.FormulaValue
          extended by com.crystaldecisions.reports.common.value.NumericValue
              extended by com.crystaldecisions.reports.common.value.CurrencyValue
All Implemented Interfaces:
java.lang.Comparable

public final class CurrencyValue
extends NumericValue

Provides methods for converting native Java types to a format understood by the Crystal Reports Formula Language. All Java user defined functions must return a FormulaValue object.


Field Summary
static CurrencyValue one
           A CurrencyValue object with a value of 1.
static CurrencyValue ten
           A CurrencyValue object with a value of 10.
static CurrencyValue two
           A CurrencyValue object with a value of 2.
static CurrencyValue zero
           A CurrencyValue object with a value of 0.
 
Fields inherited from class com.crystaldecisions.reports.common.value.NumericValue
nExactDecimalPlaces, scalingFactor
 
Method Summary
 FormulaValue coerceToBoolean()
           Internal use only.
 FormulaValue coerceToCurrency()
           Internal use only.
 FormulaValue coerceToNumber()
           Returns a FormulaValue object that represents this CurrencyValue as a number.
static CurrencyValue fromDouble(double value)
           Returns a CurrencyValue that represents the given double value.
static CurrencyValue fromLong(long value)
           Returns a CurrencyValue that represents the given long value.
static CurrencyValue fromNumberValue(NumberValue numberValue)
           Returns a CurrencyValue with the same value as the given NumberValue.
static CurrencyValue fromScaledDouble(double scaledDouble)
           Returns a CurrencyValue object that represents the value of scaledDouble / scalingFactor.
static CurrencyValue fromScaledLong(long scaledLong)
           Returns a CurrencyValue object that represents the value of scaledLong / scalingFactor.
 int getEncodedSize(ValueType type)
           
 int getEncodedSizeForArchive(ValueType type)
           
static int GetMaxEncodedSize()
           
 ValueType getValueType()
           Gets the ValueType of this CurrencyValue object.
static CurrencyValue Load(java.io.DataInput in)
           
static CurrencyValue LoadFromArchive(IInputArchive ar)
           
 void store(ValueType type, ExtendedDataOutput out)
           
 void storeToArchive(ValueType type, IOutputArchive ar)
           
 java.lang.String toString()
           Returns a String that represents this CurrencyValue as a String.
 
Methods inherited from class com.crystaldecisions.reports.common.value.NumericValue
compareTo, compareTo, equals, fromDouble, fromLong, fromNumericValue, fromScaledDouble, fromScaledLong, getAsDouble, getAsInteger, getDouble, getInt, getLong, getNormalizedNumericValue, getScaledDouble, getScaledInt, getScaledLong, hashCode, isIntegerValue
 
Methods inherited from class com.crystaldecisions.reports.common.value.FormulaValue
coerce, coerceToArray, coerceToArray, coerceToBoolean, coerceToCurrency, coerceToDate, coerceToDate, coerceToDateTime, coerceToDateTime, coerceToNumber, coerceToRange, coerceToRange, coerceToRangeArray, coerceToRangeArray, coerceToString, coerceToString, coerceToTime, coerceToTime, getFormulaValueType, Load, LoadFromArchive, makeZeroValue
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

zero

public static final CurrencyValue zero

A CurrencyValue object with a value of 0.


one

public static final CurrencyValue one

A CurrencyValue object with a value of 1.


two

public static final CurrencyValue two

A CurrencyValue object with a value of 2.


ten

public static final CurrencyValue ten

A CurrencyValue object with a value of 10.

Method Detail

store

public void store(ValueType type,
                  ExtendedDataOutput out)
           throws java.io.IOException
Throws:
java.io.IOException

storeToArchive

public void storeToArchive(ValueType type,
                           IOutputArchive ar)
                    throws ArchiveException
Throws:
ArchiveException

Load

public static CurrencyValue Load(java.io.DataInput in)
                          throws java.io.IOException
Throws:
java.io.IOException

LoadFromArchive

public static CurrencyValue LoadFromArchive(IInputArchive ar)
                                     throws ArchiveException
Throws:
ArchiveException

GetMaxEncodedSize

public static int GetMaxEncodedSize()

getEncodedSizeForArchive

public int getEncodedSizeForArchive(ValueType type)

getEncodedSize

public int getEncodedSize(ValueType type)

fromScaledDouble

public static CurrencyValue fromScaledDouble(double scaledDouble)

Returns a CurrencyValue object that represents the value of scaledDouble / scalingFactor.

Parameters:
scaledDouble - a double with a value equal to actualValue * scalingFactor
Returns:
a CurrencyValue object that represents the value of scaledDouble / scalingFactor

fromScaledLong

public static CurrencyValue fromScaledLong(long scaledLong)

Returns a CurrencyValue object that represents the value of scaledLong / scalingFactor.

Parameters:
scaledLong - a long with a value equal to actualValue * scalingFactor
Returns:
a CurrencyValue object that represents the value of scaledLong / scalingFactor

fromDouble

public static CurrencyValue fromDouble(double value)

Returns a CurrencyValue that represents the given double value.

Parameters:
value - the double value to be represented
Returns:
a CurrencyValue object that represents the given double value

fromLong

public static CurrencyValue fromLong(long value)

Returns a CurrencyValue that represents the given long value.

Parameters:
value - the long value to be represented
Returns:
a CurrencyValue object that represents the given long value

fromNumberValue

public static CurrencyValue fromNumberValue(NumberValue numberValue)

Returns a CurrencyValue with the same value as the given NumberValue.

Parameters:
numberValue - the NumberValue to represent as a CurrencyValue
Returns:
a CurrencyValue object that represents the given NumberValue

coerceToNumber

public FormulaValue coerceToNumber()

Returns a FormulaValue object that represents this CurrencyValue as a number.

Overrides:
coerceToNumber in class FormulaValue
Returns:
a FormulaValue object that represents this CurrencyValue as a number

coerceToCurrency

public FormulaValue coerceToCurrency()

Internal use only.

Overrides:
coerceToCurrency in class FormulaValue

coerceToBoolean

public FormulaValue coerceToBoolean()

Internal use only.

Overrides:
coerceToBoolean in class FormulaValue

getValueType

public ValueType getValueType()

Gets the ValueType of this CurrencyValue object.

Returns:
ValueType.currency

toString

public java.lang.String toString()

Returns a String that represents this CurrencyValue as a String. The String is of the form: "c(42.37)".

Overrides:
toString in class NumericValue
Returns:
a String that represents this CurrencyValue as a String