Here is a simple script:
Let vFiscalStart = 4; //first month of fiscal year
Let vMinDate = Num(MonthStart(Today(), -24)); //or other logic if required
Let vMaxDate = Floor(MonthEnd (Today()));
If(Month < $(vFiscalStart), Year - 1, Year) As FiscalYear,
If(Month < $(vFiscalStart), Month + 13 - $(vFiscalStart), Month + 1 - $(vFiscalStart)) As FiscalPeriod
LOAD Date(nDate) As Date,
Year(nDate) As Year,
Month(nDate) As Month,
Day(nDate) As Day
// other date fields as required...
LOAD $(vMinDate) + RecNo() - 1 As nDate
AUTOGENERATE $(vMaxDate) - $(vMinDate) + 1;
(Edit: changed RowNo() to RecNo())
Thank you Jonathan Dienst and Maximiliano Velez. It so happens that the master calendar has provisions for fiscal year and the std year format, all I had to do was create the values and set it to FIN_month to denote financial month.
I did try using the script given and it made the system slow. I am not sure of the reason behind it.