Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Introduction

Aimed at reporting specialists, the advanced mode provides more detailed control over the ad hoc orders as well as scheduled orders. It allows users to directly view and edit the JSON representation of an order. This page provides an in depth description along with many examples on how the advanced mode can be used.

Using the Advanced Mode

In the detail view of a scheduled order or in the ad hoc order, click the tab advanced mode. You now see the JSON representation of the order. The editor provides several features to help with the editing process:

  • Mismatched brackets, commas etc. are highlighted.

  • Alt+Shift+F formats the order.

  • Extended search functionality. Click on the editor field to make sure it is focused. Then, press CTRL+F

Example Orders

Simple ad hoc order

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "parameters":{
      "portfolioId": "E0002",
      "reportingDate": "2019-03-31",
      "reportLanguage": "en"
  }
}

Simple manually scheduled order

  • orderType = manual

  • orderStatus and orderName are set

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "manual",
  "parameters": {
    "reportLanguage": "en",
    "portfolioId": "E0002"
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Simple automatically scheduled order

  • orderType = scheduled and has scheduling property.

  • orderStatus and orderName are set

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage": "en",
    "portfolioId": "E0002"
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Order scheduled once

Automatic scheduled order but:

  • start and end date are set to the same day

  • frequency = daily

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "daily",
    "startDate": "2018-01-01",
    "endDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage": "en",
    "portfolioId": "E0002"
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Batch Orders

The advanced mode allows a greater deal of flexibility for batch orders. In the JSON representation, some properties in an order can be “starred“, i.e. postfixed with *. These are the properties that cause the batch orders to yield multiple reports. In simple cases this can easily be set up using the default mode, for example when creating the same report for multiple portfolioIDs and languages. What is unique to the JSON representation, is that multiple sets of parameters can be configured with parameters*. This allows for a fine granular configuration for each of the resulting reports.

Batch Order Rules

There are three simple rules: 

  1. Any property name ending in a star * is an array which implies multiple (sub-)orders, with the (star-less) property iterated over its elements.

  2. If both "parameters" and "parameters*" are present, each element of "parameters*" produces one orders with "parameters" merged in (or multiple ones, if sub-parameters are also starred) .

  3. The orders and executions created correspond to the cross product of all properties ending in a star.

Batch Order Examples

Simple batch order example

Batch order with multiple portfolioIDs and languages. The following order creates 6 executions.

Table of Contents

Introduction

Aimed at reporting specialists, this page introduces concepts that can be used to utilize the full extent of Cinnamon’s parameters. This can be achieved by directly editing the JSON used internally to represent a report order.

Advanced mode

The advanced mode allows you to edit the full JSON representation of an order directly. If the JSON here is modified in a way that makes it invalid, e.g. by having mismatched brackets, Cinnamon will prevent you from saving the order. To enter the advanced mode, click the tab advanced mode in the detail view of a scheduled order or in the ad hoc order. The editor provides several features to help with the editing process:

  • Mismatched brackets, commas etc. are highlighted.

  • Alt+Shift+F formats the order.

  • Extended search functionality. Click on the editor field to make sure it is focused. Then, press CTRL+F

To exit the advanced mode, click on the tab default view at the top. Any changes made in the advanced mode are also reflected in the default view.

Additional parameters

The setting “Additional parameters”, found in the default mode under Additional Settings > Other Customizations,contains a JSON of parameters that otherwise have no input field in the UI. This allows you to set arbitrary parameters. In the advanced mode, the parameters inserted using this setting can be found under parameters alongside the parameters that can be set in the UI. Conversely, if such an arbitrary parameter is added to parameters in the advanced mode, it will show up under Additional Parameters in default mode.

Parameters*

When using starred parameters in a batch order (e.g. portfolioId*, reportLanguage*), the result is a cross product of all values for those parameters. However, you may only want some of those combinations. To allow this, parameters* contains sets of parameters, rather than single values. Each of those parameter sets is treated like a single starred parameter. As an example, consider fund factsheets for a specific share class. Here, you may want to hide a particular section for retail clients but not for professional investors. Using parameters*, you can set this hide parameter to true only for retail clients. If a value is set under parameters*, the advanced mode has a corresponding property parameters*. It is also possible to directly insert this property parameters* in advanced mode.

Info

Since both parameters* and additional parameters are reflected in the JSON representation, all examples in this page are based on the advanced mode.

Batch Orders in Depth

In the JSON in the advanced mode, some properties in an order can be “starred“, i.e. postfixed with *. This is equivalent to selecting multiple values for a property in default mode. These are the properties that cause the batch orders to yield multiple reports. In most cases this can easily be set up using the default mode, for example when creating the same report for multiple portfolioIDs and languages. If a more detailed configuration is required, parameters* can be used. Parameters* contains an array of JSON objects:

Default mode

Advanced mode

Code Block
languagejson
[
  {
    "portfolioId": "2041",
    "showTWR": false
  },
  {
    "portfolioId": "2044",
    "showTWR": true
  },
  {
    "portfolioId": "2090",
    "showTWR": true
  }
]
Code Block
languagejson
"parameters*" : [
  {
    "portfolioId": "2041",
    "showTWR": false
  },
  {
    "portfolioId": "2044",
    "showTWR": true
  },
  {
    "portfolioId": "2090",
    "showTWR": true
  }
]

There are three simple rules: 

  1. Any property name ending in a star * is an array which implies multiple (sub-)orders, with the (star-less) property iterated over its elements.

  2. If both "parameters" and "parameters*" are present, each element of "parameters*" produces one orders with "parameters" merged in (or multiple ones, if sub-parameters are also starred) .

  3. The orders and executions created correspond to the cross product of all properties ending in a star.

Examples: Different Kinds of Orders

Ad hoc vs. stored orders

Ad Hoc Order

Stored Order

Example

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "parameters":{
      "portfolioId": "E0002",
      "reportingDate": "2019-03-31",
      "reportLanguage": "en"
  }
}
Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage*": ["de", "en"],
    "portfolioId*": ["E0002", "E0001"]
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Created in

Ad Hoc Order UI

Report Order Management

Triggered by

User

User or automatically

Manual vs. Automatic Scheduling vs. Once

Manual

Automatic

Once

Example

Code Block
languagejson
{
  "reportType": "sample_
FOC_Report"
TwoPager",
  "outputFormat": "
word
pdf",
  "orderType": "manual",
  "parameters": {
    "reportLanguage
*
": 
[
"en",
"de"],

    "portfolioId
*
": 
[
"E0002"
  },
  "orderStatus": "
2041
active",
  "orderName": "E0002 monthly two pager EN"
2044",

}
Code Block
languagejson
{
  
"2090" ],
"reportType": "sample_TwoPager",
  "
reportingDate
outputFormat": "
2020-11-30
pdf",
  
},
"orderType": "scheduled",
  "scheduling": 
"orderStatus
{
    "availabilities": [
      {"
active
availability": 
}

reportLanguage

portfolioId

1

en

2041

2

de

2041

3

en

2044

4

de

2044

5

en

2090

6

de

2090

Different parameters for each execution with parameters*

The below example creates six executions, with different parameters for each portfolio:

Code Block
languagejson
{ "reportType": "sample_FOC_Report", "outputFormat": "word", "orderType": "manual"
"eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {

    "reportLanguage
*
": 
[
"en
","de
"
]
,
    
"
reportingDate
portfolioId": "
2020-11-30
E0002"
  },
  "
parameters*
orderStatus": 
[
"active",
  "orderName": "E0002 
{
monthly two pager 
EN"
}
Code Block
languagejson
{
  "
portfolioId
reportType": "
2041
sample_TwoPager",
  "outputFormat": "pdf",
  "
showTWR
orderType": 
false
"scheduled",
  "scheduling": {
},
    
{
"frequency": "daily",
    "
portfolioId
startDate": "
2044
2018-01-01",
    
"
showTWR
endDate": 
true
"2018-01-01"
  
},
  
"parameters": {

    
"
portfolioId
reportLanguage": "
2090
en",

    "
showTWR
portfolioId": 
true
"E0002"
  },
 
}
 
]
"orderStatus": "active",
  "
orderStatus
orderName": "
active

Use Case Fund Reporting: Create reports for one portfolio for multiple countries with the same order

The following order creates 3 x 3 executions with "jurisdiction" set to "ch", "eu" and "ru". (Hint: the parameter reportLanguage* is not to be confused with the multi-lingual reporting feature using availableLanguages)

code
E0002 monthly two pager EN"
}

reportLanguage

parameters added via parameters*

1

en

"portfolioId": "2041"

"showTWR": false

2

de

"portfolioId": "2041",

"showTWR": false

3

en

"portfolioId": "2044",

"showTWR": true

4

de

"portfolioId": "2044",

"showTWR": true

5

en

"portfolioId": "2090",

"showTWR": true

6

de

"portfolioId": "2090",

"showTWR": true

Created in

Report Order Management

Report Order Management

Report Order Management

Triggered by

User

Automatically when data of sufficient quality is available

Automatically on the requested date

Batch vs. Non-Batch

Batch

Non-Batch

Example

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage*": ["de", "en"],
    "portfolioId*": ["E0002", "E0001"]
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

This order results in 4 reports; one for both portfolios in either language.

Code Block
languagejson
{
  "reportType": "sample_
FundFactSheet
TwoPager",
  "outputFormat": "
html
pdf",
  "orderType": "
manual
scheduled",
  "
parameters
scheduling": {
    "
reportLanguage*
availabilities": [
"en","de","fr"

      {"availability": "eventDriven"}
    ],
    "
portfolioId
frequency": "
F0001
monthly",
    "
reportingDate
startDate": "
2020
2018-
11
01-
30
01"
  },
  "parameters": {
    "
jurisdiction*
reportLanguage": 
[
"
ch
en",
    "
eu
portfolioId"
,
: "
ru
E0002"
]

  },
  "orderStatus": "active"
}

Starring segmentations

  • properties of object-type parameters (e.g. filterSegmentation.segments) can’t be used with a *

  • non-atomic parameters (object or array, e.g. segmentations) can be used with *

Code Block
languagejson
{ "reportType*": [ "fullReport", "shortReport" ]
,
  "orderName": "E0002 monthly two pager EN"
}

Created in

Report Order Management

Report Order Management

Triggered by

User or automatically

User or automatically

Examples: Configuring Batch Orders

Different parameters for each execution with parameters*

The below example creates six executions, with different parameters for each portfolio:

Code Block
languagejson
{
  "reportType": "sample_FOC_Report",
  "outputFormat
*
": 
[ "pdf", "html" ]
"word",
  "orderType": "manual",
  "parameters": {
      "reportLanguage*": ["en","de"],
      "reportingDate": "2020-11-30"
,

  },
  
"
filterSegmentation
parameters*": 
{
[
    {
      "
id
portfolioId": "
gugus
2041",
      
"
segments
showTWR": false
[],
    },
    {
""
      
}
"portfolioId": "2044",
      "
segmentations*
showTWR": 
[
true
    },
   
[ "seg1", "seg2" ],
 {
      "portfolioId": "2090",
     
[
 "
seg2
showTWR"
,
: 
"seg3"
true
]
    }
  ]
}
,
  "orderStatus": "active"
, "orderId": "ORD00003" }

Reference: Order Properties

These properties configure the general report order.

Property

Type

Description

Examples / Values

Required

Can use star

reportType

string

The type of the report defining the structure of contents

"Fixed Income Two-Pager"

Status
colourGreen
titleYES

Status
colourGreen
titleYES

outputFormat

string

Select the format of the output (pdf creates word & pdf)

word, pdf, json

Status
colourGreen
titleYES

Status
colourGreen
titleYES

parameters

See separate table: https://bmpi.atlassian.net/wiki/spaces/CRDOC/pages/2881159181/Editing+Orders+with+the+Advanced+Mode#Order-Level-Parameters

Status
colourGreen
titleYES

Status
colourGreen
titleYES

orderStatus

string

The status of the order: Can be active or inactive. Inactive orders are not considered for scheduling.

"active", "inactive"

Status
colourRed
titleNO

Status
colourRed
titleNO

orderType

string

Whether the order should be considered for automated scheduling or will be scheduled manually.

"scheduled", "manual"

Status
colourRed
titleNO
(Set to scheduled by default)

Status
colourRed
titleNO

orderName

string

The name of the order.

"E0002 monthly two pager"

Status
colourRed
titleNO

Status
colourRed
titleNO

printerName

string

The printer to use for printing. Only applicable if the output format is set to 'print'.

Status
colourRed
titleNO

Status
colourRed
titleNO

priority

number

The priority of the execution in the production queue. Lower number is higher priority.

Status
colourRed
titleNO

Status
colourRed
titleNO

scheduling

