{"text_format":"1","workbook":"xlsx","n_sheets":5,"sheets":["Read Me","Project Plan","Resources","Task Types","Holidays"],"not_rendered":{"charts":0,"images":0,"macros":1,"external_links":0,"defined_names":2,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Read Me","index":0,"n_rows":24,"n_cols":4,"rows_kept":24,"cut":false,"hidden":false,"merged":[]}
["Guidelines to using this template"]
["This Excel template contains hidden sheets as well as hidden columns. Please do not delete them."]
["Resources can be appended in the Resources sheet. The employee \"Resource Sheet\" report from PPO can be used to populate this sheet."]
["The Holidays sheet can be populated from the Public Holidays report in PPO.  Note that this is only used if you duration driven scheduling as described in the FAQ."]
["Ensure you fix all the Excel export errors/warnings before importing the XML file."]
["Once completed, save this file as .xlsx file and import it into PPO."]
["For more information refer to the following FAQ at: https://support.ppolive.com/hc/en-us/articles/209873033."]
[]
["Explanations about the column headings on the Project Plan sheet"]
["Column ","Example","PPO Field","Description"]
["UID",0,"Task Code","This is used to derive the task code in PPO. It's recommended you have a single project task at the top which is \"0\" and is named the same as the project, and all other tasks are numberered 1,2,3 etc. This value is used to match tasks when re-importing schedules, so it must be unique and must not be changed."]
["Name","Implementation of ERP System","Name","This is the name of the task and is limited to 100 Characters."]
["Type","Task","Type","This is the type of the task, and can either be a project task, summary task, task or a milestone."]
["Start","2021-02-01","Planned Start Date","This is the planned start date of the task and should be in the following format: \"YYYY-MM-DD\"."]
["Finish","2021-02-10","Planned End Date","This is the planned end date of the task and should be in the following format: \"YYYY-MM-DD\"."]
["Notes","This project is the implementation of the ERP system for ACME Limited.","Description","This is the notes / description of the task that is imported into the PPO Description field. There is no limit on the text size of this field."]
["Resource","Joe Bloggs","Responsibility","This is used to indicate which employee is responsible for the task. The values in the dropdown is obtained from the Resources sheet."]
["Planned Progress %",50,"Planned Progress %","This is the planned progress on the task and must be a whole number between 0 and 100."]
["Actual Progress %",25,"Actual Progress %","This is the actual progress on the task and must be a whole number between 0 and 100."]
[]
["Explanations about the column headings on the Resources sheet"]
["Column","Example","PPO Field","Description"]
["Name","Joe Bloggs","Name Surname","This is the display value for the employee in PPO."]
["Key",1,"Employee","This is the key that identifies the specific employee in PPO."]

{"sheet":"Project Plan","index":1,"n_rows":8,"n_cols":10,"rows_kept":8,"cut":false,"hidden":false,"merged":[]}
["UID","Name","Type","Task Type","Start","Finish","Notes","Resource","Resource Key","Actual Progress %"]
[0,"Project Task","Project Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":0},"2025-11-01","2025-11-30","Description…",null,{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":""},0]
[1,"Summary Task1","Summary Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":1},"2025-11-02","2025-11-05","Description…",null,{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":""},0]
[2,"Task1","Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":2},"2025-11-03","2025-11-06","Description…","Harry Adams, Joe Bloggs",{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":"4,1"},0]
[3,"Task2","Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":2},"2025-11-04","2025-11-07","Description…","Joe Bloggs",{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":"1"},0]
[4,"Task3","Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":2},"2025-11-05","2025-11-08","Description…","Joe Bloggs",{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":"1"},0]
[5,"Task4","Task",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":2},"2025-11-06","2025-11-09","Description…","Joe Bloggs",{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":"1"},0]
[6,"Milestone1","Milestone",{"$f":" IF(ProjectPlan[[#This Row],[Type]] = \"\", 2, VLOOKUP(ProjectPlan[[#This Row],[Type]],TaskTypes[],2,FALSE))","v":4},"2025-11-30","2025-11-30","Description…","",{"$f":"IF(ProjectPlan[[#This Row],[Resource]]=\"\",\"\",_xlfn.TEXTJOIN(\",\", FALSE, _xlfn.XLOOKUP(TRIM(_xlfn.TEXTSPLIT(ProjectPlan[[#This Row],[Resource]], \",\")), 'Resources'!$A$2:$A$3, 'Resources'!$B$2:$B$3)))","v":""},0]

{"sheet":"Resources","index":2,"n_rows":3,"n_cols":2,"rows_kept":3,"cut":false,"hidden":false,"merged":[]}
["Name","Key"]
["Joe Bloggs",1]
["Harry Adams",4]

{"sheet":"Task Types","index":3,"n_rows":5,"n_cols":2,"rows_kept":5,"cut":false,"hidden":true,"merged":[]}
["Name","Key"]
["Task",2]
["Summary Task",1]
["Milestone",4]
["Project Task",0]

{"sheet":"Holidays","index":4,"n_rows":2,"n_cols":1,"rows_kept":2,"cut":false,"hidden":false,"merged":[]}
["HolidayDate"]
[{"$f":"DATE(YEAR(NOW()),12,25)","v":"2025-12-25"}]