Skip to end of banner
Go to start of banner

Part 5 - Creating the project status and budget page

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

The project status and budget page displays all the subprojects listed in a space and provides milestones and budget details at a glance.

Furthermore, charts can be generated using the data from the Reporting table to keep track of current cash flow. 

Suppliers used

Pro Tip

When to use the Collection Supplier

Use the object supplier if you are unsure of the object type. Pair any key with an object:class keychain and it will return the type of object, for example:

data:Project Members > object:class returns

class java.util.ArrayList

which means the Project Members Scaffolding data is stored as an Array List.

This keychain is useful for debugging purposes.

Content and Structure

  1. First, create a report-table macro. This will be the main structure of our report, which is a table. 

  2. Next, define what to report using a content-reporter block. Nest this block inside the report-table block.

  3. Edit the content-reporter block, and set Types to +pages, -attachment, Labels to subproject and Scope to Cafe Rockettoria Projects > children.

  4. This means Reporting will only fetch pages labeled as subproject and is a children of Cafe Rockettoria Projects. Note that -attachment means attachments are excluded.

  5. In the content-reporter block, insert a text-sort block. 

  6. Edit the text-sort block and type content:title  for Key.

  7. Next, choose 'ascending' for Order.

  8. This will sort the pages in ascending order based on the page title.

Now we are ready to setup the report columns.

Project Name

  1. Still within the report-table block, insert a report-column macro underneath the content-reporter block.
     
  2. Name this column Project Name. Insert a report-info block inside this report-column.

  3. Edit the report-info block, name the Key content:title and check Link To Item.

Reporting will fetch the pages title.

Project Status

  1. Insert a report-column macro, name this column Project Status.

  2. Insert a report-info block inside this report-column.

  3. Edit the report-info block, name the Key data:Project Status.

Reporting will fetch the subproject status using the Scaffolding data block we created in the live template.

Days left: If-Else statements and parameter injection

Create a simple if-else statement that will display the days left for ongoing projects or display a completed message if the project is over.

With report-eval, we can do calculations on predefined variables, suppliers or Scaffolding data blocks.

For the full list of calculations, visit our technical documentation.

In the report-eval block, we will perform the calculation of Days Left using parameter injection. Set the parameters for report-eval as such:

Make sure to check the Hidden option as we would like to use the result of this calculation as a variable


Now for the report-eval calculation formula, type in:

(% data:Project End Date > date:milliseconds % - % global:current date > date:milliseconds %)/1000/60/60/24


What does this mean?

Notice that the first part, %data:Project End Date calls a Scaffolding Data block that contains the end date of the project. Next, a keychain is used to convert this date object to milliseconds.

The second part, %global:current date calls the current date via the Global supplier. Then, a keychain is also used to convert the date object into milliseconds. 

Together, the above formula means: Convert both end date and current date into milliseconds, get the difference (in milliseconds) and convert back to days with division. 


Done! We now have a variable that holds the difference of end date and current date in days.

The report-eval variable can then be accessed via the Variable supplier, and the key being the name of the report-eval block (variable:Days Left).


Now create a report-block macro for the if-else statement.

In the report-block macro, insert a local-reporter block and set the keychain to @self.

Next, create a number-filter macro and set the keychain to variable:Days Left.  Then, set Above Value to 0.

This will create the 'if' statement if Days Left is above 0.

Next, insert a report-body block and set injected to true.

Inside the report-body block, type:

% variable:Days Left > number:# % day(s)

The parameter injection above is paired with a keychain that formats the Number as #. That way, Days Left is formatted to display as a whole number.

Now create the 'else' statement by inserting another number-filter macro.

Set the keychain to variable:Days Left. Then, set Below Value to 0.

This will create the 'else' statement else if Days Left is below 0.

Next, insert a report-body block and type: This project has ended.

You should now have a report-block that looks like this:

Haven't I done this in the subproject template?