See separate table: https://bmpi.atlassian.net/wiki/spaces/CRDOC/pages/2881159181/Editing+Orders+with+the+Advanced+Mode#Scheduling-Parameters

Required for automatically scheduled orders but not for ad hoc orders and manually scheduled orders

Status
colourRed
titleNO

orderId

string

The id of the order. Ad hoc orders do not have an id. The id is automatically generated and only needs to be passed if an already existing order is supposed to be updated.

Status
colourRed
titleNO

Status
colourRed
titleNO

Order Level Parameters

These generic parameters configure the report to be produced. These core parameters are available for all versions of Cinnamon. More parameters are available depending on the Cinnamon solution used.

Parameter

Type

Description

Examples / Values

portfolioId

string

The id of the portfolio, consolidation or other business object to report about.

“E0002”

reportingDate

Date

The date to to report about. Has to be formatted as "YYYY-MM-DD".

“2019-03-31”

reportLanguage

string

The language to report in.

“en”

availableLanguages

string[]

The language to generate abstract report in.

[“en”, “de”]

reportTitle

string

The title of a report.

“E0002 Quarterly report”

reportSubtitle

string

The subtitle of a report.

“Q1 2019”

profile

string

Name of the used profile. The profile configures all parameters needed by solution specific blocks

“equityProfile”

resolveTexts

boolean

resolveValues

boolean

resolveCharts

boolean

Whether charts should be resolved to SVG.

validateSchema

boolean

Whether data hub query responses should be validated by the corresponding JSON schema

verifyRules

boolean

Whether data hub query responses should be validated by the corresponding [[Validatable.verified]] function

refreshCache

boolean

Whether the report production should forcefully refresh all cache entries visited.

Scheduling Parameters

Status
colourRed
titlemandatory
: parameters are mandatory for automatic scheduling based on data availabilities.

Property

Description

Type

Examples / Values

startDate

Start date of the scheduling.

Date

2021-01-01

endDate

End date of the scheduling.

Date

2021-12-31

frequency

Status
colourRed
titlemandatory

Frequency of the scheduling.
Can be fine tuned by selecting only specific points in time via frequencyPoints.

one of the below strings:

  • daily: schedule every day

  • weekly: schedule every Friday (select other days of the week in frequencyPoints).

  • monthly: schedule at the end (ultimo) of every month.

  • quarterly: schedule at the end of every quarter, i.e. 03-31, 06-30, 09-30 and 12-31.

  • half-yearly: schedule at the end of every half year, i.e. 06-30 and 12-31.

  • yearly: schedule at the end of every year, i.e. 12-31

“daily”

frequencyPoints

Selection of points, where the report should be scheduled

  • If the frequency is daily and frequencyPoints = [15,20,21,22], scheduling will be daily and it will produce reports only on 15, 20, 21, 22 of the given month.

  • If the frequency is weekly and frequencyPoints = [2], scheduling will be weekly every 2nd day (Tuesday) of the week.

  • If the frequency is monthly and frequencyPoints = [1,2,4,6], scheduling will be monthly and it will produce reports only on Jan, Feb, April and June.

  • If the frequency is quarterly and frequencyPoints = [1,3], scheduling will be quarterly and it will produce reports only on first and third quarters.

  • If the frequency is half-yearly and frequencyPoints = [1], scheduling will be half-yearly and it will produce reports only on the 1st half year.

  • If the frequency is yearly and frequencyPoints = [2020,2021], scheduling will be yearly and it will produce reports only for 2020 and 2021 (should rather be done via startDate, endDate of the order)

availabilities

Status
colourRed
titlemandatory

List of data availabilities the reports should be created for.

SchedulingAvailability[] : array of minimum data availabilities triggering this report order to schedule an execution having availability set as one of

  • unpublished

  • eventDriven

  • signedOff

Code Block
languagejson
[
  {"availability": "eventDriven"},
  {"availability": "signedOff"}
]

Reference: Different Kinds of Orders

The minimal examples below outline the differences between the various kinds of orders:

  • Ad hoc vs. scheduled orders

  • manual vs. automatic scheduling

  • batch vs. non-batch orders

Ad hoc / scheduled order

Trigger

Batch?

Minimal Example

UI used for creation

Ad hoc

Manual

No

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "parameters":{
      "portfolioId": "E0002",
      "reportingDate": "2019-03-31",
      "reportLanguage": "en"
  }
}

