Job Cost reports that show overage on Budget line items as opposed to only cost codes

Hi there, looking for solutions on how to get the following reports to run in the jobs. What is required on entry? 

I would like to have something in the following format, i have put in an example below

Cost code XXXXX

Budget line item base.         Upgrades/additional etc.         Extended.         Cost to Date.         Variance

$1000.                                 $150                                         $1150.              $1125                    ($25) 

If i could something like the above I would be able to view job cost reports and create better budgets moving forward by tracking variances per line item as opposed to variances per cost code which requires a deep dive into each P.O. or subcontract to find the details and is obviously considerably more work.