On concurrent program registration go to parameters form. Use the High and Low feature to restrict the date validation.
Since you always want value date to be exactly 3 days from the payment date, you can do any one of the following,
1. remove the value date parameter and handle it in your procedure based on the payment date parameter.
2.If it is really needed to show the parameter, then make the value date parameter as a dependent parameter, populate its value by default based on the payment date parameter.
the user can enter any value date less than 3 days but not beyond 3 days from payment date and hence it is marked as program parameter
i need to have a maximum limit for the high one
I assume you've defined 2 value sets of format type "Standard Date" already, let's say XX_STD_DATE_VS and XX_VAL_DATE_VS.
- Validation type should be 'None'
The control and login you need should be implemented in the 2nd VS:
- Validation type: Table
- Table Name: (SELECT (TRUNC(SYSDATE) - 1000 + LEVEL) date_range FROM DUAL CONNECT BY LEVEL <= 1500)
- Where/Order By: date_range between fnd_date.canonical_to_date(:$FLEX$.XX_STD_DATE_VS) and fnd_date.canonical_to_date(:$FLEX$.XX_STD_DATE_VS)+3
Note: I've used 1000 to cater for 1000 days prior to current date if you want to run report for Payment dates in the past - you can fine-tune...
Last step: associate these VS with your Conc. Req. parameters.
You may also add a default value for Value Date parameter using:
- Default Value: SELECT fnd_date.canonical_to_date(:$FLEX$.XX_STD_DATE_VS)+3 from dual
P.S: If this post resolves or helps to resolve you issue, please mark it Helpful/Correct. Thanks.
This depends on what you put in your Table Name: I had suggested (SELECT (TRUNC(SYSDATE) - 1000 + LEVEL) date_range FROM DUAL CONNECT BY LEVEL <= 1500).
This caters for dates between (SYSDATE-1000) and (SYSDATE+500).
What have you used in your definition of "Table Name" ?
Any update on this issue ?