| Package | spark.validators | 
| Class | public class CurrencyValidator | 
| Inheritance | CurrencyValidator    NumberValidatorBase   GlobalizationValidatorBase   GlobalizationBase   AdvancedStyleClient   EventDispatcher   Object | 
| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
CurrencyValidator class ensures that a String represents
  a valid currency amount according to the conventions of a locale.
 
  This class uses the locale style for specifying the Locale ID.
 
  The validator can ensure that a currency string falls within a given
  range (specified by minValue and maxValue
  properties), is an integer (specified by domain property),
  is non-negative (specified by allowNegative property),
  correctly specifies negative and positive numbers,
  has the correct currency ISO code or currency symbol,
  and does not exceed the specified number of fractionalDigits.
  The validator sets default property values by making use of the 
  flash.globalization.CurrencyFormatter class and therefore the
  locale specific values are supplied by the operating system.
The flash.globalization.CurrencyFormatter class uses the
  underlying operating system to supply the locale specific data. In case
  the operating system does not provide currency formatting, this class
  provides fallback functionality.
Hide MXML SyntaxThe <s:CurrencyValidator> tag
  inherits all of the tag attributes of its superclass,
  and adds the following tag attributes:
  <s:CurrencyValidator
    Properties
    currencyISOCode="locale specified string or customized by user."
    currencyStringError="Currency name is repeated or not correct."
    currencySymbol="locale specified string or customized by user."
    negativeCurrencyFormat="locale specified string or customized by user."
    negativeCurrencyFormatError="The negative format of the input currency is incorrect."
    positiveCurrencyFormat="locale specified string or customized by user."
    positiveCurrencyFormatError="The positive format of the input currency is incorrect."
  />
  
 
    
  More examples
Learn more
About the source and property properties
About triggering validation
Triggering validation by using events
Triggering validation programmatically
Validating required fields
General guidelines for validation
Working with validation errors
Working with validation events
Localization
Related API Elements
| Property | Defined By | ||
|---|---|---|---|
![]()  | actualLocaleIDName : String [read-only] 
      The name of the actual locale ID used by this class object.  | GlobalizationBase | |
![]()  | allowNegative : Boolean 
      Specifies whether negative numbers are permitted.  | NumberValidatorBase | |
![]()  | className : String [read-only] 
      The name of the component class.  | AdvancedStyleClient | |
![]()  | constructor : Object 
	 A reference to the class object or constructor function for a given object instance.  | Object | |
| currencyISOCode : String 
      The three letter ISO 4217 currency code for the locale
      being used.  | CurrencyValidator | ||
| currencyStringError : String 
      Error message when the currency symbol or currency ISO code is repeated
      or is in the incorrect location.  | CurrencyValidator | ||
| currencySymbol : String 
      The currency symbol or string for the locale being used.  | CurrencyValidator | ||
![]()  | decimalPointCountError : String 
      Error message when the decimal separator character occurs more than
      once.  | NumberValidatorBase | |
![]()  | decimalSeparator : String 
      The decimal separator character used for validating numbers that have
      a decimal part.  | NumberValidatorBase | |
![]()  | digitsType : uint 
      Defines the set of digit characters to be used when
      validating numbers.  | NumberValidatorBase | |
![]()  | domain : String 
      Type of number to be validated.  | NumberValidatorBase | |
![]()  | enabled : Boolean 
      Setting this value to false will stop the validator
      from performing validation.  | GlobalizationValidatorBase | |
![]()  | fractionalDigits : int 
      The maximum number of digits that can appear after the decimal
      separator.  | NumberValidatorBase | |
![]()  | fractionalDigitsError : String 
      Error message when fraction digits exceeds the value specified
      by the fractionalDigits property.  | NumberValidatorBase | |
![]()  | greaterThanMaxError : String 
      Error message when the value exceeds the maxValue property.  | NumberValidatorBase | |
![]()  | groupingSeparator : String 
      The character or string used for the grouping separator.  | NumberValidatorBase | |
![]()  | id : String 
      
      The identity of the component.  | AdvancedStyleClient | |
![]()  | inheritingStyles : Object 
      An object containing the inheritable styles for this non-visual
      style client instance.  | AdvancedStyleClient | |
