ACCEPT

Resource: Property, Field : CloseDate

Description

CloseDate must be after purchase contract date but not a future date.

Error Messages

1) ERROR, the 'close date' cannot be prior to the listing contract date.
2) ERROR, the 'close date' cannot be prior to the purchase contract date.
3) ERROR, the 'close date' cannot be in the future.
4) ERROR, the 'close date' field is invalid for the current standard status.
5) ERROR, the 'close date' field cannot be properly evaluated if the 'Listing Contract Date' is empty.
6) ERROR, the 'close date' field cannot be properly evaluated if the 'Purchase Contract Date' is empty.

Fields referenced within this rule

CloseDate 

ListingContractDate 

PurchaseContractDate 

StandardStatus 

Syntax with comments and error messages

//[ErrMsg1^ERROR, the 'close date' cannot be prior to the listing contract date.|LogicBlk1^TRUE|LogicBlk2^FALSE|LogicBlk6^TRUE]
//[ErrMsg2^ERROR, the 'close date' cannot be prior to the purchase contract date.|LogicBlk1^TRUE|LogicBlk3^FALSE|LogicBlk7^TRUE]
//[ErrMsg3^ERROR, the 'close date' cannot be in the future.|LogicBlk1^TRUE|LogicBlk4^FALSE]
//[ErrMsg4^ERROR, the 'close date' field is invalid for the current standard status.|LogicBlk1^TRUE|LogicBlk5^FALSE]
//[ErrMsg5^ERROR, the 'close date' field cannot be properly evaluated if the 'Listing Contract Date' is empty.|LogicBlk1^TRUE|LogicBlk6^FALSE]
//[ErrMsg6^ERROR, the 'close date' field cannot be properly evaluated if the 'Purchase Contract Date' is empty.|LogicBlk1^TRUE|LogicBlk7^FALSE]
// If the entry is not empty and has changed date...
IIF((/*[LogicBlk1]*/(.ENTRY. != .EMPTY.).AND.(DATEONLY(.ENTRY.) != DATEONLY(.OLDVALUE.))),
// Then the entry must be on or before the listing contract date and the purchase contract date and not in the future and...
(/*[LogicBlk2]*/.ENTRY. >= ListingContractDate).AND.(/*[LogicBlk3]*/.ENTRY. >= PurchaseContractDate).AND.(/*[LogicBlk4]*/.ENTRY. <= DATEONLY(.TODAY.)).AND.
// the standard status must be 'sold' and...
(/*[LogicBlk5]*/StandardStatus.IN.('S')).AND.
// the listing contract date the the purchase contract date must not be empty.
(/*[LogicBlk6]*/ListingContractDate != .EMPTY.).AND.(/*[LogicBlk7]*/PurchaseContractDate != .EMPTY.),
// Else accept the value.
.TRUE.)

Syntax only

IIF(((.ENTRY. != .EMPTY.).AND.(DATEONLY(.ENTRY.) != DATEONLY(.OLDVALUE.))),(.ENTRY. >= ListingContractDate).AND.(.ENTRY. >= PurchaseContractDate).AND.(.ENTRY. <= DATEONLY(.TODAY.)).AND.(StandardStatus.IN.('S')).AND.(ListingContractDate != .EMPTY.).AND.(PurchaseContractDate != .EMPTY.),.TRUE.)

Rule Unique ID

6d5c1a58-16e0-4b1e-9967-8b79d70a4534

Rule Number

39