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