![]()  | invalidCharError : String 
      Error message when the value contains invalid characters.  | NumberValidatorBase | |
![]()  | invalidFormatCharsError : String 
      Error message when the value contains invalid format characters, which
      means that it contains a digit or minus sign (-) as a separator
      character, or it contains two or more consecutive separator characters.  | NumberValidatorBase | |
![]()  | lastOperationStatus : String [override] [read-only] 
      
      The status of the most recent operation that this class object
      performed.  | NumberValidatorBase | |
![]()  | lessThanMinError : String 
      Error message when the value is less than the minValue.  | NumberValidatorBase | |
![]()  | listener : Object 
      Specifies the validation listener.  | GlobalizationValidatorBase | |
![]()  | localeUndefinedError : String 
      Error message when the locale is undefined or is not available.  | NumberValidatorBase | |
![]()  | maxValue : Number 
      Maximum value for a valid number.  | NumberValidatorBase | |
![]()  | minValue : Number 
      Minimum value for a valid number.  | NumberValidatorBase | |
![]()  | moduleFactory : IFlexModuleFactory 
      A module factory is used as context for
      finding the style manager that controls the styles for this
      non-visual style client instance.  | AdvancedStyleClient | |
| negativeCurrencyFormat : uint 
       A numeric value that indicates a validating pattern for negative
      currency amounts.  | CurrencyValidator | ||
| negativeCurrencyFormatError : String 
      Error message when the negative number format of the input currency
      string is incorrect.  | CurrencyValidator | ||
![]()  | negativeError : String 
      Error message when the value is negative and the
      allowNegative property is false.  | NumberValidatorBase | |
![]()  | negativeSymbol : String [read-only] 
      The negative symbol to be used when validating negative values.  | NumberValidatorBase | |
![]()  | negativeSymbolError : String 
      Error message when the negative symbol is repeated or is in wrong place.  | NumberValidatorBase | |
![]()  | nonInheritingStyles : Object 
      The beginning of this component's chain of non-inheriting styles.  | AdvancedStyleClient | |
![]()  | notAnIntegerError : String 
      Error message when the number must be an integer, as defined
      by the domain property.  | NumberValidatorBase | |
![]()  | parseError : String 
      Error message when number could not be parsed.  | NumberValidatorBase | |
| positiveCurrencyFormat : uint 
        A numeric value that indicates a validating pattern for positive
      currency amounts.  | CurrencyValidator | ||
| positiveCurrencyFormatError : String 
      Error message when the positive currency number format is incorrect.  | CurrencyValidator | ||
![]()  | property : String 
      A String specifying the name of the property
      of the source object that contains
      the value to validate.  | GlobalizationValidatorBase | |
![]()  | required : Boolean = true 
      If true, specifies that a missing or empty
      value causes a validation error.  | GlobalizationValidatorBase | |
![]()  | requiredFieldError : String 
      Error message when a value is missing and the
      required property is true.  | GlobalizationValidatorBase | |
![]()  | source : Object 
      Specifies the object containing the property to validate.  | GlobalizationValidatorBase | |
![]()  | styleDeclaration : CSSStyleDeclaration 
      The style declaration that holds the inline styles declared by this
      object.  | AdvancedStyleClient | |
![]()  | styleManager : IStyleManager2 [read-only] 
      Returns the StyleManager instance used by this component.  | AdvancedStyleClient | |
![]()  | styleName : Object 
      
      The source of this object's style values.  | AdvancedStyleClient | |
![]()  | styleParent : IAdvancedStyleClient 
      A component's parent is used to evaluate descendant selectors.  | AdvancedStyleClient | |
![]()  | trigger : IEventDispatcher 
      Specifies the component generating the event that triggers the
      validator.  | GlobalizationValidatorBase | |
![]()  | triggerEvent : String 
      Specifies the event that triggers the validation.  | GlobalizationValidatorBase | |
| Method | Defined By | ||
|---|---|---|---|
      Constructs a new CurrencyValidator object to validate
      numbers representing currency amounts according to
      the conventions of a given locale.  | CurrencyValidator | ||
![]()  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 
	Registers an event listener object with an EventDispatcher object so that the listener 
	receives notification of an event.  | EventDispatcher | |