report-eval creates a temporary variable in the given page. Therefore, the variabe is only accessible from that page and cannot be fetched and displayed in other pages. Using the flexibility of report-eval's calculation abilities, we created a temporary variable in the subproject page, and now we need to create another temporary variabe in the current report to get Days Left, using the same formula and report structure.

Number of Milestones 

Insert a report-column under the previous Days Left column.

Name this column Number of milestones. Insert a report-info block inside this report-column.

Edit the report-info block, name the Key data:Project Milestones > collection:size.

Reporting will fetch the number of milestones based on the number of rows in the Milestones table, hence why the collection:size key is used.

Budget Total

This column will return the sum of all milestone budgets from a particular subproject. The sum of all subproject's budget can also be calculated using report-column.

Insert a report-column, name this column Budget total

Edit the report-column, and set Summary Type to sum, Summary Value to data:Budget Total and Summary Format to $#,##0.00, like below:

Insert a report-info block inside the report-column.

Name the Key data:Budget Total and set the Format to $##,##0.00

Expenditure Total

This column will return the sum of all milestone expenditures from a particular subproject. The sum of all subproject's expenditures can also be calculated using report-column.

Insert a report-column, name this column Expenditure total

Edit the report-column, and set Summary Type to sum, Summary Value to data:Expenditure Total and Summary Format to $#,##0.00.

Insert a report-info block inside the report-column.

Name the Key data:Expenditure Total and set the Format to $##,##0.00

Budget Deficit

This column will return the sum of all budget deficits from a particular subproject. It is calculated using the difference of actual expenditure and allocated budget for each subproject. 

Insert a report-column, name this column Budget deficit

Edit the report-column, and set Summary Type to sum, Summary Value to variable:Budget Deficit and Summary Format to $#,##0.00.

Note that the variable supplier is used here because we are making a temporary variable in this report with the following calculation:

Insert a report-eval inside the report-column and name it Budget Deficit.

In the report-eval, type %data:Budget Total% - %data:Expenditure Total%.

The formula above will calculate the difference of actual expenditure and allocated budget for each subproject. 

Budget Deficit %

This column will return the budget deficit in percentage. It is calculated using the Budget Deficit variable created in the previous section and dividing that amount by Budget Total.

Insert a report-column, name this column Budget deficit percentage.

Insert a report-eval block inside report-column, name the report-eval block Percentage Deficit.

Edit the report-eval block, set Default Value to 0 and Format to #%.

In the report-eval, type %variable:Budget Deficit% / %data:Budget Total%.


