ACCEPT

Resource: Property, Field : EstimatedClosePrice

Description

EstimatedClosePrice must be a valid amount.

Error Messages

1) ERROR, the 'Estimated Close Price' field is not valid for the current property type.
2) ERROR, the 'Estimated Close Price' field is invalid for standard status values other than 'pending' or 'active under contract'.
3) ERROR, a residential, non-timeshare property must have a close price between $8,888.00 and $1,000,000,000.00.
4) ERROR, a residential, timeshare property must have a close price between $1.00 and $100,000,000.00.

Fields referenced within this rule

EstimatedClosePrice 

PropertySubType 

PropertyType 

StandardStatus 

Syntax with comments and error messages

//[ErrMsg1^ERROR, the 'Estimated Close Price' field is not valid for the current property type.|LogicBlk1^FALSE|LogicBlk2^FALSE|LogicBlk3^TRUE|LogicBlk4^FALSE]
//[ErrMsg2^ERROR, the 'Estimated Close Price' field is invalid for standard status values other than 'pending' or 'active under contract'.|LogicBlk1^FALSE|LogicBlk2^FALSE|LogicBlk3^TRUE|LogicBlk5^FALSE]
//[ErrMsg3^ERROR, a residential, non-timeshare property must have a close price between $8,888.00 and $1,000,000,000.00.|LogicBlk1^FALSE|LogicBlk2^FALSE|LogicBlk3^TRUE|LogicBlk6^FALSE|LogicBlk7^TRUE]
//[ErrMsg4^ERROR, a residential, timeshare property must have a close price between $1.00 and $100,000,000.00.|LogicBlk1^FALSE|LogicBlk2^FALSE|LogicBlk3^TRUE|LogicBlk8^FALSE|LogicBlk9^TRUE]
// Grandfather clause or…
(/*[LogicBlk1]*/(.ENTRY. = .OLDVALUE.).AND..NOT.(((LASTStandardStatus = .EMPTY.).OR.(LASTStandardStatus = ('I'))).AND.(StandardStatus.IN.('A','P')))).OR.
// Admin. bypass logic block - line below
(/*[LogicBlk2]*/.USERCLASS..IN.('BANGG','BANGP','BANGM','BANGN','BANGQ')).OR.
// If the entry is not empty and has changed...
IIF((/*[LogicBlk3]*/(.ENTRY. != .EMPTY.).AND.(.ENTRY. != .OLDVALUE.)),
// Then check that property type is not an invalid type for this field and…
(/*[LogicBlk4]*/.NOT.PropertyType.IN.('Rlse','Comm','Clse','Busop','Land','Manu')).AND.
// standard status is ‘pending’ or ‘active under contract’ and…
(/*[LogicBlk5]*/StandardStatus.IN.('P','U')).AND.
// entry is between $8,888 and $999,999,999 and is not a timeshare or…
(((/*[LogicBlk6]*/(.ENTRY. > 8888.0).AND.(.ENTRY. < 999999999.0)).AND.(/*[LogicBlk7]*/.NOT.(PropertySubType.IN.('TIME')))).OR.
// entry is between $0 and $99,999,999 and is a timeshare.
((/*[LogicBlk8]*/(.ENTRY. > 0.0).AND.(.ENTRY. < 99999999.0)).AND.(/*[LogicBlk9]*/PropertySubType.IN.('TIME')))),
// Else accept the value.
.ENTRY. = .EMPTY.)
//(PropertyType .IN. ('Rlse','Comm','Clse','Busop','Land','Manu')) .OR. (.USERCLASS. .IN. ('BANGG','BANGP','BANGM','BANGN','BANGQ')) .OR.
//(((.ENTRY. > 8888.0) .AND. (.ENTRY. < 999999999.0)) .AND. (.NOT.(PropertySubType .IN. ('TIME')))) .OR.
//(((.ENTRY. > 0.0) .AND. (.ENTRY. < 99999999.0)) .AND. (PropertySubType .IN. ('TIME'))) .OR.
 /  / (.NOT.(StandardStatus.IN.('P','U'))).OR.((.ENTRY. = .OLDVALUE.).AND..NOT.(((LASTStandardStatus = .EMPTY.).OR.(LASTStandardStatus = ('I'))).AND.(StandardStatus.IN.('A','P'))))

Syntax only

((.ENTRY. = .OLDVALUE.).AND..NOT.(((LASTStandardStatus = .EMPTY.).OR.(LASTStandardStatus = ('I'))).AND.(StandardStatus.IN.('A','P')))).OR.(.USERCLASS..IN.('BANGG','BANGP','BANGM','BANGN','BANGQ')).OR.IIF(((.ENTRY. != .EMPTY.).AND.(.ENTRY. != .OLDVALUE.)),(.NOT.PropertyType.IN.('Rlse','Comm','Clse','Busop','Land','Manu')).AND.(StandardStatus.IN.('P','U')).AND.((((.ENTRY. > 8888.0).AND.(.ENTRY. < 999999999.0)).AND.(.NOT.(PropertySubType.IN.('TIME')))).OR.(((.ENTRY. > 0.0).AND.(.ENTRY. < 99999999.0)).AND.(PropertySubType.IN.('TIME')))),.ENTRY. = .EMPTY.) /  / (.NOT.(StandardStatus.IN.('P','U'))).OR.((.ENTRY. = .OLDVALUE.).AND..NOT.(((LASTStandardStatus = .EMPTY.).OR.(LASTStandardStatus = ('I'))).AND.(StandardStatus.IN.('A','P'))))

Rule Unique ID

379b76e8-6c0d-412c-9f44-b8d814a32d98

Rule Number

76