Great! A good idea is to optimize the query! Maybe a couple of features?
1) When using "Validity Date Filter" the items of price list is not unique.
Need to change the condition an the query:
... and (SAL02_ITEM_PRICES.END_DATE>=? or SAL02_ITEM_PRICES.END_DATE is null) ...
to
... and (SAL02_ITEM_PRICES.END_DATE>? or SAL02_ITEM_PRICES.END_DATE is null) ...
2) Some more suggestions:
When press the button "Copy record" in the price list a good solution would be to copy the values of selected row completely, but start_date set to now and end_date set to null and focus set to price of the new row.
Add the button "Reset" on the "Validity Date Filter".
Set def value = now when activate element "calendar".
Use not only the date, but the time in the fields of start_date and end_date with this logic: when set new value and if the date = now use the time = now, else if the date <> now is the time = 0.
Adding "Validate Date Filter" and button "Copy record" on "Currency conversions".
Unfortunately, I yet ready to propose a code block.