![]()  | 
      
      Deletes a style property from this component instance.  | AdvancedStyleClient | |
![]()  | 
	Dispatches an event into the event flow.  | EventDispatcher | |
![]()  | 
      
      Returns an Array of CSSStyleDeclaration objects for the type selector
      that applies to this component, or null if none exist.  | AdvancedStyleClient | |
![]()  | [override] 
      Gets a style property that has been set anywhere in this
      component's style lookup chain.  | GlobalizationBase | |
![]()  | 
      
      Returns true if currentCSSState is not null.  | AdvancedStyleClient | |
![]()  | 
	Checks whether the EventDispatcher object has any listeners registered for a specific type 
	of event.  | EventDispatcher | |
![]()  | 
	 Indicates whether an object has a specified property defined.  | Object | |
![]()  | 
      The initialized method is called when this class or a class that
      extends this class is used in an MXML declaration.  | AdvancedStyleClient | |
![]()  | 
	 Indicates whether an instance of the Object class is in the prototype chain of the object specified 
	 as the parameter.  | Object | |
![]()  | 
      
      Returns true if cssState matches currentCSSState.  | AdvancedStyleClient | |
![]()  | 
      
      Determines whether this instance is the same as, or is a subclass of,
      the given type.  | AdvancedStyleClient | |
![]()  | 
      Propagates style changes to the children of this style client
      instance.  | AdvancedStyleClient | |
![]()  | 
	 Indicates whether the specified property exists and is enumerable.  | Object | |
![]()  | 
      Sets up the internal style cache values so that the
      getStyle()
      method functions.  | AdvancedStyleClient | |
![]()  | 
      Registers the EffectManager as one of the event listeners
      for each effect event.  | AdvancedStyleClient | |
![]()  | 
	Removes a listener from the EventDispatcher object.  | EventDispatcher | |
![]()  | 
     Sets the availability of a dynamic property for loop operations.  | Object | |
![]()  | 
      
      Sets a style property on this component instance.  | AdvancedStyleClient | |
![]()  | 
      Detects changes to style properties.  | AdvancedStyleClient | |
![]()  | 
      
      Flex calls the stylesInitialized() method when
      the styles for a component are first initialized.  | AdvancedStyleClient | |
![]()  | 
	 Returns the string representation of this object, formatted according to locale-specific conventions.  | Object | |
![]()  | 
	 Returns the string representation of the specified object.  | Object | |
![]()  | 
      Performs validation and optionally notifies
      the listeners of the result.  | GlobalizationValidatorBase | |
![]()  | [static] 
      Invokes all the validators in the validators Array.  | GlobalizationValidatorBase | |
      Convenience method for calling a validator
      from within a custom validation function.  | CurrencyValidator | ||
![]()  | 
	 Returns the primitive value of the specified object.  | Object | |
![]()  | 
	Checks whether an event listener is registered with this EventDispatcher object or any of 
	its ancestors for the specified event type.  | EventDispatcher | |
Styles are either common or associated with a specific theme. If the style is common, it can be used with any theme. If a style is associated with a specific theme, it can only be used if your application uses that theme.
currencyISOCode | property | 
currencyISOCode:String| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
The three letter ISO 4217 currency code for the locale being used.
This property is used to validate the currency string or symbol 
      present in the input currency amounts using the validate()
      method.
      
This property is initialized by the constructor based on the actual locale that is used. When a fallback locale is used this property reflects the preferred, default currency code for the fallback locale.
The default value is dependent on the actual locale and 
      operating system.
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get currencyISOCode():String    public function set currencyISOCode(value:String):voidRelated API Elements
currencyStringError | property | 
currencyStringError:String| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
Error message when the currency symbol or currency ISO code is repeated or is in the incorrect location.
 The default value is "Currency name is repeated or not correct.".
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get currencyStringError():String    public function set currencyStringError(value:String):voidcurrencySymbol | property | 
currencySymbol:String| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
The currency symbol or string for the locale being used.
This property is used as the currency symbol when validating
      currency amounts using the validate() method.The 
      currency symbol or currency name in the validation string, 
      must match either the value of the currencySymbol property
      or the value of the currencyISOCode property. 
