Skip to contents
require(ospsuite.reportingengine)
#> Loading required package: ospsuite.reportingengine
#> Loading required package: ospsuite
#> Loading required package: rSharp
#> 
#> Attaching package: 'ospsuite'
#> The following object is masked from 'package:base':
#> 
#>     %||%
#> Loading required package: tlf

In Mean Model and Population workflows, title pages can be included using the reportTitle input argument.

The example below will be used to illustrate the available options when adding a title page to the final report.

Code
# Get the pkml simulation file: "MiniModel2.pkml"
simulationFile <- system.file("extdata", "MiniModel2.pkml",
  package = "ospsuite.reportingengine"
)

# Define the input parameters
outputA <- Output$new(
  path = "Organism|A|Concentration in container",
  displayName = "Concentration of A",
  displayUnit = "nmol/ml"
)

setA <- SimulationSet$new(
  simulationSetName = "A",
  simulationFile = simulationFile,
  outputs = outputA
)

Add a title only

When only a title is needed as a title page, the workflow will internally add the markdown title tag, "#", to the reportTitle as illustrated below.

Code
# Create the workflow instance with the report title
workflow <-
  MeanModelWorkflow$new(
    simulationSets = setA,
    workflowFolder = "Example-1",
    reportTitle = "A meaningful title"
  )
#> 09/09/2024 - 13:26:35
#> i Info  Reporting Engine Information:
#>  Date: 09/09/2024 - 13:26:35
#>  User Information:
#>  Computer Name: fv-az1564-176
#>  User: runneradmin
#>  Login: runneradmin
#>  System is NOT validated
#>  System versions:
#>  R version: R version 4.4.1 (2024-06-14 ucrt)
#>  OSP Suite Package version: 12.1.0
#>  OSP Reporting Engine version: 2.2
#>  tlf version: 1.5.170

# Set the workflow tasks to be run
workflow$activateTasks(c("simulate", "plotTimeProfilesAndResiduals"))

# Run the workflow
workflow$runWorkflow()
#> 09/09/2024 - 13:26:36
#> i Info  Starting run of Mean Model Workflow
#> 09/09/2024 - 13:26:36
#> i Info  Starting run of Simulation task
#> 09/09/2024 - 13:26:36
#> i Info  Splitting simulations for parallel run: 1 simulations split into 1 subsets
#> 09/09/2024 - 13:26:36
#> i Info  Starting run of subset simulations
#>   |                                                                              |                                                                      |   0%  |                                                                              |======================================================================| 100%
#> 09/09/2024 - 13:26:38
#> i Info  Simulation task completed in 0 min
#> 09/09/2024 - 13:26:38
#> i Info  Starting run of Plot Time profiles and Residuals task
#> 09/09/2024 - 13:26:38
#> i Info  Starting run of Plot Time profiles and Residuals task for A
#> 09/09/2024 - 13:26:53
#> i Info  Plot Time profiles and Residuals task completed in 0.2 min
#> 09/09/2024 - 13:26:53
#> i Info  Executing: pandoc --embed-resources --standalone --wrap=none --toc --from=markdown+tex_math_dollars+superscript+subscript+raw_attribute --reference-doc="C:/Users/runneradmin/AppData/Local/Temp/Rtmp8sFlI7/temp_libpath16fcb7d380f/ospsuite.reportingengine/extdata/reference.docx" --resource-path="Example-1" -t docx -o "Example-1/Report-word.docx" "Example-1/Report-word.md"
#> 
#> 09/09/2024 - 13:26:53
#> i Info  Mean Model Workflow completed in 0.3 min
Report

Add a title page

When the length of reportTitle is longer than 1, the workflow will assume reportTitle is a more advanced title page already formatted for markdown. In such cases, reportTitle will used as is.

In the example below, the content of a more advanced title page is defined. The corresponding page includes

  • A reference anchor that could be linked using [Title page](#title-page)
  • A title with a markdown title tag
  • A table (using kable for markdown formatting)
Code
titlePage <- c(
  anchor("title-page"),
  "",
  "# A meaningful title",
  "",
  knitr::kable(
    data.frame(
      Date = Sys.Date(),
      Author = "OSP Suite - Reporting Engine",
      Subject = "Example Workflow"
    )
  )
)
# Here, it is more optimal to re-use the previous workflow
# since only the report title page is changed and the same results are used
workflow$inactivateTasks("simulate")

workflow$reportTitle <- titlePage

# Re-run the workflow with the new title page
workflow$runWorkflow()
#> 09/09/2024 - 13:26:56
#> i Info  Starting run of Mean Model Workflow
#> 09/09/2024 - 13:26:56
#> i Info  Starting run of Plot Time profiles and Residuals task
#> 09/09/2024 - 13:26:56
#> i Info  Starting run of Plot Time profiles and Residuals task for A
#> 09/09/2024 - 13:26:58
#> i Info  Plot Time profiles and Residuals task completed in 0 min
#> 09/09/2024 - 13:26:59
#> i Info  Executing: pandoc --embed-resources --standalone --wrap=none --toc --from=markdown+tex_math_dollars+superscript+subscript+raw_attribute --reference-doc="C:/Users/runneradmin/AppData/Local/Temp/Rtmp8sFlI7/temp_libpath16fcb7d380f/ospsuite.reportingengine/extdata/reference.docx" --resource-path="Example-1" -t docx -o "Example-1/Report-word.docx" "Example-1/Report-word.md"
#> 
#> 09/09/2024 - 13:26:59
#> i Info  Mean Model Workflow completed in 0 min
Report

Use a file as title page

Another option is to use a markdown file as cover page. In this case, the file path can directly be defined in reportTitle and the workflow will internally check that the file exists and include its content.

The example below save the previously defined title page as a file named :

Code
titlePageFile <- "title-page.md"
write(
  x = titlePage,
  file = titlePageFile
)
# Here, it is more optimal to re-use the previous workflow
# since only the report title page is changed and the same results are used
workflow$reportTitle <- titlePageFile

# Re-run the workflow with the new title page
workflow$runWorkflow()
#> 09/09/2024 - 13:27:01
#> i Info  Starting run of Mean Model Workflow
#> 09/09/2024 - 13:27:01
#> i Info  Starting run of Plot Time profiles and Residuals task
#> 09/09/2024 - 13:27:01
#> i Info  Starting run of Plot Time profiles and Residuals task for A
#> 09/09/2024 - 13:27:04
#> i Info  Plot Time profiles and Residuals task completed in 0 min
#> 09/09/2024 - 13:27:04
#> i Info  Executing: pandoc --embed-resources --standalone --wrap=none --toc --from=markdown+tex_math_dollars+superscript+subscript+raw_attribute --reference-doc="C:/Users/runneradmin/AppData/Local/Temp/Rtmp8sFlI7/temp_libpath16fcb7d380f/ospsuite.reportingengine/extdata/reference.docx" --resource-path="Example-1" -t docx -o "Example-1/Report-word.docx" "Example-1/Report-word.md"
#> 
#> 09/09/2024 - 13:27:04
#> i Info  Mean Model Workflow completed in 0 min
Report
Note

Note that running the workflow won’t delete the title page. The title file can be re-used if the workflow needs to be re-run.

file.exists(titlePageFile)
#> [1] TRUE