Knowledge Base

PRB: Unexpected Behavior in Money Validation Structure

PSS ID Number: 160742

Article Last Modified on 3/10/2000


The information in this article applies to:


This article was previously published under Q160742

SYMPTOMS

When you use a validation structure to test the minimum or maximum values of currency, the structure takes an integer and always assumes the basic monetary unit to be cents.

CAUSE

Merchant Server stores currency amounts in the smallest meaningful denomination (pennies in the case of dollar/penny currencies).

As an example, consider the following validation structure:
   {'test_money': {'type': 'money', 'min': '$10', 'label': 'Money
   testing($min)'}}
				
If the value of test_money is then given as -200, the following error message is generated:
The value for Money testing($min) must be greater than or equal to $0.10.

WORKAROUND

The expected result is achieved using the following structure:
   {'test_money': {'type': 'money', 'min': '$10.00', 'label': 'Money
   testing($min.cents)'}}
				
If the value of test_money is then given as -200, the following error message is generated:
The value for Money testing($min.cents) must be greater than or equal to $10.00.

STATUS

Microsoft has confirmed this to be a problem in Microsoft Merchant Server version 1.0. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional query words: actions registry

Keywords: kbprb KB160742
Technology: kbAudDeveloper kbMerchServ100 kbMerchServSearch