Project Status & Budget table Source
<ac:structured-macro ac:macro-id="38aec1b2-1f0e-4759-8be8-e20dbcf76023" ac:name="report-table" ac:schema-version="1">
  <ac:rich-text-body>
    <ac:structured-macro ac:macro-id="38314951-78e6-4773-b549-e46d953e2e5e" ac:name="content-reporter" ac:schema-version="1">
      <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
      <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
      <ac:parameter ac:name="labels">subproject</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="d1e9c74e-605d-4a53-93f3-38d195a200b2" ac:name="text-sort" ac:schema-version="1">
            <ac:parameter ac:name="">content:title</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="aea2847c-88ea-4257-a597-ad46237c0264" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Project Name</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="59a534ec-dac2-4750-a69c-747c111a21ae" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="link">true</ac:parameter>
            <ac:parameter ac:name="">content:title</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="92c73454-6ef4-432a-b915-c55216fd744b" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Project Status</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="304641a2-8b08-4275-80a7-af69a6797359" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="">data:Project Status</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="acfe8cfe-a648-410c-bba0-66d9ce8fde86" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Days Left</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="5d66226b-1f24-4836-9858-fe0eb8fb71dc" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="default">0</ac:parameter>
            <ac:parameter ac:name="hidden">true</ac:parameter>
            <ac:parameter ac:name="format">#</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Days Left</ac:parameter>
            <ac:plain-text-body><![CDATA[(%data:Project End Date > date:milliseconds% - %global:current date > date:milliseconds%)/1000/60/60/24]]></ac:plain-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="cb311386-9493-44a6-af29-ab7c190ed0c1" ac:name="report-block" ac:schema-version="1">
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:rich-text-body>
              <ac:structured-macro ac:macro-id="4e7c657c-0c99-4c95-b343-8f3f58fe4c05" ac:name="local-reporter" ac:schema-version="1">
                <ac:parameter ac:name="">@self</ac:parameter>
                <ac:rich-text-body>
                  <p> </p>
                </ac:rich-text-body>
              </ac:structured-macro>
              <p>
                <ac:structured-macro ac:macro-id="8381c68f-f058-47c6-839f-2a0f47f460cb" ac:name="number-filter" ac:schema-version="1">
                  <ac:parameter ac:name="aboveValue">0</ac:parameter>
                  <ac:parameter ac:name="">variable:Days Left</ac:parameter>
                </ac:structured-macro>
              </p>
              <ac:structured-macro ac:macro-id="af877eef-0630-442c-adf7-dc516a17a520" ac:name="report-body" ac:schema-version="1">
                <ac:parameter ac:name="injected">true</ac:parameter>
                <ac:rich-text-body>
                  <p>%variable:Days Left &gt; number:#% day(s)</p>
                </ac:rich-text-body>
              </ac:structured-macro>
              <p>
                <ac:structured-macro ac:macro-id="20f5798d-143e-41d8-9569-dd0564fd327c" ac:name="number-filter" ac:schema-version="1">
                  <ac:parameter ac:name="belowValue">0</ac:parameter>
                  <ac:parameter ac:name="">variable:Days Left</ac:parameter>
                </ac:structured-macro>
              </p>
              <ac:structured-macro ac:macro-id="90136fad-3ffa-45ae-bfa9-17fd2df2f8ea" ac:name="report-body" ac:schema-version="1">
                <ac:rich-text-body>
                  <p>This project has ended</p>
                </ac:rich-text-body>
              </ac:structured-macro>
            </ac:rich-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="eebaac3b-8536-4d30-a992-dbf180241743" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">No. of milestones</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="92368731-3d0c-4ddb-9d73-16d10779a968" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="">data:Project Milestones &gt; collection:size</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="ec1ac3e7-6f19-4954-8470-59f9b4b7c090" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$#,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">data:Budget Total</ac:parameter>
      <ac:parameter ac:name="title">Budget Total</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="75d93000-4110-47c5-8f92-f80f5f388038" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="">data:Budget Total</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="480602e1-27e7-4f72-b029-5e1c8563ff95" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$#,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">data:Expenditure Total</ac:parameter>
      <ac:parameter ac:name="title">Expenditure total</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="ac5e3f34-6661-46b0-917e-5f989fc91b52" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="">data:Expenditure Total</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="bea3b9c2-a11d-4d7a-9dd0-0e6f0d2bd294" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$##,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">variable:Budget Deficit</ac:parameter>
      <ac:parameter ac:name="title">Budget Deficit</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="a5fef81f-7ccd-474f-abe5-d6e228a0a49d" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Budget Deficit</ac:parameter>
            <ac:plain-text-body><![CDATA[%data:Budget Total% - %data:Expenditure Total%]]></ac:plain-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="36174fbf-2441-4bf8-b1eb-70f9a3ae138f" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Budget Deficit %</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="18b2002e-3d2f-47ee-b629-2f642c9af30e" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="default">0</ac:parameter>
            <ac:parameter ac:name="format">#%</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Percentage Deficit</ac:parameter>
            <ac:plain-text-body><![CDATA[%variable:Budget Deficit% / %data:Budget Total%]]></ac:plain-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>

Chart: Subproject Budget Deficit