This property is initialized by the constructor based on the actual locale that is used. When a fallback locale is used this property reflects the preferred, default currency symbol for the fallback locale.
The default value is dependent on the actual locale and 
      operating system.
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get currencySymbol():String    public function set currencySymbol(value:String):voidRelated API Elements
negativeCurrencyFormat | property | 
negativeCurrencyFormat:uint| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
A numeric value that indicates a validating pattern for negative currency amounts. This property defines the location of the currency symbol and the negative symbol or parentheses in relation to the numeric portion of the currency amount. This property is used to validate whether or not the input currency string follows this pattern for negative amounts.
The value of this property must be one of the constants defined in the table below.
- The '¤' symbol represents the location of the currencyISOCode or the currencySymbol in the currency string.
 - The '-' character represents the location of the negativeNumberSymbol.
 - The 'n' character represents the currency amount.
 
| Negative currency format type | Formatting pattern | 
| 0 | (¤n) | 
| 1 | -¤n | 
| 2 | ¤-n | 
| 3 | ¤n- | 
| 4 | (n¤) | 
| 5 | -n¤ | 
| 6 | n-¤ | 
| 7 | n¤- | 
| 8 | -n ¤ | 
| 9 | -¤ n | 
| 10 | n ¤- | 
| 11 | ¤ n- | 
| 12 | ¤ -n | 
| 13 | n- ¤ | 
| 14 | (¤ n) | 
| 15 | (n ¤) | 
The default value is dependent on the actual locale and operating system.
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get negativeCurrencyFormat():uint    public function set negativeCurrencyFormat(value:uint):voidThrows
ArgumentError  — if the assigned value is not between 0 and 15.
     
       | 
Related API Elements
negativeCurrencyFormatError | property | 
negativeCurrencyFormatError:String| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
Error message when the negative number format of the input currency string is incorrect.
 The default value is "The negative format of the input currency is incorrect.".
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get negativeCurrencyFormatError():String    public function set negativeCurrencyFormatError(value:String):voidpositiveCurrencyFormat | property | 
positiveCurrencyFormat:uint| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
A numeric value that indicates a validating pattern for positive currency amounts. This property defines the location of currency symbol relative to the numeric portion of the currency amount. This property is used to validate if the input currency string follows this pattern for positive amounts.
The value of this property must be one of the constants defined in the table below.
- The '¤' symbol represents the location of the
           
currencyISOCodeor thecurrencySymbolin the currency string. - The 'n' character represents the location of the
           
currencyISOCodeor thecurrencySymbolin the currency string. 
| Positive currency format type | Formatting pattern | 
| 0 | ¤n | 
| 1 | n¤ | 
| 2 | ¤ n | 
| 3 | n ¤ | 
The default value is dependent on the actual locale and operating system.
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get positiveCurrencyFormat():uint    public function set positiveCurrencyFormat(value:uint):voidThrows
ArgumentError  — if the assigned value is not between 0 and 3.
     
       | 
Related API Elements
positiveCurrencyFormatError | property | 
positiveCurrencyFormatError:String| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
Error message when the positive currency number format is incorrect.
 The default value is "The positive format of the input currency is incorrect.".
This property can be used as the source for data binding. When this property is modified, it dispatches the  change  event.
Implementation
    public function get positiveCurrencyFormatError():String    public function set positiveCurrencyFormatError(value:String):voidCurrencyValidator | () | Constructor | 
public function CurrencyValidator()| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
      Constructs a new CurrencyValidator object to validate
      numbers representing currency amounts according to
      the conventions of a given locale.
      
      The locale for this class is supplied by the locale
      style property.
      The locale style can be set in several ways:
      
- 
      Inheriting the style from a 
UIComponentby calling theUIComponent'saddStyleClientmethod. - By using the class in an MXML declaration and inheriting the locale from the document that contains the declaration.
 
      <fx:Declarations>
             <s:CurrencyValidator id="cv" />
      </fx:Declarations>
      
      <fx:Declarations>
          <s:CurrencyValidator id="cv_turkish" locale="tr-TR" />
      </fx:Declarations>
      cv.setStyle("locale", "tr-TR")
      
      If the locale style is not set by one of the above 
      techniques, the instance of this class will be added as a 
      StyleClient to the topLevelApplication and 
      will therefore inherit the locale style from the 
      topLevelApplication object when the locale 
      dependent property getter or locale dependent method is 
      called.
      