Ad Hoc Order

Ad hoc

Manual

Yes

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "parameters":{
    "reportLanguage*": ["de", "en"],
    "portfolioId*": ["E0002", "E0001"],
    "reportingDate": "2019-03-31"
  }
}

Ad Hoc Batch orders are not foreseen. However, Cinnamon will still create the reports and they can be found in the Executions UI. This can be used in exceptional cases.

Scheduled

Manual

No

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "manual",
  "parameters": {
    "reportLanguage": "en",
    "portfolioId": "E0002"
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Report Order Management

Scheduled

Manual

Yes

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "manual",
  "parameters": {
    "reportLanguage*": ["de", "en"],
    "portfolioId*": ["E0002", "E0001"]
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Report Order Management

Scheduled

Automatic

No

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage": "en",
    "portfolioId": "E0002"
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}

Report Order Management

Scheduled

Automatic

Yes

Code Block
languagejson
{
  "reportType": "sample_TwoPager",
  "outputFormat": "pdf",
  "orderType": "scheduled",
  "scheduling": {
    "availabilities": [
      {"availability": "eventDriven"}
    ],
    "frequency": "monthly",
    "startDate": "2018-01-01"
  },
  "parameters": {
    "reportLanguage*": ["de", "en"],
    "portfolioId*": ["E0002", "E0001"]
  },
  "orderStatus": "active",
  "orderName": "E0002 monthly two pager EN"
}
Report Order Management

}

reportLanguage

parameters added via parameters*

1

en

"portfolioId": "2041"

"showTWR": false

2

de

"portfolioId": "2041",

"showTWR": false

3

en

"portfolioId": "2044",

"showTWR": true

4

de

"portfolioId": "2044",

"showTWR": true

5

en

"portfolioId": "2090",

"showTWR": true

6

de

"portfolioId": "2090",

"showTWR": true

Use Case Fund Reporting: Create reports for one portfolio for multiple countries with the same order

The following order creates 3 x 3 executions with "jurisdiction" set to "ch", "eu" and "ru". (Hint: the parameter reportLanguage* is not to be confused with the multi-lingual reporting feature using availableLanguages)

Code Block
{
  "reportType": "sample_FundFactSheet",
  "outputFormat": "html",
  "orderType": "manual",
  "parameters": {
    "reportLanguage*": ["en","de","fr"],
    "portfolioId": "F0001",
    "reportingDate": "2020-11-30",
    "jurisdiction*": ["ch", "eu", "ru"]
  },
  "orderStatus": "active"
}

Starring segmentations

  • properties of object-type parameters (e.g. filterSegmentation.segments) can’t be used with a *

  • non-atomic parameters (object or array, e.g. segmentations) can be used with *

Code Block
languagejson
{
  "reportType*": [ "fullReport", "shortReport" ],
  "outputFormat*": [ "pdf", "html" ],
  "orderType": "manual",
  "parameters": {
      "reportLanguage*": ["en","de"],
      "reportingDate": "2020-11-30",
      "filterSegmentation": {
        "id": "gugus",
        "segments": [],
        ""
      },
      "segmentations*": [
        [ "seg1", "seg2" ],
        [ "seg2", "seg3" ]
      ]
  },
  "orderStatus": "active",
  "orderId": "ORD00003"
}

Reference: Order Properties

These properties configure the general report order.

Property

Type

Description

Examples / Values

Required

Can use star

reportType

string

The type of the report defining the structure of contents

"Fixed Income Two-Pager"

Status
colourGreen
titleYES

Status
colourGreen
titleYES

outputFormat

string

Select the format of the output (pdf creates word & pdf)

word, pdf, json

Status
colourGreen
titleYES

Status
colourGreen
titleYES

parameters

See separate table: https://bmpi.atlassian.net/wiki/spaces/CRDOC/pages/2881159181/Editing+Orders+with+the+Advanced+Mode#Order-Level-Parameters

Status
colourGreen
titleYES

Status
colourGreen
titleYES

orderStatus

string

The status of the order: Can be active or inactive. Inactive orders are not considered for scheduling.

"active", "inactive"

Status
colourRed
titleNO

Status
colourRed
titleNO

orderType

string

Whether the order should be considered for automated scheduling or will be scheduled manually.

"scheduled", "manual"

Status
colourRed
titleNO

(Set to scheduled by default)

Status
colourRed
titleNO