Using the same Reporting elements, we can construct charts with simplified Reporting tables such as this one. 

This table is built using the columns Project Name and Budget Deficit %.

Insert a Chart macro and make the following settings:

Type: Bar

Display orientation: Vertical

Chart title: Subproject Budget Deficit

(Check) Show Legend

Columns: Project Name, Budget Deficit %

Content Orientation:  Horizontal

Range Minimum Value: -100

Range Maximum Vale: 100

For the macro structure, see Chart Macro Structure.


Subproject Budget Deficit chart Source
<div class="tablesorter-header-inner">
  <ac:structured-macro ac:macro-id="62e45cfa-e49d-47a1-b620-1e3ccf6e60d5" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Budget Deficit %</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="rangeAxisLowerBound">-100</ac:parameter>
    <ac:parameter ac:name="dataOrientation">horizontal</ac:parameter>
    <ac:parameter ac:name="title">Subproject Budget Deficit</ac:parameter>
    <ac:parameter ac:name="type">bar</ac:parameter>
    <ac:parameter ac:name="rangeAxisUpperBound">100</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="acf935c7-2b99-4f5e-a3f3-f09f2ead1685" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="09e59f25-8132-4bb6-ad37-dbc82230bc31" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="8259caed-26ab-43ec-8f8f-9525ce1c8bc9" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="1e79e38f-ad94-4140-868b-9d786e88f314" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="5491e9fb-fbdb-42aa-b41f-8d3eabd66096" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="16fcd047-c174-494d-934d-81f978b5f6df" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="injected">true</ac:parameter>
            <ac:parameter ac:name="title">Budget Deficit %</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="53885bcc-a1c8-4b4c-b3b9-a365c4500983" ac:name="report-eval" ac:schema-version="1">
                  <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
                  <ac:parameter ac:name="">Percentage Deficit</ac:parameter>
                  <ac:plain-text-body><![CDATA[(%data:Budget Total% - %data:Expenditure Total%) / %data:Budget Total% * 100]]></ac:plain-text-body>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
</div> 



Chart: Subproject Budget Allocation

This table is built using the columns Project Name and Budget Total.

Insert a Chart macro and make the following settings:

Type: Pie

Display orientation: Vertical

Chart title: Subproject Budget Allocation

(Check) Show Legend

Columns: Project Name, Budget Total

Content Orientation:  Vertical

For the macro structure, see Chart Macro Structure.


Subproject Budget Allocation chart Source
<div class="tablesorter-header-inner">
  <ac:structured-macro ac:macro-id="371ec71d-180e-4ab3-a627-92f69dba6d6a" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Budget Total</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="dataOrientation">vertical</ac:parameter>
    <ac:parameter ac:name="title">Subproject Budget Allocation</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="b307d24c-b13f-49fa-b883-bac6c9e10c45" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="9fcb1f89-0509-467a-89b9-09aa0c81e5f7" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="41f99c63-eb30-484c-90a3-5c1914880643" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="e5bde7db-710c-49a8-bf39-31ffe486055a" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="d70b6f4a-744f-4466-83e9-92b616d3aa76" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="7fdb40ab-db1f-4f0b-9b8f-7aa49619f998" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Budget Total</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="f570aa19-20fb-48e9-b44e-2005331c2df7" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
                  <ac:parameter ac:name="">data:Budget Total</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
</div>

Chart: Subproject Budget Allocation

This table is built using the columns Project Name and Expenditure Total.

Insert a Chart macro and make the following settings:

Type: Pie

Display orientation: Vertical

Chart title: Subproject Expenditure

(Check) Show Legend

Columns: Project Name, Expenditure Total

Content Orientation:  Vertical

For the macro structure, see Chart Macro Structure.


