This post is intended to share my understanding of how the ESD (Earliest Start Date) and RSD (Requested Start Date) values are calculated in 8.x and how the "scheduled start date" is validated against the ESD and RSD values.
* In past, there are some issues around the calculation of ESD and RSD values and are streamlined in 8.x release. Below are some points to note around the calculation of ESD in 8.x:
1. When a CR is saved / submitted in/as Draft, the ESD is not calculated.
2. The ESD is calculated when a CR goes beyond Draft (either by doing a next stage from Draft or by submitting a CR directly beyond Draft). Also note the below:
2.1. If a CR is created directly beyond PIP or is moved beyond PIP via workflow or approval phase, ESD will not be calculated. This is because ESD is usually a tool to help in deciding scheduled dates. And if a CR is already being created beyond PIP or is moved beyond PIP directly, that means the scheduled dates are already finalized and set.
3. The ESD is calculated or recalculated in below two scenarios:
3.1. If a CR is created or modified to a status of RFA or RFC or PIP. e.g. For a normal CR, create a CR in Draft or do a next stage.
3.2. If a CR is moved back to Draft and do next stage, OR Cancel a CR and re-initiate it and do a next stage, OR move a CR BACK to RFC (using BACK option).
* Once the ESD is set,
- Till release 8.0, the RSD field value is set to the ESD value during some initial CR status transitions (e.g. When the CR is moved to RFC status).
- In release 8.1 and higher versions, the RSD field no more set to the ESD value automatically. This means the RSD value needs to be entered by the user when needed.
* And once the ESD and RSD values are set, the logic of validating scheduled start date against the ESD or RSD comes into place. The validation does not really depend on the CR status value. Rather it is done only when the ESD or RSD is set (not NULL). Below points are to be noted for the scheduled date validation error 1441138:
1. If a CR status transition is done by Approval Server (i.e. as a result of Approve or Reject operation), the validation logic is skipped. i.e. No error will be thrown. This is because, if a CR goes into approval, the scheduled dates are anyway locked due to approval phase and there is no way to correct the dates when the CR is pending approval. So in such case, if at all the scheduled start date is lesser than the ESD or RSD, the error will be enforced after approval when a next stage is done.
2. If a CR status transition is done using next-stage, the error will be enforced.
3. Also note that, if there is a case, where say the Review phase (begin status RFA) sets a CR to approved status beyond PIP (e.g. Scheduled). In such case, when a CR is moved to next stage from Draft, the CR will go to RFA status and the Review phase will be initiated and upon approval the CR will go to Scheduled status and the scheduled fields will be locked as well. However, there will be no error; because the ESD will be NULL is this case (as per point 2.1 above).
* Whether the message (1441138) will be shown as an ERROR or a WARNING, depends on the change-rule configuration "Action on scheduled date change". If this configuration is set to "No Action", no message will be shown in this regard.
I hope the above information answers any queries in this area. Let me know if this is useful and/or any queries in this area.
NOTE: The above information is purely based on my knowledge of the product. Any correction to this will be a learning for me too.
Visit https://communities.bmc.com/blogs/sarojsahu for my other blogs. If you find these useful, share the link with others.