Functional Description
Purpose
This function supports European International Payment Instruction (IPI) processing. Specifically, it
formats an invoice amount for presentation on the IPI. The BSFN is designed in such a way that you
could theoretically use it to format any Math Numeric into a certain, formatted String.
Special Logic
If using this function outside of the scope of the IPI, set cBypassIPIDefaults_EV01 equal to '1.'
This setting then requires you to designate specific components of the output including the decimal
separator, display decimals, etc. Use null components if you do not want them in the output.
Technical Specification
Parameters
Data Item / Data Structure Desc / I/O / Req'd.
Notes
---------------------------------------------------------------------
MATH01 mnAmountToFormat_MATH01 I Y
Unformatted input.
EV01 cLeadingCharacter_EV01 I N
Cannot be null when bypassing defaults.
EV01 cDecimalSeparator_EV01 I N
MATH01 mnOutputLength_MATH01 I N
Must be greater than zero when bypassing defaults.
MATH01 mnDisplayDecimals_MATH01 I N
Must be at least zero when bypassing defaults.
EV01 cDecimalValue_EV01 I N
Decimal value represents the default value for decimal places when such a value does not exist in the
Math Numeric to convert, e.g., a '0' decimal value might convert 1000 to 1000.00. Conversely, a '9'
decimal value might convert 1000 to 1000.99. Must have a value if bypassing defaults and display
decimals is greater than zero.
EV01 cBypassIPIDefaults_EV01 I N
'1' to bypass IPI defaults.
GPTX szFormattedIPIAmount_GPTX O N
Formatted output.
Processing
Initialize variables.
Set formatting variables to use defaults or bypass them.
Construct a work string out of the Math Numeric input.
Validate that the work string can be formatted based on the formatting variables.
Convert the work string into the output string based on the formatting variables.
D0001210 - Format Amount for International Payment Instruction (IPI)
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
mnAmountToFormat_MATH01 | MATH01 | MATH_NUMERIC | REQ | INPUT |
- - - Good Performance Low Value. | ||||
cLeadingCharacter_EV01 | EV01 | char | OPT | INPUT |
An option that specifies the type of processing for an event. | ||||
cDecimalSeparator_EV01 | EV01 | char | OPT | INPUT |
An option that specifies the type of processing for an event. | ||||
mnOutputLength_MATH01 | MATH01 | MATH_NUMERIC | OPT | INPUT |
- - - Good Performance Low Value. | ||||
mnDisplayDecimals_MATH01 | MATH01 | MATH_NUMERIC | OPT | INPUT |
- - - Good Performance Low Value. | ||||
cDecimalValue_EV01 | EV01 | char | OPT | INPUT |
An option that specifies the type of processing for an event. | ||||
cBypassIPIDefaults_EV01 | EV01 | char | OPT | INPUT |
An option that specifies the type of processing for an event. | ||||
szFormattedIPIAmount_GPTX | GPTX | char | OPT | OUTPUT |
A user defined name or remark. |
None |
None |