Subproject Expenditure chart Source
<div class="tablesorter-header-inner">
  <ac:structured-macro ac:macro-id="c2e4b3a1-ce10-4157-a0a9-fb12a2bf2bf1" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Expenditure Total</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="dataOrientation">vertical</ac:parameter>
    <ac:parameter ac:name="title">Subproject Expenditure</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="ef4e9f8c-2c17-4c0b-9824-51512d807e69" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="bb8a0082-8630-4702-aba6-8b0dcc088f9d" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="741e05ef-7c7f-40fe-ba52-57a65f18cb81" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="dedefbe7-ef65-4fa7-b03c-dfbada2345eb" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="bb760de7-5068-4ebe-91a6-bd869d378da7" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="156a9cf0-ab28-4938-8205-c173956caf05" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Expenditure Total</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="9abc2db9-b01c-42f7-8a6f-e0569f7a8d6c" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
                  <ac:parameter ac:name="">data:Expenditure Total</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
</div>


Macro structure

Chart Macro Structure

Full source

Project Status & Budget Source
<ac:structured-macro ac:macro-id="38aec1b2-1f0e-4759-8be8-e20dbcf76023" ac:name="report-table" ac:schema-version="1">
  <ac:rich-text-body>
    <ac:structured-macro ac:macro-id="38314951-78e6-4773-b549-e46d953e2e5e" ac:name="content-reporter" ac:schema-version="1">
      <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
      <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
      <ac:parameter ac:name="labels">subproject</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="d1e9c74e-605d-4a53-93f3-38d195a200b2" ac:name="text-sort" ac:schema-version="1">
            <ac:parameter ac:name="">content:title</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="aea2847c-88ea-4257-a597-ad46237c0264" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Project Name</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="59a534ec-dac2-4750-a69c-747c111a21ae" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="link">true</ac:parameter>
            <ac:parameter ac:name="">content:title</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="92c73454-6ef4-432a-b915-c55216fd744b" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Project Status</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="304641a2-8b08-4275-80a7-af69a6797359" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="">data:Project Status</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="acfe8cfe-a648-410c-bba0-66d9ce8fde86" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">Days Left</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="5d66226b-1f24-4836-9858-fe0eb8fb71dc" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="default">0</ac:parameter>
            <ac:parameter ac:name="hidden">true</ac:parameter>
            <ac:parameter ac:name="format">#</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Days Left</ac:parameter>
            <ac:plain-text-body><![CDATA[(%data:Project End Date > date:milliseconds% - %global:current date > date:milliseconds%)/1000/60/60/24]]></ac:plain-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="cb311386-9493-44a6-af29-ab7c190ed0c1" ac:name="report-block" ac:schema-version="1">
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:rich-text-body>
              <ac:structured-macro ac:macro-id="4e7c657c-0c99-4c95-b343-8f3f58fe4c05" ac:name="local-reporter" ac:schema-version="1">
                <ac:parameter ac:name="">@self</ac:parameter>
                <ac:rich-text-body>
                  <p> </p>
                </ac:rich-text-body>
              </ac:structured-macro>
              <p>
                <ac:structured-macro ac:macro-id="8381c68f-f058-47c6-839f-2a0f47f460cb" ac:name="number-filter" ac:schema-version="1">
                  <ac:parameter ac:name="aboveValue">0</ac:parameter>
                  <ac:parameter ac:name="">variable:Days Left</ac:parameter>
                </ac:structured-macro>
              </p>
              <ac:structured-macro ac:macro-id="af877eef-0630-442c-adf7-dc516a17a520" ac:name="report-body" ac:schema-version="1">
                <ac:parameter ac:name="injected">true</ac:parameter>
                <ac:rich-text-body>
                  <p>%variable:Days Left &gt; number:#% day(s)</p>
                </ac:rich-text-body>
              </ac:structured-macro>
              <p>
                <ac:structured-macro ac:macro-id="20f5798d-143e-41d8-9569-dd0564fd327c" ac:name="number-filter" ac:schema-version="1">
                  <ac:parameter ac:name="belowValue">0</ac:parameter>
                  <ac:parameter ac:name="">variable:Days Left</ac:parameter>
                </ac:structured-macro>
              </p>
              <ac:structured-macro ac:macro-id="90136fad-3ffa-45ae-bfa9-17fd2df2f8ea" ac:name="report-body" ac:schema-version="1">
                <ac:rich-text-body>
                  <p>This project has ended</p>
                </ac:rich-text-body>
              </ac:structured-macro>
            </ac:rich-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="eebaac3b-8536-4d30-a992-dbf180241743" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="title">No. of milestones</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="92368731-3d0c-4ddb-9d73-16d10779a968" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="">data:Project Milestones &gt; collection:size</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="ec1ac3e7-6f19-4954-8470-59f9b4b7c090" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$#,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">data:Budget Total</ac:parameter>
      <ac:parameter ac:name="title">Budget Total</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="75d93000-4110-47c5-8f92-f80f5f388038" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="">data:Budget Total</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="480602e1-27e7-4f72-b029-5e1c8563ff95" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$#,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">data:Expenditure Total</ac:parameter>
      <ac:parameter ac:name="title">Expenditure total</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="ac5e3f34-6661-46b0-917e-5f989fc91b52" ac:name="report-info" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="">data:Expenditure Total</ac:parameter>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="bea3b9c2-a11d-4d7a-9dd0-0e6f0d2bd294" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="summaryFormat">$##,##0.00</ac:parameter>
      <ac:parameter ac:name="summaryType">sum</ac:parameter>
      <ac:parameter ac:name="summaryValue">variable:Budget Deficit</ac:parameter>
      <ac:parameter ac:name="title">Budget Deficit</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="a5fef81f-7ccd-474f-abe5-d6e228a0a49d" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Budget Deficit</ac:parameter>
            <ac:plain-text-body><![CDATA[%data:Budget Total% - %data:Expenditure Total%]]></ac:plain-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
    <ac:structured-macro ac:macro-id="db161a3f-6dda-41f5-895c-ad3e35254e59" ac:name="report-column" ac:schema-version="1">
      <ac:parameter ac:name="injected">true</ac:parameter>
      <ac:parameter ac:name="title">Budget Deficit %</ac:parameter>
      <ac:rich-text-body>
        <p>
          <ac:structured-macro ac:macro-id="18b2002e-3d2f-47ee-b629-2f642c9af30e" ac:name="report-eval" ac:schema-version="1">
            <ac:parameter ac:name="default">0</ac:parameter>
            <ac:parameter ac:name="format">#%</ac:parameter>
            <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
            <ac:parameter ac:name="">Percentage Deficit</ac:parameter>
            <ac:plain-text-body><![CDATA[%variable:Budget Deficit% / %data:Budget Total%]]></ac:plain-text-body>
          </ac:structured-macro>
        </p>
      </ac:rich-text-body>
    </ac:structured-macro>
  </ac:rich-text-body>
