derive_maturity_date
1. Description
Derive Maturity date calculation type is used to get the maturuity dates stamped based on the input key.
2. Screen Configuration
Examples for this calculation type are given below
3. Sample examples for the logic
If Master field contains | Date to be considered | Remarks |
---|---|---|
1 | 1st date of the month (e.g., 01-09-2022, 01-10-2022) | If As On Date < 1st of current month → use 1st of current month; else → 1st of next month. Example: As On = 31-08-2022 → Result = 01-09-2022. |
2 | 2nd date of the month (e.g., 02-09-2022, 02-10-2022) | If As On Date < 2nd of current month → use 2nd of current month; else → 2nd of next month. Example: As On = 31-08-2022 → Result = 02-09-2022. |
15 | 15th date of the month (e.g., 15-09-2022, 15-10-2022) | If As On Date < 15th of current month → use 15th of current month; else → 15th of next month. Example: As On = 14-08-2022 → Result = 15-08-2022. |
30 | 30th date of the month (e.g., 30-09-2022, 30-10-2022) | If As On Date < 30th of current month → use 30th of current month; else → 30th of next month. February requires last day logic. Example: As On = 20-08-2022 → Result = 30-08-2022. |
31 | 31st date of the month (e.g., 31-08-2022, 30-09-2022) | If As On Date < 31st of current month → use 31st of current month; else → 31st of next month. For months with <31 days, use last day. February requires last day logic. Example: As On = 20-02-2022 → Result = 28-02-2022. |
1 to 31 (any number) | Corresponding day of the month (e.g., 8th → 08-01-2022 or 08-02-2022) | Compare As On Date with given day in current month. If As On < given day → use current month’s date; else → use next month. Example: M4 = 8, As On = 05-01-2022 → Result = 08-01-2022. |
Quarterly | 31-03, 30-06, 30-09, 31-12 | Select last day of the quarter based on As On Date. Example: As On = 25-02-2022 → Result = 31-03-2022. |
Advance tax Quarterly | 15-03, 15-06, 15-09, 15-12 | Select mid of quarter based on As On Date. Example: As On = 01-06-2022 → Result = 15-06-2022. |
Half Yearly | 30-06, 31-12 | If As On Date is in 1st half (Jan–Jun) → 30-06; else → 31-12. |
TDS | 31-03, 30-09 | If As On Date is from Apr–Sep → 30-09; if from Oct–Mar → 31-03. Example: As On = 31-12-2022 → Result = 31-03-2023. |
Year end | 31-12 | Always returns 31st December of current year. Example: As On = 05-01-2022 → Result = 31-12-2022. |
Financial Year end | 31-03 | If As On Date ≤ 31-03 → use 31-03 of current year; else → 31-03 of next year. |
March | 31-03 | Same logic as Financial Year end. |
Month names (e.g., April) | Month-end date (e.g., 30-04, 31-05) | If As On Date < month-end of specified month → use current year; else → use next year. Example: M4 = April, As On = 05-01-2022 → Result = 30-04-2022. |
Specific date (e.g., 10-10) | That exact date (e.g., 10-10-2022) | If As On Date ≤ given date → return it; else → add 1 year. Example: M4 = 10-10, As On = 11-10-2022 → Result = 10-10-2023. |
Yearly | As On Date + 1 year | Always adds one year to As On Date. Example: As On = 11-09-2021 → Result = 11-09-2022. |
Specific Date (e.g., 26-03-2026) | Same date as given | Returns the specific hardcoded date regardless of As On Date. |
distribution-pattern (e.g., 1–30 days) | As On Date | No transformation – just return As On Date. |
Blank (no value) | As On Date | If M4 is blank or missing → return As On Date. |