The properties related to the currency string format are set to default values based on the locale.
NOTE: When a fallback locale is used, the currency
      properties are set to default values of en_US locale,
      and therefore might not match the currency for which the validation is
      intended.
      It is a good idea to
      examine the currencySymbol and currencyISOCode
      property values before validating a currency amount.
      
Related API Elements
validateCurrency | () | method | 
 public function validateCurrency(value:Object, baseField:String):Array| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 4.5 | 
| Runtime Versions: | Flash Player 10.1, AIR 2.5 | 
      Convenience method for calling a validator
      from within a custom validation function.
      Each of the standard Flex validators has a similar convenience method.
      Caller must check the ValidationResult objects in the
      returned array for validation status.
     
      
Parameters
value:Object — A currency number string to validate.The number string can 
      use unicode minus symbols 0x2212, 0xFE63, 0xFF0D besides ascii minus.
     
       | |
baseField:String — Text representation of the subfield
      specified in the value parameter.
      For example, if the value parameter specifies value.number,
      the baseField value is "number".
     
       | 
Array — An Array of ValidationResult objects, with
      one ValidationResult object for each field examined by
      the validator.
     
       | 
Related API Elements
<?xml version="1.0" encoding="utf-8"?>
<!-- Sample program for spark.formatters.NumberValidator -->
<s:Application
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx">
    
    <fx:Declarations>
        <s:CurrencyValidator id="currencyValidator" source='{inputNumber}' 
                           property="text" trigger='{validateBtn}'
                           triggerEvent="click" />
        <s:CurrencyFormatter id="currencyFormatter" useCurrencySymbol="true" 
                           useGrouping="true"/>
    </fx:Declarations>
    
    <fx:Script>
        <![CDATA[
            [Bindable]
            private var number:Number = 123456789.12;
        ]]>
    </fx:Script>
    
    <mx:Form>
        <mx:FormItem label="Input Locale ID Name">
            <mx:HBox>
                <s:TextInput id="inputLocaleIDName" text="en-US"/>
                <!-- Upon button click, sets the locale style on the document
                UI component. The formatter will inherit this style. -->
                <s:Button click="setStyle('locale', inputLocaleIDName.text);"
                          label="Apply"/>
            </mx:HBox>
            <mx:Text text="Example: 'en-US', 'fr-FR', 'ja-JP', 'ar-SA'"/>
        </mx:FormItem>
        
        <mx:FormItem label="Allow Negative">
            <mx:CheckBox id="alowNegative" selected="true"
                         change="currencyValidator.allowNegative = alowNegative.selected"/>
        </mx:FormItem>
        
        <mx:FormItem label="Fractional Digits">
            <mx:TextInput id="fractionalDigits" text='{currencyValidator.fractionalDigits}' 
                          change="currencyFormatter.fractionalDigits = 
                          currencyValidator.fractionalDigits = Number(fractionalDigits.text)"/>
        </mx:FormItem>
        
        <mx:FormItem label="Currency Symbol">
            <mx:TextInput id="currencySymbol" text='{currencyValidator.currencySymbol}' 
                          change="currencyFormatter.currencySymbol = 
                          currencyValidator.currencySymbol = currencySymbol.text"/>
        </mx:FormItem>
        
        <mx:FormItem label="Actual Locale ID Name">
            <mx:Text text="{currencyValidator.actualLocaleIDName}"/>
        </mx:FormItem>
        
        <mx:FormItem label="Enter currency amount" >
            <mx:HBox>
                <mx:TextInput id="inputNumber" />
                <mx:Button id="validateBtn" label="Validate" />
            </mx:HBox>
        </mx:FormItem>
        <mx:FormItem label="Example currency">
            <mx:Text text="{currencyFormatter.format(123456789.12)}"/>
        </mx:FormItem>
    </mx:Form>
</s:Application>
Thu Dec 6 2018, 01:12 PM -08:00
 
Show MXML Syntax