Issue 2265: clarification on how the "#" is used in the money formatter
Issue 2266: Clairfy comparisons of two CBO::Ddecimal values on equality
Issue 2267: Clarify on comparison methods of the calculato
Issue 2268: Change text description of behavior of ROUND_FLOOR and ROUND_CEILING
Issue 2269: Add text for formatter that the format string will be used for parsing
Issue 2270: Add idl and text to describe the getAllExchangeRates method
Issue 2271: Change double to short for internal precision
Issue 2272: The idl for CBO::DTime needs the method: long getYear()
Issue 2273: Add text for DTime and DDecimal from CBO submission into Currency spec.
Issue 2363: StateID Exception
Issue 2365: Description of Exception handling semantics
Issue 2366: Extend ExceptionType enumerations
Issue 2367: Text indicating that vendors shall provide default values
Issue 2368: Clearer information describing different rounding types is needed
Issue 2369: Exchange rates need to be date based.
Issue 2379: vendor implementations can implement only parts and interoperate-Statement
Issue 2380: describe how the individual components should be accessed
Issue 2381: Propose modification to the init method of CurrencyValue
Issue 2382: missing description on the init method for CurrencyValue
Issue 2383: Missing details on preconditions on the Currency interface as a whole
Issue 2384: More clarification on the semantics of string arguements for CurrencyValue
Issue 2385: Legal value ranges for numerics in CurrencyValue init should be discussed
Issue 2386: Typos in CurrencyValue section
Issue 2387: Add description of isCurrency Active
Issue 2388: Add mechanism to create Money instances for moneyValue
Issue 2389: MoneyValue init interface need information
Issue 2390: exception semantics for MoneyValue
Issue 2391: IDL Changes to support date ranges on ExchangeRateValue
Issue 2392: ExchangeRateValue init interface need information
Issue 2393: Missing details on preconditions on the ExchangeRateValue
Issue 2394: Legal value ranges for numerics in ExchangeRateValue should be discussed
Issue 2395: Clarification on whether stateID manages session or state access
Issue 2396: Correct issues with CosObjectIdentity::IdentifiableObject in StateIDManage
Issue 2397: Change the name of getStateIdentifier to issueStateIdentifier
Issue 2398: Add validity checkign for StateIdentifier
Issue 2399: what values are used to determine if a currency exists in CurrencyBook
Issue 2400: Clarify the areEquivelent interface of the CurrencyBook
Issue 2401: Change get Currency to retrieveCurrency
Issue 2402: Correct Currency create method
Issue 2403: Correct interface symantics for createExchangeRate
Issue 2404: Change the name of addExchangeRate to insertExchangeRate
Issue 2405: Modify and specify the behavior of the insertExchangeRate interface
Issue 2406: removeExchangeRate() interface issue
Issue 2407: Proposed interface changes to ExchangeRateManager
Issue 2408: Clarify MoneyFormatter use of the # symbol
Issue 2409: Clarify legal values for the MoneyFormatter format strings
Issue 2410: Clarify contradiction betw setFormatByLocale & setFormattingString
Issue 2411: Clarify exceptions for setFormattingString in MoneyFormatter
Issue 2412: Typo on SetPatternMnemonicSymbol name
Issue 2413: Interface changes for MoneyFormatter pattern handling
Issue 2414: Create mechanism to modify what negative prefix is for formatting string
Issue 2415: Clarify on comparison methods of the MoneyCalculator
Issue 2416: Add interfaces for internal precision on MoneyCalculator
Issue 2417: Fix omitted precondition for MoneyCalculator
Issue 2418: Improve DTime exception handling
Issue 2419: Corrections to the equals/setEquals interfaces of DTime
Issue 2420: : Change name of interface to CBO::Decima
Issue 2421: Clarify the equality method of DDecimal
Issue 2422: Add interfaces to DDecimal
Issue 2423: : Change name of interface to CBO::Time
Issue 2424: support to set precision to something other than milliseconds
Issue 2425: Clarification required on setYear of the DTime interface
Issue 2426: Add interface to DTime
Issue 2427: Add interfaces to DTime properly handle the DAmountOfTime difference inter
Issue 2428: Change name of CBO::DAmountOfTime interface to CBO::AmountOfTime
Issue 2429: Support millisecond precision in DAmountOfTime
Issue 2430: Improve text in specification of of DAmountOfTime
Issue 2775: Supplied Data for ISO Locales in MoneyFormatter needs to be discussed
Issue 2776: Remove dependence on a specific version of the ISO 4217 standard
Issue 2778: Add ability to clone Money
Issue 2779: Add clarification on formatting string in MoneyFormatter
Issue 2780: Changing RoundType.DONT_ROUND
Issue 2781: Place maximums on wstrings for interoperability
Issue 2782: Remove Dependence in FBCCurrency of CBO::DTime
Issue 2783: Remove Depedence in FBCCurrency of CBO::DDecimal
Issue 2886: Value types need state
Issue 2265: clarification on how the "#" is used in the money formatter (currency-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Minor
Summary: Summary: Need more clarification on how the "#" is used in the money formatter -
i.e. if the digit is zero and doesn"t contribute to the value, 0 will not show.
Resolution: resolved and closed in Currency 2 RTF
Revised Text:
Actions taken:
December 17, 1998: received issue
May 4, 2000: closed issue
Discussion: In section 2.3.12.1, in the default symbol box for the meaning for symbol # add the following text:
Zero does not appear in formatted output where its inclusion would otherwise add no information, e.g. "GBP 012.34" vs. "GBP 12.34"
Issue 2266: Clairfy comparisons of two CBO::Ddecimal values on equality (currency-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Minor
Summary: Summary: Clairfy comparisons of two CBO::Ddecimal values on equality (i.e. 2.0 equal to 2.000)
regardless of scale factor
Resolution:
Revised Text:
Actions taken:
December 17, 1998: received issue
Discussion: received issue
Issue 2267: Clarify on comparison methods of the calculato (currency-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Minor
Summary: Summary: Clarify on comparison methods of the calculator that no rounding etc. would take place before the
comparison, it would be the raw numbers in each money instance that is compared.
Resolution: Already fixed in issue # 2415
Revised Text:
Actions taken:
December 17, 1998: received issue
May 4, 2000: closed issue
Discussion:
Issue 2268: Change text description of behavior of ROUND_FLOOR and ROUND_CEILING (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity: Significant
Summary: Summary: Change text description of behavior of ROUND_FLOOR and ROUND_CEILING. The descriptions are mixed between the two.
Resolution: Change text in spec describing the correct behaviour for the rounding rules
Revised Text: In section 2.3.4 for Rounding Types change the ROUND_FLOOR text to:
When ROUND_FLOOR is set, a number will be rounded toward negative infinity and the rounding digit is ignored.
In section 2.3.4 for Rounding Types change the ROUND_CEILING text to:
When ROUND_CEILING is set, a number will be rounded toward positive infinity and the rounding digit is ignored.
Actions taken:
December 17, 1998: received issue
May 4, 2000: closed issue
Discussion:
Issue 2269: Add text for formatter that the format string will be used for parsing (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity: Significant
Summary: Summary: Add text for formatter that the format string will be used for parsing.
Clarify the formatting string and how it is used.
This way the parser routine will use: M##,###.00 to help it parse: RUR10,00
This also means the radix character was set to: "," and the grouping symbol was set to: "."
Show an example to distinguish between what the pattern gives you and what the actually settings of the characters give you.
Resolution: resolved in Currency 2 RTF
Revised Text: Resolution: Change text in spec., this was always an assumed behaviour, but needs to be added to spec to make it more clear.
Revised Text: In section 2.3.12.4 after the last paragraph add the following paragraph:
The MoneyFromatter will use the pattern values, symbol values, and format specification for the given stateIdentifier to parse moneyString. Suppose that the MoneyFormatter is to parse moneyString = "RUR10,00" for a given stateIdentifier. Now suppose that the format specification for this stateIdentifier is "M##,###.00" and that the radix symbol is ",". All of that informathion is necessary to produce a Money object that represents 10 Russian Rubles (with a precision of 2).
Actions taken:
December 17, 1998: received issue
May 4, 2000: closed issue
Discussion:
Issue 2270: Add idl and text to describe the getAllExchangeRates method (currency-rtf)
Click here for this issue's archive.
Nature: Clarification
Severity: Minor
Summary: Summary: Add idl and text to describe the getAllExchangeRates method
Resolution: resolved in Currency 2 RTF
Revised Text: Change text in spec. to document the getAllExchangeRates method
Revised Text: In section 2.3.11 in Retrieval Methods add the following idl:
ExchangeRateCollection getAllExchangeRates() raises (FbcException);
At the end of the last paragraph in section 2.3.11 add the following text:
The getAllExchangeRates operation returns all exchange rate objects currently known to the system.
Actions taken:
December 18, 1998: received issue
May 4, 2000: closed issue
Discussion:
Issue 2271: Change double to short for internal precision (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity: Minor
Summary: Summary: Change double to short for internal precision
Resolution: resolved in Currency 2 RTF
Revised Text: : Change idl and text in spec. Change the MoneyCalculator parameters and return type for precision from double to short.
Revised Text: In text in section 2.3.13.1 change the return type for getInternalPrecision from double to short. Change the precision argument in setInternalPrecision from double to short.
Change step 4 of the sequence diagram for Figure 2-1 from: setInternalPrecision(stateId, .01) to: setInternatlPrecision(stateId, 2)
Revised IDL: In the consolidated IDL, appendix A.1 interface MoneyCalculator change the return type for getInternalPrecision from double to short. Change the precision argument in setInternalPrecision from double to short.
Actions taken:
December 18, 1998: received issue
May 4, 2000: closed issue
Discussion:
Issue 2272: The idl for CBO::DTime needs the method: long getYear() (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity: Minor
Summary: Summary: The idl for CBO::DTime needs the method: long getYear()
Resolution:
Revised Text:
Actions taken:
December 18, 1998: received issue
Discussion:
Issue 2273: Add text for DTime and DDecimal from CBO submission into Currency spec. (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity: Minor
Summary: Summary: Now that the CBO submission no longer exists, we need to add the text for DTime and DDecimal
from the CBO submission into the Currency Spec.
Resolution:
Revised Text:
Actions taken:
December 18, 1998: received issue
Discussion:
Issue 2363: StateID Exception (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Need exceptions for stateId indicating that one was never created from the
StateIdManager for all methods that take stateId.
Resolution: resolved is Currency 2 RTF, closed
Revised Text: : In section 2.3.5 add the following Exception type to the enum ExceptionType: INVALID_STATE_IDENTIFIER
Revised IDL: Add INVALID_STATE_IDENTIFIER to ExceptionType enum after INVALID_PRECISION in Appendix A.1 (Consolidated idl)
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2365: Description of Exception handling semantics (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Text needs to be added to describe what causes an exception to be raised
for a given interface, when the semantics/preconditions for the interface
have been violated (vs. exceptions specific to a vendor
’s implementation).
e.g. Money.[gs]etValue(), MoneyFormatter.[gs]etFormattingString(), etc. It
appears that most every interface raises (FbcException), but quite often
the text which describes which exceptions can be raised, in terms of
ExceptionType and under what conditions the exception is raised/thrown, has
not been detailed. A detailed pass through the entire FbcCurrency spec
should be conducted with attention paid to each interface and its exception
generating details.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2366: Extend ExceptionType enumerations (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Need to add some additional enumerations to the ExceptionType enumeration.
Some of the suggestions are the following : INVALID_VALUE,
INVALID_STATE_IDENTIFIER, INVALID_DATE_RANGE, INVALID_CONVERSION_FACTOR,
INVALID_STRING (when a provided string is empty or contains only white
space), UNINITIALIZED_DATA, DATE_RANGE_FRAGMENTATION (when adding an
exchange rate whose effective window in time would fragment existing
exchange rates), INVALID_MULTIPLIER, INVALID_DIVISOR, STATE_IDS_EXHAUSTED.
(Our implementation plan is such that INVALID_ROUNDING_DIGIT,
INVALID_MULTIPLIER, etc. should really be discarded in favor of using
INVALID_VALUE. Where an explicit value has already been specified in the
submission (e.g. INVALID_ROUNDING_DIGIT) we will use it but hope for our
recommendation to be heeded. For exception types that are necessary but
were not included in the adopted submission, we will add our own (e.g.
INVALID_STATE_IDENTIFIER, INVALID_VALUE) and use whenever necessary.
Resolution: resolved in Currency 2 RTF, closed
Revised Text: : Incorporate changes to text and idl for INVALID_VALUE, UNINITIALIZED_DATA and DATABASE_EXCEPTION.
Also See Issue 2363 for INVALID_STATE_IDENTIFIER
The other suggested exception types will not be added since INVALID_VALUE can suffice.
Revised Text: In section 2.3.5 and Appendix A.1 add the following Exception types to the enum ExceptionType:
INVALID_VALUE.
UNINITIALIZED_DATA,
DATABASE_EXCEPTION
Revised IDL: add the following Exception type to the enum ExceptionType:
INVALID_VALUE.
UNINITIALIZED_DATA,
DATABASE_EXCEPTION
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2367: Text indicating that vendors shall provide default values (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: .A Currency implementation should probably provide default values on behalf
of a given valid stateIdentifier (i.e. MoneyCalculator.roundingType,
MoneyCalculator.roundingDigit, MoneyCalculator.conversionType,
MoneyCalculator.internalPrecision, MoneyFormatter.radixSymbol,
MoneyFormatter.groupingSymbol, MoneyFormatter.negativePrefixSymbol,
MoneyFormatter.inputMultiplier, MoneyFormatter.outputDivisor, locale,
etc.). The standard should state that a vendor’s responsibility is to
provide defaults, but leave the choice of the actual default values to the
vendor. An interface allowing state to be set back to defaults should be
considered.
Resolution: resolve dis Currency 2 RTF
Revised Text: Resolution: Change text in spec. indicating that default values will be assumed to be set
Revised Text: Add the following new section after section 2.3.5:
2.3.6 Default Values
Default values will be provided for all stateIdentifier based operations.
The actual defaults are the prerogative of the implementors. Thus, it is possible to ask for a new state identifier and interact with ExchangeRateManager, MoneyFormatter, CurrencyBook and MoneyCalculator accessors and/or operations without an FbcException being thrown.
Actions taken:
February 1, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2368: Clearer information describing different rounding types is needed (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: RoundingType.ROUND_DOWN – The textual description needs to be far more
explicit and/or include examples for both positive and negative numbers.
Round toward zero? Is the rounding digit truly ignored? e.g. Let the
internal precision be two.
Resolution: resolved in Currency 2 RTF
Revised Text: : From Issue 2268 the text clearly specified that the rounding digit will be ignored, however a few examples would be good to show.
Revised Text:
In section 2.3.4 After the bulleted list, add the following:
Examples:
ROUNDING_DIGIT = 5
INTERNAL_PRECISION = 2
ROUND_DOWN(-1.239) produces -1.23
ROUND_DOWN(-1.234) produces -1.23
ROUND_DOWN(1.230) produces 1.23
ROUND_DOWN(1.239) produces 1.23
ROUND_UP(-1.239) produces -1.24
ROUND_UP(-1.234) produces -1.23
ROUND_UP(1.230) produces 1.23
ROUND_UP(1.239) produces 1.24
ROUND_FLOOR(-1.239) produces -1.24
ROUND_FLOOR(-1.230) produces -1.23
ROUND_FLOOR(1.230) produces 1.23
ROUND_FLOOR(1.239) produces 1.23
ROUND_CEILING(-1.239) produces -1.23
ROUND_CEILING(-1.234) produces -1.23
ROUND_CEILING(1.230) produces 1.23
ROUND_CEILING(1.239) produces 1.24
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion: Discussion: RoundingType.ROUND_DOWN - The textual description needs to be far more explicit and/or include examples for both positive and negative numbers. Round toward zero? Is the rounding digit truly ignored? e.g. Let the internal precision be two. Thus: ROUND_DOWN(-2.135) yields -2.13 ? ROUND_DOWN(2.135) yields 2.13 ? RoundingType.ROUND_UP - The textual description needs to be far more explicit and/or include examples for both positive and negative numbers. Round away from zero? e.g. Let the rounding digit be 5, with an internal precision of 2. Thus: ROUND_UP(-2.135) yields -2.14 ? ROUND_UP(2.135) yields 2.14 ? RoundingType.ROUND_FLOOR - The textual description needs to be far more explicit and/or include examples for both positive and negative numbers. Round toward negative infinity? e.g. Let the rounding digit be 5, with an internal precision of 2. Thus: ROUND_FLOOR(-2.135) yields -2.14 ? ROUND_FLOOR(2.135) yields 2.13 ? RoundingType.ROUND_CEILING - The textual description needs to be far more explicit and/or include examples for both positive and negative numbers. Round toward positive infinity? e.g. Let the rounding digit be 5, with an internal precision of 2. Thus: ROUND_CEILING(-2.135) yields -2.13 ? ROUND_CEILING(2.135) yields 2.14 ? RoundingType.DONT_ROUND - DO_NOT_ROUND would be more explicit and prohibit confusion as the contraction might cause some confusion.
Issue 2369: Exchange rates need to be date based. (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: In Fbc: Need the ability to have date based exchange rates and for the
manager to manage date based exchange rates.
- Since we need to start accounting for dates for exchange of currencies
and also for doing multi-currency money calculations, it would be nice to
add settings on the ExchangeRateManager that is state based that allows for
client configuration.
Resolution: resolved by Currency 2RTF
Revised Text: Resolution: Adding operations and text for the ExchangeRateManager to be able to handle date based ExchangeRate, spec. changes for ExchangeRate is covered in issue number 2391. Since the ExchangeRate is now date based, when doing Money calculations, exchanges, or exchange rate retrievals the facility needs to know the point in time and rate type the client wants used in order for the facility to grab the correct rate. There need to be new operations to handle this.
Revised Text:
In section 2.3.11 change the idl from:
ExchangeRate createExchangeRate(in wstring rateTypeId,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::DDecimal conversionFactor)
raises(FbcException);
To:
ExchangeRate createExchangeRate(in wstring rateTypeId,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::DDecimal conversionFactor,
in CBO::DTime beginDateTime,
in CBO::DTime endDateTime)
raises(FbcException);
Add the following section before the Retrieval Method section of the ExchangeRateManager:
Configuration Manipulation
void setPointInTime(in long stateIdentifier,
in CBO::Time pointInTime) raises(FbcException);
CBO::Time getPointInTime (in long stateIdentifier)
raises(FbcException);
The point in time setting is used when attempting to retrieve exchange rates as well as during MoneyCalculations, for a given stateIdentifier. Exchange rates will be retrieved for the appropriate rate type, source currency mnemonic, and target currency mnemonic where their beginDateTime >= pointInTime <= endDateTime. There are no restrictions on the specific moment in time that pointInTime represents.
The vendor is responsible for providing, and documenting, the default point in time value, to support the case where it is needed by this component, but has not yet been assigned (via setPointInTime()).
void setRateType(in long stateIdentifier,
in wstring rateTypeID) raises(FbcException);
wstring getRateType(in long stateIdentifier)
raises(FbcException);
The rate type setting is used when attempting to retrieve exchange rates as well as during MoneyCalculations, for a given stateIdentifier. Exchange rates will be retrieved for the appropriate point in time, source currency mnemonic, and target currency mnemonic where their rate type matches rateTypeID. There are no restrictions on the specific rate type that rateTypeID represents.
The vendor must be able to support rateTypeID being at least 10 wide characters in length.
The vendor is responsible for providing, and documenting, the default rate type value, to support the case where it is needed by this component, but has not yet been assigned (via setRateType()).
Revised IDL:
In the idl for the ExchangeRateManager change the createExchangeRate operation from:
ExchangeRate createExchangeRate(in wstring rateTypeId,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::DDecimal conversionFactor)
raises(FbcException);
To:
ExchangeRate createExchangeRate(in wstring rateTypeId,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::DDecimal conversionFactor,
in CBO::DTime beginDateTime,
in CBO::DTime endDateTime)
raises(FbcException);
Add the following operations to the ExchangeRateManager interface in the Consolidated IDL (Appendix A.1) before the getExchangeRate operation:
void setPointInTime(in long stateIdentifier,
in CBO::Time pointInTime) raises(FbcException);
CBO::Time getPointInTime (in longObject stateIdentifier)
raises(FbcException);
void setRateType(in long stateIdentifier,
in wstring rateTypeID) raises(FbcException);
wstring getRateType(in long stateIdentifier)
raises(FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2379: vendor implementations can implement only parts and interoperate-Statement (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The specification should state very explicitly how the subsystems/entry
points (i.e. StateIdManager, CurrencyBook, ExchangeRateManager,
MoneyFormatter, MoneyCalculator) locate each other if multiple vendor
implementations (e.g. StateIdManager and MoneyFormatter implementation from
one vendor and the remaining from another) can work with each other. If the
intention though is to support homogeneous implementations only (i.e. A
vendor solution supports all subsystems/entry points and only works with
its one implementation) this needs to be called out in the specification
instead.
Resolution: No action taken, this has always been viewed as a component.
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2380: describe how the individual components should be accessed (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Should the subsystem/singleton components (i.e. StateIdManager,
CurrencyBook, ExchangeRateManager, MoneyFormatter, MoneyCalculator) all be
published separately to the CORBAservices Naming Service?
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2381: Propose modification to the init method of CurrencyValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Propose the following interface change(s):
void init(
in wstring name,
in wstring fractionName,
in wstring mnemonic,
in short numericCode,
in wstring symbol,
in wstring fractionSymbol,
in short ratioOfFractionToWhole,
in wstring description,
in CBO::DTime introductionDate,
in CBO::DTime expirationDate,
in boolean isISO,
in wstring ISOVersion,
in StringCollection locales)
raises(FbcException); - Note in this signature that
scaleFactor, isExternalOutputShowingFractions, and
isInternalOutputShowingFractions have been deleted.
Resolution: resolved in Currency 2 RTF, closed
Revised Text: Resolution: The resolution will be to fix the IDL, get rid of extraneous unrelated parameters from the init method.
Revised IDL: Remove from consolidated idl in Appendix A.1 from the Currency value type's init method the following arguments:
in long scaleFactor,
in boolean isExternalOutputShowingFractions,
in boolean isinternalOutputShowingFractions
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2382: missing description on the init method for CurrencyValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The init() method appears in the consolidated IDL Specifications portion of
the standard, but does not appear and is not documented or discussed in
section 2.3.6.
Resolution: closed issue, resolved by Currency 2 RTF
Revised Text: Resolution: Add the method and text describing it in the text section of the spec.
Revised Text: In section 2.3.6.1 after Value Currency add:
Initialization
void init(
in wstring name,
in wstring mnemonic,
in wstring numericCode,
in wstring symbol,
in wstring fractionSymbol,
in short ratioOfFractionToWhole,
in wstring description,
in CBO::DTime introductionDate,
in CBO::DTime expirationDate,
in boolean isISO,
in wstring ISOVersion) raises(FbcException);
The Currency value can be initialized entirely via the init() operation. Note that all values must meet the preconditions associated with each parameter passed. See the accessors below for their specific preconditions.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2383: Missing details on preconditions on the Currency interface as a whole (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Missing details on preconditions on the Currency
interface as a whole
Resolution: closed issue, resolved by Currency 2 RTF
Revised Text: Resolution: Add precondition details in spec to cover any preconditions for the Currency value. The string types are already covered in issue 2384. The numericCode is covered in issue 2385
Revised Text:
In section 2.3.6.1 after the void setRatioOfFractionToWhole(in short ratio) raises FbcException add this line of text:
ratio must be greater than or equal to one or an FbcException will be raised.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion: received issue
Issue 2384: More clarification on the semantics of string arguements for CurrencyValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Can the wstring argument(s) to setMnemonic(), setName(), setFractionName(),
setSymbol(), setFractionSymbol(), or init() be empty strings or strings
containing only white space? Acceptable arguments need to be discussed.
Resolution: resolved by Currency 2 RTF, closed
Revised Text: Resolution: Add text to the spec. clarifying what is acceptable, this will be done only for fields that uniquely identify the currency, other non-unique fields can be assumed to be whatever the user wants to make them.
Revised Text: In section 2.3.6.1 in the Unique Identifier Accessors part, after the paragraph add the following text:
The mnemonic and name must contain non-white space characters. An FbcException will be thrown if either is set to an empty string or all white space characters (i.e. spaces, tabs or carriage returns).
After this paragraph: "The symbol of a currency is the symbol of the base value of a currency. The fractional symbol is the symbol of the fractional part of a currency. These symbols are used by the money formatter to format a money of a particular currency. " Add:
The symbol must contain non-white space characters. An FbcException will be thrown if it is set to an empty string or all white space characters (i.e. spaces, tabs or carriage returns).
Actions taken:
February 2, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2385: Legal value ranges for numerics in CurrencyValue init should be discussed (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Can the short numericCode presented to init() and setNumericCode() be <= 0?
What are its legal values?
Can the short ratioOfFractionToWhole provided to init() and
setRatioOfFractionToWhole() be <= 1? What are acceptable values?
Can the point in time represented by introductionDate be >= expirationDate
in init() and setExpirationDate()/setIntroductionDate()?
Resolution: close issue, resolved by Currency 2 RTF
Revised Text: Resolution: Add text to the spec. indicating the valid values for numericCode.
Revised Text: In section 2.3.6.1 After this paragraph: "The currency mnemonic, numeric code, and name are all unique identifiers of the
currency. The ISO 4217:1995 standard defines name, numeric code, and mnemonic for each of the ISO currencies. Users creating non-ISO currencies will need to maintain the uniqueness of the name, numeric code, and mnemonic. The mnemonic is used by money to identify the currency associated with the money."
Add:
The numeric code must be greater than zero or an FbcException will be raised.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2386: Typos in CurrencyValue section (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Typos in the section that describes setRatioOfFractionToWhole(). The second
sentence should be “The ratio for United States Dollars is one hundred
pennies to one dollar, which is 100. In cases where there is no minor part
of a currency (e.g. Yen), this method should return a value of 1.”
Resolution: resolved by Currency 2 RTF, close
Revised Text: Resolution: change the text in the spec. to fix typo.
Revised Text: Change the following word in section 2.3.6.1 under the description of the setRatioOfFractionToWhole() method from "Zen" to: "Yen"
Actions taken:
February 2, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2387: Add description of isCurrency Active (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: There is no description of isCurrentlyActive() and when/why it would return
true vs. false. Since it is described in the same area as the
introduction/expiration date, does it simply perform a check to see if the
current system time falls between the introduction and expiration
date/times?
Resolution: closed , resolved by Currency 2 RTF
Revised Text: Resolution: add text to the spec. describing the isCurrentlyActive operation,
Revised Text: Add the following text in section 2.3.6.1 under the description of the isCurrentlyActive() method:
A currency is considered to be currently active if the date and time at which this operation was invoked is greater than or equal to the introduction date and less than or equal to the expiration date of the currency.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2388: Add mechanism to create Money instances for moneyValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: There is no mechanism to create Money instances via a
factory/type manager method.
Resolution: resolved by Currency 2 RTF, close
Revised Text: Resolution: add a createMoney method to Currency
Revised Text: At the end of section 2.3.6.1 add the following:
Money createMoney(in CBO::DDecimal amount) raises(FbcException);
Creates a Money object that represents the given amount with the currency mnemonic of the Currency.
Revised idl: add new method to consolidated idl for the Currency interface(Appendix A):
Money createMoney(in CBO::DDecimal amount) raises(FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2389: MoneyValue init interface need information (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The init() interface appears in the consolidated IDL Specifications portion
of the document, but does not appear and is not documented or discussed in
section 2.3.7.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: add init() method to text and make argument name consistent.
Revised Text: Add in section 2.3.7 in idl section:
Void init(in wstring currencyMnemonic, in CBO::DDecimal amount) raises(FbcException);
The Money value can be initialized via the init() operation.
Revised idl: change argument type from "theValue" to: amount in the consolidated idl (Appendix A)
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2390: exception semantics for MoneyValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: There is no descriptive text stating why an FbcException would be raised
when calling init(), [gs]etCurrencyMnemonic(), or [gs]etValue().
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Because Money is a value type, it would not be possible to remotely check if the mnemonic is valid or not, suggestion is to get rid of raising FbcException for these methods. The validity of the mnemonic for money should be checked during remote operations on the Money value.
Revised Text: In section 2.3.7 and consolidated IDL for all operations on the Money value remove raises(FbcException)
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2391: IDL Changes to support date ranges on ExchangeRateValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Propose the addition of the following interface(s):
void setDateRange(in CBO::Dtime beginDateTime,
in CBO::Dtime endDateTime) – Sets the window in
time over which the ExchangeRate instance is valid.
CBO::Dtime getStartDate() – Returns the date and time at which
the ExchangeRate took effect.
CBO::Dtime getEndDate() – Returns the date and time at which the
ExchangeRate is no longer valid.
Will also need an appropriate exception to throw when the date
range is attempted to be set and beginDateTime >= endDateTime. Do
not think that the beginDateTime should be allowed to be equal to
the endDateTime as that then means that the ExchangeRate is valid
for zero seconds.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Incorporate changes in the spec to allow for date specific exchange rates, adding new methods for setting and getting the effective dates.
Revised Text: In section 2.3.8 add the following text after value ExchangeRate:
Effective Date Range
Void setDateRange(in CBO::DTime beginDateTime, in CBO::DTime endDateTime)
raises(FbcException);
Sets the window in time over which the given exchange rate is valid. An exception will be raised if the given beginDateTime is greater than or equal to the endDateTime.
CBO::DTime getStartDate() raises (FbcException);
CBO::DTime getEndDate() raises(FbcException);
The start date/time of an exchange rate is the date and time in which it took affect for the exchange rate's source/target currency mnemonics and rate type. The end date/time is the date and time after which the exchange rate is no longer valid.
Revised idl: In Appendix A add the following idl to the ExchangeRate value before the exchange operation:
Void setDateRange(in CBO::DTime beginDateTime, in CBO::DTime endDateTime)
raises(FbcException);
CBO::DTime getStartDate() raises (FbcException);
CBO::DTime getEndDate() raises(FbcException);
Add to the init method after conversionFactor:
in CBO::DTime beginDateTime,
in CBO::DTime endDateTime)
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2392: ExchangeRateValue init interface need information (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The init() interface appears in the consolidated IDL Specifications portion
of the document, but does not appear and is not documented or discussed in
section 2.3.8.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text to document to describe the init method.
Revised Text: At the beginning of section 2.3.8, after value ExchangeRate add the following:
Initialization
void init(in wstring rateTypeID,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::DDecimal conversionFactor,
in CBO::DTime beginDateTime, in CBO::DTime endDateTime) raises(FbcException);
Initializes the ExchangeRate object with the attributes passed. Note that all values must meet the preconditions associated with each parameter passed. See the accessors below for their specific preconditions.
Actions taken:
February 2, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2393: Missing details on preconditions on the ExchangeRateValue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Missing details on preconditions on the
ExchangeRateValue interface as a whole
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text to spec. describing any preconditions on the ExchangeRateValue
Revised Text: In section 2.3.8 after the setTargetCurrencyMnemonic() operation add:
An exception will be raised if the source currency mnemonic is attempted to be set to a value which is identical to the target currency mnemonic and vice versa.
In section 2.3.8 after the setConversionFactor operation add:
ConversionFactor must represent a value greater than 0.0, an exception will be thrown otherwise.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2394: Legal value ranges for numerics in ExchangeRateValue should be discussed (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Can conversionFactor represent a value <= 0.0? I would think not. An
exception should be thrown if the conversion factor is attempted to be set
with a Ddecimal that represents a value <= 0.0
The beginDateTime must be < endDateTime in the init() call correct? Throw
an exception if this is not the case.
The source and target currency mnemonics cannot be the same in the init()
call correct? Throw an exception if they are.
Resolution: Closed, no change. This issue is fixed by Issue 2393
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2395: Clarification on whether stateID manages session or state access (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: In general the decision needs to be made as to whether a given
stateIdentifier is used to indicate the boundaries of a session or a simple
configuration, as it currently seems to attempt to support both. Whichever
direction is chosen, all of the interfaces that accept a stateIdentifier as
an argument should be revisited to ensure that the intent of the interface
is still properly supported. e.g. Should the currency component still offer
a “connectionless” interface to its consumers?
Resolution: closed, no action taken
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion: Discussion: It is only there to support state access. A client can use the currency service in a separate session and use the same stateId in order to get the equivalent state applied. It will still be a connectionless interface.
Issue 2396: Correct issues with CosObjectIdentity::IdentifiableObject in StateIDManage (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Use of CosObjectIdentity::IdentifiableObject as the interface for a
stateIdentifier. There is a particularly concerning paragraph in v1.0 of
the Relationship Service regarding the interface: “The value of this
attribute [readonly attribute ObjectIdentifier constant_random_id] is not
guaranteed to be unique; that is, another identifiable object can return
the same value. However, if objects return different identifiers, clients
can determine that two identifiable objects are not identical”.
Resolution: closed, no changes
Revised Text: Resolution: Because the IdentifiableObject will be replaced with a basic type (see Issue 2776), this is no longer an issue. It is the implementors responsibility that stateId stays unique.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2397: Change the name of getStateIdentifier to issueStateIdentifier (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: getStateIdentifier() implies an accessor which it is not. Change name of
the interface to issueStateIdentifier().
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Text and idl in spec should be updated with new operation name.
Revised Text: In section 2.3.9 change getStateIdentifier operation name to:
issueStateIdentifier
Revised IDL: In the consolidated idl change the getStateIdentifier operation name to:
issueStateIdentifier
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2398: Add validity checkign for StateIdentifier (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Add the boolean valid(in CosObjectIdentifier::IdentifiableObject
stateIdentifier) interface. This must be included so that each interface
that accepts a stateIdentifier can do validity checking against it before
servicing the request.
Resolution: closed issue, resolved by Currency 2 RTF
Revised Text: Resolution: Add new operation to spec. for checking validitiy.
Revised Text: At end of section 2.3.9 add:
boolean valid(in long identifier)
raises(FbcException);
A given state identifier can be checked for validity using this operation. True is returned if the identifier is still valid ( has been issued, but not removed), otherwise false is returned. An exception will be thrown in the case where validity cannot be confirmed nor denied.
Revised Idl: Add the following to the consolidated idl (Appendix A), for the StateIdManager interface:
boolean valid(in long identifier)
raises(FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2399: what values are used to determine if a currency exists in CurrencyBook (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: addCurrency() will raise an exception “if the currency already exists in
the CurrencyBook …”. There is no mention of what elements of a currency are
required to determine if one “already exists”. What
needs to be fully
detailed are those Currency elements which must be used to determine
uniqueness. e.g. mnemonic, numeric code, etc.
Resolution: closed, resolved by Currency 2 RTF
Revised Text: Resolution: Add documentation to spec describing what would cause an exception for the addCurrency operation.
Revised Text: In section 2.3.10 after areEquivalent() idl change text from: An exception is raised if the currency already exists in the CurrencyBook or if the locales of the currency are not standard locales to: An exception is raised if the currency already exists in the CurrencyBook (see Currency section for what constitutes unique identity for a Currency). An exception is raised if the locales of the currency are not standard locales.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2400: Clarify the areEquivelent interface of the CurrencyBook (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: areEquivalent() “determines whether the two passed-in Currency objects
contain the same elements”. Again, what needs to be fully detailed are
those Currency elements which must be to determine uniqueness. e.g.
mnemonic, numeric code, etc.
Resolution: closed, resolved by Currency 2 RTF
Revised Text: Resolution: Update the spec to be clear that is all elements of the currency object, not just the key fields, as was intended from the original spec.
Revised Text:
In section 2.3.10 add the following sentence to the sentence "The areEquivalent interface determines whether the two passed-in currency objects contain the same elements":
All elements of the currency value types are checked, not just the elements that make them unique.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2401: Change get Currency to retrieveCurrency (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The getCurrency() method name lends the consumer to believe that it is
simply an accessor method, which it is not. It is a searching method.
Change the method name to retrieveCurrency() or something that indicates
searching semantics.
Resolution: closed issue, resolved by Currency 2 RTF
Revised Text: Resolution: Change the operation name from getCurrency to retrieveCurrency.
Revised Text: In section 2.3.10 change all operation name of getCurrency to: retrieveCurrency
Revised Idl: Change Consolidated Idl (Appendix A) under CurrencyBook interface from: Currency getCurrency(in wstring mnemonic) raises (FbcException); to: Currency retrieveCurrency(in wstring mnemonic) raises (FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2402: Correct Currency create method (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Currency create(
in wstring name,
in wstring fractionName,
in wstring mnemonic,
in short numericCode,
in wstring symbol,
in wstring fractionSymbol,
in short ratioOfFractionToWhole,
in wstring description,
in CBO::DTime introductionDate,
in CBO::DTime expirationDate,
in boolean isISO,
in wstring ISOVersion,
in StringCollection locales)
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add new interface to CurrencyBook
Revised Text: In section 2.3.10 Add before CurrencyBook Identification:
Creating Currencies
Currency create(in wstring name,
in wstring fractionName,
in wstring mnemonic,
in short numericCode,
in wstring symbol,
in wstring fractionSymbol,
in short ratioOfFractionToWhole,
in wstring description,
in CBO::DTime introductionDate,
in CBO::DTime expirationDate,
in boolean isISO,
in wstring ISOVersion,
in StringCollection locales) raises (FbcException);
Simply affords the network client a means to create Currency objects by specifying all attributes of the desired Currency object. This operation has the identical preconditions as the Currency init() operation.
Revised Idl: In the consolidated idl add the following operation to the CurrencyBook interface:
Currency create(in wstring name,
in wstring fractionName,
in wstring mnemonic,
in short numericCode,
in wstring symbol,
in wstring fractionSymbol,
in short ratioOfFractionToWhole,
in wstring description,
in CBO::DTime introductionDate,
in CBO::DTime expirationDate,
in boolean isISO,
in wstring ISOVersion,
in StringCollection locales) raises (FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2403: Correct interface symantics for createExchangeRate (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The createExchangeRate() and getExchangeRate() interfaces accept arguments
sourceCurrencyMnemonic and targetCurrencyMnemonic. There is no mention in
the document regarding how the component should react (e.g. throw an
exception) if the passed arguments are the same mnemonic.
Resolution: closed issue, resolved by Currency 2 RTF
Revised Text: Resolution: Change spec. to add documentation as to what the preconditions are for the createExchangeRate operation and getExchangeRate operation
Revised Text: Add to section 2.3.11 at the end of the description of the createExchangeRate operation:
The preconditions for this operation are identical to that of the ExchangeRate value's init() operation.
Add to section 2.3.11 at the end of the description of the getExchangeRate operation:
An exception will be raised if the source currency mnemonic argument is identical to the target currency mnemonic argument
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2404: Change the name of addExchangeRate to insertExchangeRate (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The addExchangeRate() method name could connote mathematical summation.
Change the method name to insertExchangeRate().
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Change addExchangeRate operation name to insertExchangeRate.
Revised Text:
In section 2.3.11 change the operation name addExchangeRate to: insertExchangeRate
In section 2.3.11 in the first word after the replaceExchangeRate operation definition change the word "adding" to inserting.
Revised IDL: In consolidated IDL change addExchangeRate operation name to: insertExchangeRate
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2405: Modify and specify the behavior of the insertExchangeRate interface (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The behavior of the insertExchangeRate() interface should be modified.
Since ExchangeRates will now have a window in time over which they are
effective, the behavior needs to address what happens when an exchange rate
is attempted to be inserted that overlaps (in time) an existing exchange
rate. i.e. Suppose an exchange rate exists in the system for a certain rate
type, source currency mnemonic, target currency mnemonic, and is effective
from 12:00 15 July 1998 until 12:30 15 July 1998. Now suppose we attempt to
insert an exchange rate for the same rate type, source/target currency
mnemonics and is effective from 11:45 15 July 1998 until 12:15 15 July
1998. How does the insertExchangeRate() interface react in this case, or in
any other case where the exchange rate to be inserted has an effective
window in time that in whole or in part overlaps existing exchange rate
data?
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Change text in spec. stating the new behavior of the insertExchangeRate operation to account for date-based exchange rates.
Revised Text:
Add to section 2.3.11 at the end of this paragraph: "Adding an exchange rate will add the exchange rate to the ExchangeRateManager. An exception will be raised if the exchange rate already exists in the manager":
An exception will be thrown if the exchangeRate overlaps in time one or more exchange rates that already exist in the ExchangeRateManager for the given rate type and source and target currency mnemonics. For example: an exchange rate of rateType = "spot", source = "USD", target = "GBP", beginDateTime = 15 July 1997 12:15pm and endDateTime = 15 July 1997 12:45pm currently exists in the manager. Now an exchange rate is inserted of rateType = "spot", source = "USD", target = "GBP", beginDateTime = 15 July 1997 12:30pm and endDateTime = 15 July 1997 1:00pm. The insertExchangeRate will throw an exception as the exchangeRate to be inserted spans an ExchangeRate already in existence within the ExchangeRateManager
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2406: removeExchangeRate() interface issue (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The removeExchangeRate() interface may be too heavy handed. Modify
the semantics of this interface to support making an exchange rate
instance unsuitable for use (e.g. inactive). In this way, the exchange rate
instance would still be known to the component, but could no longer be used
in computations. It could however be extracted for reporting purposes, etc.
Would need interface accommodations though to indicate the extraction of
exchange rates that are “inactive”.
Resolution: Not an issue
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2407: Proposed interface changes to ExchangeRateManager (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Propose the following interface changes:
ExchangeRate createExchangeRate(
in wstring rateTypeId,
in wstring sourceCurrencyMnemonic,
in wstring targetCurrencyMnemonic,
in CBO::Ddecimal conversionFactor,
in CBO::Dtime beginDateTime,
in CBO::Dtime endDateTime)
Resolution: Close, no action
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2408: Clarify MoneyFormatter use of the # symbol (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Clarify how the ‘#’ is used in the money formatter – i.e. if the digit is
zero and doesn’t contribute to the value, 0 will not show.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text to spec. to help clarify.
Revised Text:
Add an additional bullet item to section 2.3.12.1 Default Symbols for
Money Format String, page 2-15
'#' is defined as the placeholder for a digit, which when zero(0) will not appear when information is not added. For example, "GBP 012.34" would appear as "GBP 12.34" where # is specified as the placeholder for the zero(0) digit
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2409: Clarify legal values for the MoneyFormatter format strings (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Clarify legal values for the MoneyFormatter format strings
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text to spec. to make it more clear what are valid format strings.
Revised Text:
Replace section 2.3.12.3 text for methods [gs]etFormattingString to:
There are operations to get and set the formatting string. The formatting string determines the format of the money amount. The format is passed in as "positive string" or "positive string; negative string." The user can define what symbols to use for each piece of the formatting string or use the defaults assigned by the implementor.
The "positive string" represents the format specification to use when the Money being formatted represents a value greater than or equal to zero(0), ';' represents the patterFormatSeparator, and "negative string" represents the format specification to use when the Money being formatted represents a value less than zero(0). If the string is not one of these forms, an FbcException will be raised. If there is no explicit negative subspecification (i.e., the string is presented as "positive string"), it will automatically be interpreted as "positive string;-positive string", where '-' represents the patternNegativePrefix. For example, "M #,###.00" is functionally equivalent to "M #,###.000;-M #,###.000. If there is an explicit negative subspecification, it serves only to specify the location of the patternNegativePrefix. The number of digits, minimal digits, conditional digits, grouping digits, and other characteristics are all the same as specified in the positive subspecification.
The string can contain one and only one patternFormatSeparator, and one and only one patternNegativePrefix (in the negative subspecification only, of course). The subspecifications of the string, positive or negative, may contain the following: zero or more patternCurrencySymbol, zero or more patternFractionSymbol, zero or one patternRadix, zero or more patternGrouping, zero or more patternDigit, zero or more patternconditionalDigit, zero or more patternMnemonicSymbol.
If the string contains multiple grouping patterns, the interval between the last one and the radix pattern is the last one that is used. Thus "#,##,###,####.00" has the same effect as "######,####,00" as does "##,####,####.00".
The caller defines the string in terms of any desired wchars. Thus, if a wchar present in the string is one of the pattern values, it then becomes literal text and always appears in formatted output, e.g., if the string is set to "AbC M##.00" and 100.00 US Dollars were to be formatted, the formatted output from the MoneyFormatter, for the given state identifier would be "AbC USD 100.00".
The string is retained as presented and is not automatically updated to reflect changes in pattern values for the given state identifier, i.e., if the string was successfully set to "M ##.00", with the pattern currency mnemonic being 'M' and is subsequently changed to 'N', the string is retained as "M ##.00". Thus, in subsequent format requests, the M will NOT be interpreted as the currency mnemonic pattern.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2410: Clarify contradiction betw setFormatByLocale & setFormattingString (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: It appears that setFormatByLocale() and setFormattingString() override each
other, but the supporting text for each does not support this conclusion.
If setFormatByLocale() is executed, and then a call to
getFormattingString() is executed, a format specification for the given
locale should be returned correct? If a call to setFormattingString() is
then executed (which would change the format specification for the given
state identifier from the locale based specification previously),
getFormattingString() then returns the format specification just assigned
correct? The supporting text needs to address this behavior.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text to clarify that setting the format by locale will in effect change the formatting string and retrieving the formatting string will return the default locale format.
Revised Text:
Add this final sentence to the first paragraph of section 2.3.12.3 FormatterSpecification Operations after the setFormatByLocal() method.
The default locale format for a given locale can be returned as a wstring by a subsequent call to getFormattingString(in long stateIdentifier).
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2411: Clarify exceptions for setFormattingString in MoneyFormatter (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Need to indicate that an exception will be thrown if setFormattingString()
is called with formattingString being an empty string or one containing
white space only.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add text specififying that an UNINITIALIZED_DATA exception will be thrown
Revised Text:
Add the following text describing more specific behavior to section 2.3.12.3 description of the setFormattingString(wstring) method:
An UNINITIALIZED_DATA exception will be thrown if the formattingString parameter is empty or contains only white space.
Actions taken:
February 2, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2412: Typo on SetPatternMnemonicSymbol name (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Fix typo to setPatternMnemonicSymbol()
Resolution: resolved by Currency 2 RTF
Revised Text: Summary: Fix typo to setPatternMnemonicSymbol()
Resolution: Fix typo
Revised Text:
In section 2.3.12.2, correct misspelling of method name: setPatternMnenonicSymbol(wchar) to:
setPatternMnemonicSymbol
Revised IDL:
In appendix A change the idl operation name for the MoneyFormatter interface from setPatternMnenonicSymbol to: setPatternMnemonicSymbol
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2413: Interface changes for MoneyFormatter pattern handling (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Interface changes for MoneyFormatter pattern handling
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: There is only one pattern setting for digit, when there are two types of digits, one indicating that zeroes will show no matter what and one that indicates zero will not show if it doesn't contribute to value. Add the ability to set pattern for both digits.
Revised Text:
In section 2.3.12.2 add the following idl and text:
wchar getPatternConditionalDigit(
in long stateIdentifier)
raises(FbcException);
void setPatternConditionalDigit(
in long stateIdentifier,
in wchar patternConditionalDigit)
raises (FbcException);
The patternConditionalDigit (default = #) signifies the digit that conditionally shows 0 depending on if it adds value or not.
Revised IDL:
In Appendix A, the consolidated IDL add the following IDL operations to the MoneyFormatter interface after the setPatternDigit operation:
wchar getPatternConditionalDigit(
in long stateIdentifier)
raises(FbcException);
void setPatternConditionalDigit(
in long stateIdentifier,
in wchar patternConditionalDigit)
raises (FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2414: Create mechanism to modify what negative prefix is for formatting string (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: There is no mechanism to modify what the negative prefix is, in a formatted
string. You can modify what the placeholder for the negative prefix is, but
not the actual prefix. This then means that "-" is to be used in every
locale. I would bet that we should support changing that character ... much
like we allow changing the radix character or the grouping character.
Hence, [gs]etNegativePrefixSymbol() above.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add accessor and modifier methods for the negative prefix symbol pattern and for the ability to get and set the prefix symbol itself.
Revised Text:
Add these two methods to 2.3.12.2 for allowing the ability to change the pattern symbol:
wstring getPatternNegativePrefixSymbol(
in long stateIdentifier)
raises (FbcException);
void setPatternNegativePrefixSymbol (
in long stateIdentifier,
in wstring patternNegativeSymbol)
raises (FbcException);
Add the following methods and text to the end of 2.3.12.3 Formatter Specification Operations for setting the negative symbol:
wstring getNegativePrefixSymbol(
in long stateIdentifier)
raises (FbcException);
void setNegativePrefixSymbol(
in long stateIdentifier,
in wstring negativePrefix)
raises (FbcException);
The negative prefix symbol is the actual value which appears in formatted output which indicates that the value of the money amount is less than zero(0). The corresponding pattern will show where the symbol should be placed.
The implementor is responsible for providing and documenting the default negative prefix symbol value in support of the case where a symbol has not been defined (ie, setNegativePrefixSymbol(long, wstring) has not been called).
Revised IDL: Add the following methods to the idl for MoneyFormatter interface in Appendix A
After the setPatternRadix operation:
wstring getPatternNegativePrefixSymbol(
in long stateIdentifier)
raises (FbcException);
void setPatternNegativePrefixSymbol (
in long stateIdentifier,
in wstring patternNegativeSymbol)
raises (FbcException);
After the setGroupingSymbol operation:
wstring getNegativePrefixSymbol(
in long stateIdentifier)
raises (FbcException);
void setNegativePrefixSymbol(
in long stateIdentifier,
in wstring negativePrefix)
raises (FbcException);
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2415: Clarify on comparison methods of the MoneyCalculator (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Clarify on comparison methods of the calculator that no rounding etc. would
take place before the comparison, it would be the raw numbers in each
money instance that is compared.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add clarifying text
Revised Text:
Add the following text to the beginning of section 2.3.13.3 of Relational Operations section:
For the following relational operators, the Money Calculator will not round the money operands. Therefore, if the money operands represent different currencies and conversion type is AUTOMATED_CONVERSION or BASE_CURRENCY_CONVERSION, money operand conversions will be unaffected by the rounding digit and precision settings of the calculator.
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2416: Add interfaces for internal precision on MoneyCalculator (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Propose the following interface change(s):
short getInternalPrecision(in
CosObjectIdentity::IdentifiableObject stateIdentifier)
void setInternalPrecision(in
CosObjectIdentity::IdentifiableObject stateIdentifier,
short precision) – See example of use of this in the
MoneyCalculator Interface section.
Resolution: Already resolved in a previous issue (2271)
Revised Text:
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed, no action taken
Discussion:
Issue 2417: Fix omitted precondition for MoneyCalculator (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: What are the legal short precision values which can be
presented to setInternalPrecision()? Should it be limited to values >= 0?
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add clarifying text
Revised Text:
Add the following text to section 2.3.13.1 the Money Calculator Attributes section at the end of the first paragraph:
An INVALID_PRECISION FbcException will be thrown on attempts to set the money calculator's precision to a value less than zero(0).
Actions taken:
January 11, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2418: Improve DTime exception handling (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The CBOException type currently prohibits the called software from
informing the calling software as to the source of the problem that raises
a CBOException. e.g. If CBO::DTime::setSeconds(63) is called, a
CBOException will be raised, but the caller cannot query the CBOException
caught for its exception type or description as CBOException does not
currently support these constructs. In the case where many arguments are
presented to a method, the caller will not know which specific argument is
causing the problem.
Resolution:
Revised Text: :DTime::setSeconds(63) is called, a
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2419: Corrections to the equals/setEquals interfaces of DTime (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The equals/setEquals() interfaces accept a base class CORBA Object as the
parameter type. The instance passed must be narrow’ed to a DDecimal, DTime,
etc. for the interface to carry on with its task. This is not possible as
the Ddecimal, Dtime, etc. are not IDL Interfaces, they are IDL Value types.
Since an IDL Value type does not derive from Object, the narrow’ing is not
possible. This also affects other portions of the CBO … DCurrency, DMoney,
etc. Also, equals(in Object anObject) causes a problem in a Java
implementation as every Java class inherits from java.lang.Object. The
boolean equals(Object obj) method supported by java.lang.Object cannot be
overriden AND additional throw an FbcException. Thus, equals(), setEquals()
should be changed wherever defined to be equal(), setEqual().
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2420: : Change name of interface to CBO::Decima (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Change name of interface to CBO::Decimal.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2421: Clarify the equality method of DDecimal (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Clarify comparisons of two CBO::Ddecimal values on
equality (i.e. 2.0 equal to 2.000)
– regardless of scale factor.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2422: Add interfaces to DDecimal (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Make the following interface changes:
boolean equal(in DDecimal otherObject);
void setEqual(in DDecimal otherObject);
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2423: : Change name of interface to CBO::Time (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Change name of interface to CBO::Time.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2424: support to set precision to something other than milliseconds (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Cannot set precision to something other than milliseconds, as DAmountOfTime
cannot represent sub-second resolution. Cannot set the millisecond portion
of the point in time as the Factory does not take the number of
milliseconds as an argument, nor does the init() method.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2425: Clarification required on setYear of the DTime interface (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The setYear(in long year) interface is described such that year is
expressed in four digit form. Does this then mean that year must be >= 1000
or that year indicates an absolute year after christ? e.g. 99 means 99 and
not 1999?
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2426: Add interface to DTime (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The Currency submission indicates that a specific Currency instance that
does not have an expiration date will be noted with an expiration date of
99/99/9999. This attribute is handled via a CBO::Dtime instance, but a
CBO::Dtime instance cannot be created or mutated to represent 99/99/9999.
e.g. The CBO::Dtime::setMonth(mon) expects 1 <= 12, etc. Would probably be
easiest to have two operations on CBO::Dtime to handle this. These could
be:
void setUnspecified() – might be handled in an implementation as
99/99/9999.
boolean isUnspecified() – insulates the consumer from knowing how
the notion of “unspecified” is implemented.
Resolution:
Revised Text: :Dtime instance, but a
Actions taken:
February 2, 1999: received issue
Discussion:
Issue 2427: Add interfaces to DTime properly handle the DAmountOfTime difference inter (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: DAmountOfTime difference(in DTime anotherTime) does not support an
implementation properly as the difference between two points in time is a
DamountOfTime instance and DamountOfTime represents an “absolute (positive)
amount of time”. Thus, either DamountOfTime must be able to represent an
amount of time that is less than zero, or the following interfaces must be
available.
· Propose the following additional interfaces:
boolean equal(in CBO::Dtime otherObject);
void setEqual(in CBO::Dtime otherObject);
boolean less(in CBO::Dtime otherObject);
boolean lessEqual(in CBO::Dtime otherObject);
boolean greater(in CBO::Dtime otherObject);
boolean greaterEqual(in CBO::Dtime otherObject);
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2428: Change name of CBO::DAmountOfTime interface to CBO::AmountOfTime (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Change name of CBO::DAmountOfTime interface to
CBO::AmountOfTime
Resolution: :AmountOfTime
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion: received issue
Issue 2429: Support millisecond precision in DAmountOfTime (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: Issue Description: Cannot represent milliseconds or any sub-second
precision
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion: received issue
Issue 2430: Improve text in specification of of DAmountOfTime (currency-rtf)
Click here for this issue's archive.
Nature: Revision
Severity:
Summary: Summary: The toWeeks(), toDays(), and toHours()operations return the amount to the
nearest whole unit. The toMinutes() and toSeconds() operations are not
specified in the same way, and the commentary for these two operations uses
such poor English that the intention is not clear.
Resolution:
Revised Text:
Actions taken:
January 11, 1999: received issue
Discussion:
Issue 2775: Supplied Data for ISO Locales in MoneyFormatter needs to be discussed (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: : Need explanation that the ISO locale and it's associated format data will be provided by the vendor supplying the implementation.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: change text in spec. to indicate that vendor should supply
Revised Text: Add the following section before Section 2.3.6
Bundled Data
It is the responsibility of the implementor to provide certain data for this component. That data which is required: The most current ISO 4217 Locales and ISO 4217 format specifcations per locale.
Actions taken:
June 30, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2776: Remove dependence on a specific version of the ISO 4217 standard (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: All throughout the spec it references ISO 4217:1995, it would be better to reference the latest ISO 4217 standard (i.e. no hard-coded date/year).
Resolution:
Revised Text: Resolution: Change text and IDL, resolution will be to use a long basic type instead.
Revised Text:
Do a change all in spec. of CosObjectIdentity::IdentifiableObject to long to change the type.
In section 2.3.9 change the first sentence from:
The StateIdManager interface uses the CosObjectIdentity::IdentifiableObject interface from the Relationships Service. It identifies the network client to the currency component so that state information can be used.
To:
The StateIdManager interface uses the concept of a stateIdentifier which is a type of long. It identifies the network client to the currency component so that state information can be used. The implementor needs to ensure that when it issues stateIdentifiers that they are unique. Multiple clients could use the same stateIdentifier if it is so desired, but this ability needs to be maintained by the clients of the currency component.
Revised IDL:
Do a change all in Appendix A of CosObjectIdentity::IdentifiableObject to long to change the type.
Actions taken: Closed, incorporate changes
June 30, 1999: received issue
Discussion:
Issue 2777: Remove dependence on a specific version of the ISO 4217 standard (currency-rtf)
Click here for this issue's archive.
Source: Cyborg Systems (Ms. Amy Griffis, amy_griffis@cyborg.com)
Nature: Revision
Severity:
Summary: All throughout the spec it references ISO 4217:1995, it would be better to reference the latest ISO 4217 standard (i.e. no hard-coded date/year).
Resolution: Change text so not dependent on a specific version of the ISO currency standard
Revised Text: Replace all "ISO 4217:1995" with the following througout the text: current ISO 4217
Actions taken:
June 30, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2778: Add ability to clone Money (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: Need the ability to clone Money from existing Money
Resolution:
Revised Text: Resolution: Change text in spec to add new idl operation for cloning Money
Revised Text: At the end of section 2.3.7 add:
Cloning
Money clone() raises(FbcException);
Allows a client the ability to create new Money objects given a Money object. The cloned object can be mutated to represent the desired currency type and value.
Actions taken:
June 30, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2779: Add clarification on formatting string in MoneyFormatter (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: Need clarification on formatting in MoneyFormatter. Can literal text be added to the formatting string, or is it strictly pattern based? If literal text cannot be added, add text to indicate the formatting string must contain only pattern characters.
Resolution: Fixed in issue 2409
Revised Text:
Actions taken:
June 30, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2780: Changing RoundType.DONT_ROUND (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: DO_NOT_ROUND would be more explicit and prohibit confusion as the contraction might cause some confusion.
Resolution:
Revised Text: Resolution: Change the enum name.
Revised Text: In section 2.3.4 for enum RoundingType change: DON'T_ROUND to: DO_NOT_ROUND
Change text in same section.
In first paragraph in section 2.3.13.1 change: DON'T_ROUND to: DO_NOT_ROUND
Revised IDL: In the consolidated IDL for enum RoundingType change DON'T_ROUND to: DO_NOT_ROUND
Actions taken:
June 30, 1999: received issue
May 4, 2000: closed issue
Discussion:
Issue 2781: Place maximums on wstrings for interoperability (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: Should the interfaces that accept a wstring also somehow state the maximum length of that data string? This is necessary for the implementation to know the maximum number of wide characters that may need to be stored in a persistence repository. e.g. Currency.mnemonic is three? This also includes the following : Currency.name, Currency.fractionName, Currency.symbol, Currency.fractionSymbol, Currency.description, Currency.ISOVersion, a locale wstring, ExchangeRate.rateType, CurrencyBook.publishedVersion, MoneyFormatter.formattingString, MoneyFormatter.groupingSymbol, MoneyFormatter.negativePrefixSymbol, MoneyFormatter.radixSymbol.
Resolution:
Revised Text:
Actions taken:
June 30, 1999: received issue
Discussion:
Issue 2782: Remove Dependence in FBCCurrency of CBO::DTime (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: Replace DTime in FBCCurrency with struct
Resolution:
Revised Text:
Actions taken:
June 30, 1999: received issue
Discussion:
Issue 2783: Remove Depedence in FBCCurrency of CBO::DDecimal (currency-rtf)
Click here for this issue's archive.
Nature:
Severity:
Summary: Replace DDecimal with CORBA fixed type.
Resolution:
Revised Text:
Actions taken:
June 30, 1999: received issue
Discussion:
Issue 2886: Value types need state (currency-rtf)
Click here for this issue's archive.
Nature: Uncategorized Issue
Severity:
Summary: Summary: The value types in FbcCurrency (Currency, Money and ExchangeRate) need
state added to them as defined by Objects By Value.
Resolution: resolved by Currency 2 RTF
Revised Text: Resolution: Add state to the 3 value types: Currency, Money and ExchangeRate.
Revised Text: In section 2.3.7 in the idl for Money, add the following state before the operations of the Money value:
//state definition
CBO::DDecimal moneyAmount;
wstring currencyMnemonic;
Revised IDL: In Appendix A for the Currency value add the following before the defined operations:
//state definition
wstring currencyMnemonic;
short currencyNumericCode;
wstring currencyName;
wstring currencyFractionName;
wstring currencySymbol;
wstring currencyFractionSymbol;
short currencyRatio;
CBO::DTime currencyIntroDate;
CBO::DTime currencyExpireDate;
wstring currencyDescription;
In Appendix A for the Money value add the following before the defined operations:
//state definition
CBO::DDecimal moneyAmount;
wstring currencyMnemonic;
In Appendix A for the ExchangeRate value add the following before the defined operations:
//state definition
wstring rateSource;
wstring rateTarget;
CBO::DDecimal rateConversionFactor;
wstring rateType;
CBO::DTime rateBeginDate;
CBO::DTime rateEndDate;
Actions taken:
September 14, 1999: received issue
May 4, 2000: closed issue
Discussion: