I would not create line items with different dimensions to the parent module. Instead create a dedicated module to hold the data at the required time dimension and refer to that module when pulling the data into you target module.
You may wish to reference this data in other modules. If you house it in the separate module you will be able to reference it more efficiently over multiple target modules.
First, not sure why you have so many Text line items, Text is not good for performance reasons. Second, as @ChrisAHeathcote stated, you don't want to do your logic in the transactional module,but in a SYS Module like the below which is dimensionalized by Quarters.
Create 3 line items:
Year: item(Time) - Formatted to Time Period Year
Last Quarter: PERIOD(END(Year)). - Formatted to Quarter
Half Year: PARENT(Last Quarter). - Formatted to Half Year
Once correction.. What I meant by Last Quarter is the Quarter that preceded the current one. eg. Current Quarter is Q3FY20 and I want to fetch Q2FY20 through a formula.. Sorry for the confusion. Is there any formula to capture the previous time periods?