orderName

string

The name of the order.

"E0002 monthly two pager"

Status
colourRed
titleNO

Status
colourRed
titleNO

printerName

string

The printer to use for printing. Only applicable if the output format is set to 'print'.

Status
colourRed
titleNO

Status
colourRed
titleNO

priority

number

The priority of the execution in the production queue. Lower number is higher priority.

Status
colourRed
titleNO

Status
colourRed
titleNO

scheduling

See separate table: https://bmpi.atlassian.net/wiki/spaces/CRDOC/pages/2881159181/Editing+Orders+with+the+Advanced+Mode#Scheduling-Parameters

Required for automatically scheduled orders but not for ad hoc orders and manually scheduled orders

Status
colourRed
titleNO

orderId

string

The id of the order. Ad hoc orders do not have an id. The id is automatically generated and only needs to be passed if an already existing order is supposed to be updated.

Status
colourRed
titleNO

Status
colourRed
titleNO

Order Level Parameters

These generic parameters configure the report to be produced. These core parameters are available for all versions of Cinnamon. More parameters are available depending on the Cinnamon solution used.

Parameter

Type

Description

Examples / Values

portfolioId

string

The id of the portfolio, consolidation or other business object to report about.

“E0002”

reportingDate

Date

The date to to report about. Has to be formatted as "YYYY-MM-DD".

“2019-03-31”

reportLanguage

string

The language to report in.

“en”

availableLanguages

string[]

The language to generate abstract report in.

[“en”, “de”]

reportTitle

string

The title of a report.

“E0002 Quarterly report”

reportSubtitle

string

The subtitle of a report.

“Q1 2019”

profile

string

Name of the used profile. The profile configures all parameters needed by solution specific blocks

“equityProfile”

resolveTexts

boolean

resolveValues

boolean

resolveCharts

boolean

Whether charts should be resolved to SVG.

validateSchema

boolean

Whether data hub query responses should be validated by the corresponding JSON schema

verifyRules

boolean

Whether data hub query responses should be validated by the corresponding [[Validatable.verified]] function

refreshCache

boolean

Whether the report production should forcefully refresh all cache entries visited.

Scheduling Parameters

Status
colourRed
titlemandatory
: parameters are mandatory for automatic scheduling based on data availabilities.

Property

Description

Type

Examples / Values

startDate

Start date of the scheduling.

Date

2021-01-01

endDate

End date of the scheduling.

Date

2021-12-31

frequency

Status
colourRed
titlemandatory

Frequency of the scheduling.
Can be fine tuned by selecting only specific points in time via frequencyPoints.

one of the below strings:

  • daily: schedule every day

  • weekly: schedule every Friday (select other days of the week in frequencyPoints).

  • monthly: schedule at the end (ultimo) of every month.

  • quarterly: schedule at the end of every quarter, i.e. 03-31, 06-30, 09-30 and 12-31.

  • half-yearly: schedule at the end of every half year, i.e. 06-30 and 12-31.

  • yearly: schedule at the end of every year, i.e. 12-31

“daily”

frequencyPoints

Selection of points, where the report should be scheduled

  • If the frequency is daily and frequencyPoints = [15,20,21,22], scheduling will be daily and it will produce reports only on 15, 20, 21, 22 of the given month.

  • If the frequency is weekly and frequencyPoints = [2], scheduling will be weekly every 2nd day (Tuesday) of the week.

  • If the frequency is monthly and frequencyPoints = [1,2,4,6], scheduling will be monthly and it will produce reports only on Jan, Feb, April and June.

  • If the frequency is quarterly and frequencyPoints = [1,3], scheduling will be quarterly and it will produce reports only on first and third quarters.

  • If the frequency is half-yearly and frequencyPoints = [1], scheduling will be half-yearly and it will produce reports only on the 1st half year.

  • If the frequency is yearly and frequencyPoints = [2020,2021], scheduling will be yearly and it will produce reports only for 2020 and 2021 (should rather be done via startDate, endDate of the order)

availabilities

Status
colourRed
titlemandatory

List of data availabilities the reports should be created for.

SchedulingAvailability[] : array of minimum data availabilities triggering this report order to schedule an execution having availability set as one of

  • unpublished

  • eventDriven

  • signedOff

Code Block
languagejson
[
  {"availability": "eventDriven"},
  {"availability": "signedOff"}
]