search cancel

FORAMTFPE1EXT Masking Function Parameters


Article ID: 256396


Updated On:


CA Test Data Manager (Data Finder / Grid Tools)


We have tried using FormatFPE1 – with the option to mask as a number. However, where the column is defined as VARCHAR2, it ends up failing, unable to parse the data element as soon as it encounters a “character” which is often the case with varchar2 columns. There are varchar2 columns defined to house any source of identification in lieu of SSNs or tax IDs… and often times there are DLs and other state IDs also included, often time there are global system assigned IDs as part of values which contains Alphabetic characters.

Can you suggest to us a correct solution? If we use FormatEncrypt function, it masks all numbers differently and all Varchar2 differently. What we need in our masking function is that if the value is numeric, then whether the data type is Number or VARCHAR2, it would process it as numeric. If the data type is varchar2, and it contains non-numeric characters, it would treat them as such and if any special characters are there, it would leave them alone.

Kindly suggest a solution urgently, as we aren’t able to progress in our masking with FormatFPE1 (I had 40 plus job failure in 2 days).


Release : 4.10


The recommended masking function is FORMATFPE1EXT. This function provides more flexibility than the FormatFPE1 function. Below is a short summary of the FormatFPE1Ext parameters.


  • Parm1 (mandatory) = Master Key or Label. Specifies the encryption key or label to be used for the underlying ASE encryption.
  • Parm2 (optional) = Options. This is a 'combination string' containing the 5 single-byte flags that set the 5 options. The default value has all 5 options disabled (N). The order of the options is as follows:
    1. Mask Extended = Extended characters are included in the masking alphabet
    2. Include Special Characters = Special characters are included in the masking alphabet
    3. Keep Capital = Upper and lower case attribute is preserved after masking
    4. Keep Format = Character, Numeric, and Special character attributes are preserved
    5. Use Tweak = Original value should be used to improve the randomness of the masked value
      • EXAMPLES:
        • NNNNN = Case Insensitive (default)
        • YNNNN = Mask Extended characters
        • NYNNN = Include Special Characters
        • NNYNN = Keep Capital (Case Sensitive)
        • NNNYN = Keep Format
        • NNNNY = Case Insensitive with Tweak
        • NNYYN = Keep Capital and Keep Format
        • NYNYN = Keep Format with Include Special Character in masking alphabet
        • YNNYN = Keep Format with Mask Extended Characters
  • Parm3 (optional) = Ignore First 'n'. Does not process the first 'n' bytes of the input field. (values: 0000-9999)
  • Parm4 (optional) = Ignore Last 'n'. Does not process the last 'n' bytes of the input field.  (values: 0000-9999)
  • Parm5 (optional) = Delimiter Values. Delimiters are a list of single characters that must be separated by a single space. A maximum of 5 delimiter values are allowed.
    • Special Keywords:
      • SPACE       [value is a single space]
      • HASH         [ # ]
      • LEFT          [ ( ]
      • RIGHT       [  ) ]
      • QUOTE     [ ' ]
      • DQUOTE  [ " ]
      • PCNT       [ % ]
      • PLUS       [ + ]
      • XCLM      [ ! ]
      • QUEST    [ ? ]
      • POUND   [ # ]
      • AT            [ @ ]
      • AMPER    [ & ]
      • DOLLAR  [ $ ]
      • COMMA   [ , ]
      • PERIOD   [ . ]
      • DASH       [ - ]
      • LT             [ < ]
      • GT           [ > ]
  • Parm6 (optional) = Include First 'n'. Extract and mask the first 'n' bytes of the input field.  (values: 0000-9999)
  • Parm7 (optional) = Include Last 'n'. Extract and mask the last 'n' bytes of the input field.  (values: 0000-9999)

Additional Information

For more information, see: