Skip to content
On this page

Calendarize Object Reference

 

This Calendarize request object is used to transform resource time-series contained in a Scenario object, whose period intervals are event-based, to time-series whose intervals are based on standard calendar periods used for financial budgeting and forecasting. When more than one scenario is targeted, the Calendarize response object will return summed quantities by calendar period.

This request object provides two methods for sourcing scenario objects. Scenario objects may be automatically sourced from your saved simulation history, or they may be derived from your local file repository and added to the request object. The former only requires specifying the targeted scenario(s) using the ScenarioIds property. The latter requires adding the required source information, for each scenario, to the request object using the Scenarios property.

Resource Source Records

Each resource type may be mapped directly from the entirety of its source object. Zypr will only validate for the subset of properties specified in the respective resource array and discard all non-required properties.

 

json
  {
    "ReportDateStart": "2023-01-01",
    "ReportDateEnd": "2025-06-30",
    "CalendarPeriod": "Month",
    "ResourceType": "All",
    "ScenarioIds": [
        "xxxxx",
        "yyyyy" 
    ],
    "Scenarios": [
      {
        "ScenarioId": "xxxx",
        "HardwareInventory": [
          {
            "DateStart": "2023-01-01T00:00:00Z",
            "DateEnd": "2023-03-08T00:00:00Z",
            "IntervalNbr": 0,
            "ServerQty": 174,
            "ProcessorQty": 348,
            "CoreQty": 5808
          },
        ],
        "SoftwareInventory": [
          {
            "DateStart": "2023-01-01T00:00:00Z",
            "DateEnd": "2023-03-08T00:00:00Z",
            "IntervalNbr": 0,
            "LicenseId": 1,
            "Required": 174,
            "Available": 174,
            "AvailableStart": 0,
            "AvailableEnd": 0
          },
        ],
      "FacilityResources": [
          {
            "DateStart": "2023-01-01T00:00:00Z",
            "DateEnd": "2023-03-08T00:00:00Z",
            "IntervalNbr": 0,
            "KilowattHrsInc": 126570,
            "RackUnitSlotsCum": 348
          },
        ],
      },
    ]
  }

Attributes

ReportDateStart - string - required
Starting date of time-series.
ReportDateEnd - string - required
Ending date of time-series.
CalendarPeriod - string - required
Calendar period used to transform time-series of event intervals. Permitted values are: Month and Quarter.
ResourceType - string - required
Determines which resources are calendarized. Permitted values are: All, Hardware, Software, and Facility.
ScenarioIds - array of strings - optional
List of scenario ids used to fetch successfully completed scenario(s) (i.e., must have final state StatusNbr 7) from user's saved simulation history.
Scenarios - array of objects - optional
Each scenario object contains corresponding source records from a successfully completed scenario.

Source Record Priority

If both ScenarioIds and Scenarios properties are populated, Zypr will default to using the Scenarios property and ignore the ScenarioIds property.

 

This is the Calendarize response object. Note the interval DateStart and DateEnd properties, contained in the request object, have been removed and replaced with the ReportPeriod property in the response object.

The ScenarioIds property is a list of the ids of all calendarized and summed scenarios.

json
  {
    "ReportDateStart": "2023-01-01",
    "ReportDateEnd": "2025-06-30",
    "CalendarPeriod": "Month",
    "ResourceType": "All",
    "ScenarioIds": ["xxx", "yyy"],
    "HardwareInventory": [
          {
            "IntervalNbr": 0,
            "ReportPeriod": "2023-01",
            "ServerQtyStart": 262,
            "ServerQtyEnd": 262,
            "ProcessorQtyStart": 262,
            "ProcessorQtyEnd": 262,
            "CoreQtyStart": 16768,
            "CoreQtyEnd": 16768
          },
        ],
    "SoftwareInventory": [
          {
            "IntervalNbr": 0,
            "ReportPeriod": "2023-01",
            "LicenseId": 1,
            "RequiredStart": 524,
            "RequiredEnd": 524,
            "AvailableStart": 576,
            "AvailableEnd": 576
          },
        ],
      "FacilityResources": [
          {
            "IntervalNbr": 0,
            "ReportPeriod": "2023-01",
            "KilowattHrs": 126570,
            "RackUnitSlotsStart": 262,
            "RackUnitSlotsEnd": 262
          },
        ],
      },
    ]
    "Warnings" : [],
    "ErrorMessage" : ""
  }

Warnings and Error Message

When summing multiple scenarios for the specified report time period, a scenario's time-series may not start and end on the same dates as other scenarios. For example, scenario A may start in March, whereas scenario B starts in January. The Warnings property identifies when scenario time-series do not intersect, which may be relevant to your reporting requirements.

If either the calendarization or summing functions fail, the ErrorMessage property will contain information about the nature of the failure.

If there no warnings or error, these properties will be omitted on the response object.

Ravello Analytics, LLC