</ac:structured-macro>
<h2>
  <br/>Charts</h2>
<div class="tablesorter-header-inner">
  <p> </p>
  <ac:structured-macro ac:macro-id="62e45cfa-e49d-47a1-b620-1e3ccf6e60d5" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Budget Deficit %</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="rangeAxisLowerBound">-100</ac:parameter>
    <ac:parameter ac:name="dataOrientation">horizontal</ac:parameter>
    <ac:parameter ac:name="title">Subproject Budget Deficit</ac:parameter>
    <ac:parameter ac:name="type">bar</ac:parameter>
    <ac:parameter ac:name="rangeAxisUpperBound">100</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="acf935c7-2b99-4f5e-a3f3-f09f2ead1685" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="09e59f25-8132-4bb6-ad37-dbc82230bc31" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="8259caed-26ab-43ec-8f8f-9525ce1c8bc9" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="1e79e38f-ad94-4140-868b-9d786e88f314" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="5491e9fb-fbdb-42aa-b41f-8d3eabd66096" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="16fcd047-c174-494d-934d-81f978b5f6df" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="injected">true</ac:parameter>
            <ac:parameter ac:name="title">Budget Deficit %</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="53885bcc-a1c8-4b4c-b3b9-a365c4500983" ac:name="report-eval" ac:schema-version="1">
                  <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
                  <ac:parameter ac:name="">Percentage Deficit</ac:parameter>
                  <ac:plain-text-body><![CDATA[(%data:Budget Total% - %data:Expenditure Total%) / %data:Budget Total% * 100]]></ac:plain-text-body>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
  <ac:structured-macro ac:macro-id="371ec71d-180e-4ab3-a627-92f69dba6d6a" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Budget Total</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="dataOrientation">vertical</ac:parameter>
    <ac:parameter ac:name="title">Subproject Budget Allocation</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="b307d24c-b13f-49fa-b883-bac6c9e10c45" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="9fcb1f89-0509-467a-89b9-09aa0c81e5f7" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="41f99c63-eb30-484c-90a3-5c1914880643" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="e5bde7db-710c-49a8-bf39-31ffe486055a" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="d70b6f4a-744f-4466-83e9-92b616d3aa76" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="7fdb40ab-db1f-4f0b-9b8f-7aa49619f998" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Budget Total</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="f570aa19-20fb-48e9-b44e-2005331c2df7" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
                  <ac:parameter ac:name="">data:Budget Total</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
  <ac:structured-macro ac:macro-id="c2e4b3a1-ce10-4157-a0a9-fb12a2bf2bf1" ac:name="chart" ac:schema-version="1">
    <ac:parameter ac:name="orientation">vertical</ac:parameter>
    <ac:parameter ac:name="columns">Project Name, Expenditure Total</ac:parameter>
    <ac:parameter ac:name="width">500</ac:parameter>
    <ac:parameter ac:name="dataOrientation">vertical</ac:parameter>
    <ac:parameter ac:name="title">Subproject Expenditure</ac:parameter>
    <ac:parameter ac:name="height">500</ac:parameter>
    <ac:rich-text-body>
      <ac:structured-macro ac:macro-id="ef4e9f8c-2c17-4c0b-9824-51512d807e69" ac:name="report-table" ac:schema-version="1">
        <ac:rich-text-body>
          <ac:structured-macro ac:macro-id="bb8a0082-8630-4702-aba6-8b0dcc088f9d" ac:name="content-reporter" ac:schema-version="1">
            <ac:parameter ac:name="types">+pages, -attachment</ac:parameter>
            <ac:parameter ac:name="scope">Cafe Rockettoria Projects &gt; children</ac:parameter>
            <ac:parameter ac:name="labels">subproject</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="741e05ef-7c7f-40fe-ba52-57a65f18cb81" ac:name="text-sort" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="dedefbe7-ef65-4fa7-b03c-dfbada2345eb" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Project Name</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="bb760de7-5068-4ebe-91a6-bd869d378da7" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="">content:title</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
          <ac:structured-macro ac:macro-id="156a9cf0-ab28-4938-8205-c173956caf05" ac:name="report-column" ac:schema-version="1">
            <ac:parameter ac:name="title">Expenditure Total</ac:parameter>
            <ac:rich-text-body>
              <p>
                <ac:structured-macro ac:macro-id="9abc2db9-b01c-42f7-8a6f-e0569f7a8d6c" ac:name="report-info" ac:schema-version="1">
                  <ac:parameter ac:name="format">$##,##0.00</ac:parameter>
                  <ac:parameter ac:name="">data:Expenditure Total</ac:parameter>
                </ac:structured-macro>
              </p>
            </ac:rich-text-body>
          </ac:structured-macro>
        </ac:rich-text-body>
      </ac:structured-macro>
    </ac:rich-text-body>
  </ac:structured-macro>
</div>

  • No labels