А почему бы период бюджетирования вообще не вывести в настройку. Это есть практически во всех программах. Вот у вас есть настройка "Первый день недели" и сюда же можно добавить первое число месяца или что-то в этом роде. То есть, допустим, мне нужно чтобы месяц начинался не с первого числа текущего месяца, а с 20 числа предыдущего. Таким образом, выставляя интервал бюджета месяц программа понимает, что меня интересует период не с 1 по 31 апреля, а с 20 марта по 19 апреля. И то же самое касается отчетов, чтобы вся отчетность строилась по тому же принципу. Думаю, идея ясна, что этот параметр в настройках должен влиять на программу в целом. Глобально, если хотите.
И еще вопрос возник такого рода: как скопировать запись с произвольным интервалом в бюджете на следующий интервал? Не задавать же все записи руками повторно? И честно говоря, не понял логики программы, выставляя интервал месяц и при этом выбирая произвольное начало и конец, программа не понимает что мне надо повторять каждый месяц эту запись с заданным параметрами. По-моему, так логичнее бы это было. Разве нет? Вы уж тогда блокируйте возможность вводить начало и конец, когда выбираешь конкретные интервалы (День, Неделя, Месяц и т. д. ), а то белиберда какая-то получается.