All skills
secondsky avatar

/sap-sac-scripting

@620a19a
by Eddiesecondsky/sap-skills456 stars
120

Comprehensive SAC scripting skill for SAP Analytics Cloud Analytics Designer and Optimized Story Experience. This skill should be used when the user asks to "create SAC script", "debug Analytics Designer", "optimize SAC performance", "planning operations in SAC", "filter data in SAC", "use DataSource API", "chart scripting", "table manipulation", "SAC event handlers", "version management", "data locking", "Optimized Story Experience API", "OSE scripting", "OSE widget API", "OSE DataSource", "story scripting API", "OSE planning API", "OSE method", "optimized story", "SAC story scripting", "story script", "SAC scripting", "debug SAC runtime in Microsoft Edge via CDP", or works with SAC widgets, planning models, or analytics applications.

Use this Skill: https://skilld.dev/gh/secondsky/sap-skills/sap-sac-scripting

This session only. Nothing lands on disk.

referencesose-api-planning-calendar.md

≈53k tokens on demand. Your agent reads this file only when SKILL.md points to it.

OSE API: Planning & Calendar

Version: 2025.20 | SAC Release: Q2 2026 (2026.8) | Full API Docs: SAP Help Portal

Planning operations and calendar integration: version management, data locking, BPC planning sequences, and calendar tasks/processes.

Classes in This File


<a name="bpcplanningsequence"></a>

BpcPlanningSequence

extends Widget

Since

2019.13

Last Update

2022.14

Method Summary

Name and Description
execute(): BpcPlanningSequenceExecutionResponse<br>Executes the BPC planning sequence.
getBpcPlanningSequenceDataSource(): BpcPlanningSequenceDataSource<br>Returns the data source of the BPC Planning Sequence.
openPromptDialog(): void<br>Opens the Prompt dialog for the BPC planning sequence.
Inherited from Widget
getCssClass, getLayout, isVisible, setCssClass, setVisible

Event Summary

Name and Description
onBeforeExecute(): boolean<br>Called when the user clicks the BPC planning sequence starter.

Method Detail

execute
execute(): BpcPlanningSequenceExecutionResponse<br>Executes the BPC planning sequence.<br>Returns<br>BpcPlanningSequenceExecutionResponse<br>Mobile Support<br>Not supported on mobile devices.<br>Since<br>2022.14
getBpcPlanningSequenceDataSource
getBpcPlanningSequenceDataSource(): BpcPlanningSequenceDataSource<br>Returns the data source of the BPC Planning Sequence.<br>Returns<br>BpcPlanningSequenceDataSource<br>Mobile Support<br>Not supported on mobile devices.<br>Since<br>2022.14
openPromptDialog
openPromptDialog(): void<br>Opens the Prompt dialog for the BPC planning sequence. This method returns after user closes the Prompt dialog.<br>Mobile Support<br>Not supported on mobile devices.<br>Since<br>2022.14

Event Detail

onBeforeExecute
onBeforeExecute(): boolean<br>Called when the user clicks the BPC planning sequence starter. If this method returns true or returns no value, then the BPC planning sequence is executed. If this method returns false, then the BPC planning sequence is ignored.<br>Returns<br>booleanDefault value:true<br>Since<br>2020.4

Type Library planning

C


<a name="bpcplanningsequenceexecutionresponse"></a>

BpcPlanningSequenceExecutionResponse

Since

2022.14

Property Summary

Name and Description
status: BpcPlanningSequenceExecutionResponseStatus<br>The execution is successful or not

Property Detail

status
status: BpcPlanningSequenceExecutionResponseStatus<br>The execution is successful or not

Type Library planning

E


<a name="bpcplanningsequenceexecutionresponsestatus"></a>

BpcPlanningSequenceExecutionResponseStatus

Since

2022.14

Property Summary

Name and Description
static Error: BpcPlanningSequenceExecutionResponseStatus<br>Execution ended with errors.
static Success: BpcPlanningSequenceExecutionResponseStatus<br>Execution ended successfully.

Property Detail

Error
staticError: BpcPlanningSequenceExecutionResponseStatus<br>Execution ended with errors.
Success
staticSuccess: BpcPlanningSequenceExecutionResponseStatus<br>Execution ended successfully.

Type Library planning

C


<a name="bpcplanningsequencevariableinfo"></a>

BpcPlanningSequenceVariableInfo

Since

2022.16

Property Summary

Name and Description
description: string
id: string
isInputEnabled: boolean

Property Detail

description
description: string
id
id: string
isInputEnabled
isInputEnabled: boolean

Type Library input-controls

C


<a name="calendarcompositetask"></a>

CalendarCompositeTask

extends CalendarEvent

Since

2021.3

Last Update

2024.3

Method Summary

Name and Description
addReviewer(reviewer: string, level: number): boolean<br>Adds the reviewer to the specified review level of the calendar event.
approve(): boolean<br>Approves the calendar task.
canUserApprove(): boolean<br>Returns whether the current user can approve the task.
canUserDecline(): boolean<br>Returns whether the current user can decline the task.
canUserReject(): boolean<br>Returns whether the current user can reject the task.
canUserSubmit(): boolean<br>Returns whether the current user can submit the task.
decline(): boolean<br>Declines the calendar task.
reject(): boolean<br>Rejects the calendar task.
removeReviewer(reviewer: string): boolean<br>Removes the reviewer from the calendar event.
submit(): boolean<br>Submits the calendar task.
Inherited from CalendarEvent
activate, addAssignee, addContextFilter, addOwner, addReminder, canUserReopen, getContextFilters, getDependencies, getDescription, getDueDate, getEndDate, getId, getName, getOwners, getParentId, getProgress, getReminders, getStartDate, getStatus, getType, hasUserRole, removeAssignee, removeContextFilter, removeOwner, removeReminder, reopen, sendImmediateReminder, setDependencies, setDescription, setEndDate, setName, setParentId, setProgress, setStartDate

Method Detail

addReviewer
addReviewer(reviewer: string, level: number): boolean

Adds the reviewer to the specified review level of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

reviewer: string
level: number

Returns

boolean

Since

2024.3 |

approve
approve(): boolean<br>Approves the calendar task. Requires the user role "Reviewer". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
canUserApprove
canUserApprove(): boolean<br>Returns whether the current user can approve the task. A task can be approved if the reviewer has their turn in the reviewer round and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
canUserDecline
canUserDecline(): boolean<br>Returns whether the current user can decline the task. A task can be declined if the assignee / reviewer can still work on their task and the task isn't final yet.<br>Returns<br>boolean<br>Since<br>2021.19
canUserReject
canUserReject(): boolean<br>Returns whether the current user can reject the task. A task can be rejected if the reviewer has their turn in the reviewer round and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
canUserSubmit
canUserSubmit(): boolean<br>Returns whether the current user can submit the task. A task can be submitted if the assignee has their turn and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
decline
decline(): boolean<br>Declines the calendar task. Requires the user role "Assignee" or "Reviewer". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
reject
reject(): boolean<br>Rejects the calendar task. Requires the user role "Reviewer". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
removeReviewer
removeReviewer(reviewer: string): boolean

Removes the reviewer from the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

reviewer: string

Returns

boolean

Since

2024.3 |

submit
submit(): boolean<br>Submits the calendar task. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean

Type Library calendar-integration

C


<a name="calendarcompositetaskcreateoptions"></a>

CalendarCompositeTaskCreateOptions

can be passed as a JSON object to method arguments

This object is deprecated, use "CalendarEventCreateOptions" instead. An object specifying calendar task create options

Since

2021.13

Property Summary

Name and Description
autoActivate: boolean<br>Specifies whether the task should automatically be activated when the start date is reached.

Property Detail

autoActivate
autoActivate: boolean<br>Specifies whether the task should automatically be activated when the start date is reached.

Type Library calendar-integration

C


<a name="calendarcompositetaskcreateproperties"></a>

CalendarCompositeTaskCreateProperties

can be passed as a JSON object to method arguments

An object specifying calendar task properties

Since

2021.13

Last Update

2024.3

Property Summary

Name and Description
assignees: string[]<br>Assignees of the calendar task
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task
description: string<br>Description of the calendar task
dueDate: Date<br>Deprecated This property is deprecated, use "endDate" instead.
endDate: Date<br>End date of the calendar task (formerly known as due date)
name: string<br>Name of the calendar task
owners: string[]<br>Owners of the calendar task
parentId: string<br>ID of the parent process of the calendar task
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task
reviewers: CalendarCompositeTaskReviewersProperties<br>Reviewers of the calendar task
startDate: Date<br>Start date of the calendar task
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Property Detail

assignees
assignees: string[]<br>Assignees of the calendar task
contextFilters
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task<br>Since<br>2024.3
dependencies
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task<br>Since<br>2024.3
description
description: string<br>Description of the calendar task
dueDate
dueDate: Date <br>Deprecated This property is deprecated, use "endDate" instead. Due date of the calendar task<br>Deprecated<br>2023.19
endDate
endDate: Date<br>End date of the calendar task (formerly known as due date)<br>Since<br>2023.19
name
name: string<br>Name of the calendar task
owners
owners: string[]<br>Owners of the calendar task<br>Since<br>2024.3
parentId
parentId: string<br>ID of the parent process of the calendar task<br>Since<br>2024.3
reminders
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task<br>Since<br>2024.3
reviewers
reviewers: CalendarCompositeTaskReviewersProperties<br>Reviewers of the calendar task
startDate
startDate: Date<br>Start date of the calendar task
workFiles
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Type Library calendar-integration

C


<a name="calendarcompositetaskreviewersproperties"></a>

CalendarCompositeTaskReviewersProperties

is an object<string[]>

Reviewers information for a calendar composite task

Since

2021.13

Type Library calendar-integration

C


<a name="calendarcontextfilter"></a>

CalendarContextFilter

can be passed as a JSON object to method arguments

An object specifying a calendar context filter

Since

2024.3

Property Summary

Name and Description
hierarchy: HierarchyInfo JSON<br>Hierarchy of the context filter
members: MemberInfo[]JSON<br>Members of the context filter

Property Detail

hierarchy
hierarchy: HierarchyInfo JSON<br>Hierarchy of the context filter
members
members: MemberInfo[]JSON<br>Members of the context filter

Type Library calendar-integration

C


<a name="calendardependencies"></a>

CalendarDependencies

can be passed as a JSON object to method arguments

An object specifying calendar dependencies

Since

2024.3

Property Summary

Name and Description
dependentOnIds: string[]<br>IDs of events this event is dependent on.
triggerStatuses: CalendarTaskStatus[]<br>Statuses of the predecessors on which this event is initiated

Property Detail

dependentOnIds
dependentOnIds: string[]<br>IDs of events this event is dependent on. All predecessors need to have no or the same parent process as this event.
triggerStatuses
triggerStatuses: CalendarTaskStatus[]<br>Statuses of the predecessors on which this event is initiated

Type Library calendar-integration

C


<a name="calendarevent"></a>

CalendarEvent

is abstract

An object representing a calendar task

Direct Subclasses

CalendarCompositeTask, CalendarGeneralTask, CalendarProcess, CalendarReviewTask

Since

2024.3

Last Update

2024.19

Method Summary

Name and Description
activate(): boolean<br>Activates a task.
addAssignee(assignee: string): boolean<br>Adds the assignee to the calendar event.
addContextFilter(contextFilter: CalendarContextFilter JSON): boolean<br>Adds the context filter to the calendar event.
addOwner(owner: string): boolean<br>Adds the owner to the calendar event.
addReminder(reminder: CalendarReminder JSON): boolean<br>Adds the reminder to the calendar event.
canUserReopen(): boolean<br>Returns whether the current user can reopen the event.
getContextFilters(): CalendarContextFilter[]<br>Returns the contexts of the calendar event.
getDependencies(): CalendarDependencies<br>Returns the dependencies of the calendar event.
getDescription(): string<br>Returns the description of the calendar task.
getDueDate(): Date<br>Deprecated This method is deprecated, use "getEndDate()" instead.
getEndDate(): Date<br>Returns the end date of the calendar task (formerly known as due date).
getId(): string<br>Returns the ID of the calendar task.
getName(): string<br>Returns the name of the calendar task.
getOwners(): string[]<br>Returns the owners of the calendar event.
getParentId(): string<br>Returns the ID of the parent process of the calendar event.
getProgress(): integer<br>Returns the progress of the calendar task.
getReminders(): CalendarReminder[]<br>Returns the reminders of the calendar event.
getStartDate(): Date<br>Returns the start date of the calendar task.
getStatus(): CalendarTaskStatus<br>Returns the status of the calendar task.
getType(): CalendarTaskType<br>Returns the type of the calendar task.
hasUserRole(calendarRoleType: CalendarTaskUserRoleType): boolean<br>Returns whether the current user has the specified role of the calendar task.
removeAssignee(assignee: string): boolean<br>Removes the assignee from the calendar event.
removeContextFilter(contextFilter: CalendarContextFilter JSON): boolean<br>Removes the context filter from the calendar event.
removeOwner(owner: string): boolean<br>Removes the owner from the calendar event.
removeReminder(reminder: CalendarReminder JSON): boolean<br>Removes the reminder from the calendar event.
reopen(includingChildren?: boolean): boolean<br>Reopens an event.
sendImmediateReminder(message?: string): boolean<br>Sends an immediate reminder with an optional message.
setDependencies(dependencies: CalendarDependencies JSON): boolean<br>Sets the dependencies of the calendar event.
setDescription(description: string): boolean<br>Sets the description of the calendar event.
setEndDate(endDate: Date): boolean<br>Sets the end date of the calendar event.
setName(name: string): boolean<br>Sets the name of the calendar event.
setParentId(parentId: string): boolean<br>Sets the ID of the parent process of the calendar event.
setProgress(progress: integer): boolean<br>Sets the progress of the calendar event.
setStartDate(startDate: Date): boolean<br>Sets the start date of the calendar event.

Method Detail

activate
activate(): boolean<br>Activates a task. If this operation was successful, then true is returned, and false if it wasn't. The notify option is deprecated and no longer has an effect.<br>Returns<br>boolean<br>Last Update<br>2024.19
addAssignee
addAssignee(assignee: string): boolean

Adds the assignee to the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

assignee: string

Returns

boolean |

addContextFilter
addContextFilter(contextFilter: CalendarContextFilter JSON): boolean

Adds the context filter to the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

contextFilter: CalendarContextFilter JSON

Returns

boolean |

addOwner
addOwner(owner: string): boolean

Adds the owner to the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

owner: string

Returns

boolean |

addReminder
addReminder(reminder: CalendarReminder JSON): boolean

Adds the reminder to the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

reminder: CalendarReminder JSON

Returns

boolean |

canUserReopen
canUserReopen(): boolean<br>Returns whether the current user can reopen the event. An event can be reopened if the event has a final status and the user is an owner of this event.<br>Returns<br>boolean
getContextFilters
getContextFilters(): CalendarContextFilter[]<br>Returns the contexts of the calendar event.<br>Returns<br>CalendarContextFilter[]
getDependencies
getDependencies(): CalendarDependencies<br>Returns the dependencies of the calendar event.<br>Returns<br>CalendarDependencies
getDescription
getDescription(): string<br>Returns the description of the calendar task.<br>Returns<br>string
getDueDate
getDueDate(): Date <br>Deprecated This method is deprecated, use "getEndDate()" instead. Returns the due date of the calendar task.<br>Returns<br>Date<br>Deprecated<br>2024.3
getEndDate
getEndDate(): Date<br>Returns the end date of the calendar task (formerly known as due date).<br>Returns<br>Date
getId
getId(): string<br>Returns the ID of the calendar task.<br>Returns<br>string
getName
getName(): string<br>Returns the name of the calendar task.<br>Returns<br>string
getOwners
getOwners(): string[]<br>Returns the owners of the calendar event.<br>Returns<br>string[]
getParentId
getParentId(): string<br>Returns the ID of the parent process of the calendar event.<br>Returns<br>string
getProgress
getProgress(): integer<br>Returns the progress of the calendar task. The progress is specified as an integer between 0 and 100.<br>Returns<br>integer
getReminders
getReminders(): CalendarReminder[]<br>Returns the reminders of the calendar event.<br>Returns<br>CalendarReminder[]
getStartDate
getStartDate(): Date<br>Returns the start date of the calendar task.<br>Returns<br>Date
getStatus
getStatus(): CalendarTaskStatus<br>Returns the status of the calendar task.<br>Returns<br>CalendarTaskStatus
getType
getType(): CalendarTaskType<br>Returns the type of the calendar task.<br>Returns<br>CalendarTaskType
hasUserRole
hasUserRole(calendarRoleType: CalendarTaskUserRoleType): boolean

Returns whether the current user has the specified role of the calendar task.

Parameters

calendarRoleType: CalendarTaskUserRoleType

Returns

boolean |

removeAssignee
removeAssignee(assignee: string): boolean

Removes the assignee from the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

assignee: string

Returns

boolean |

removeContextFilter
removeContextFilter(contextFilter: CalendarContextFilter JSON): boolean

Removes the context filter from the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

contextFilter: CalendarContextFilter JSON

Returns

boolean |

removeOwner
removeOwner(owner: string): boolean

Removes the owner from the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

owner: string

Returns

boolean |

removeReminder
removeReminder(reminder: CalendarReminder JSON): boolean

Removes the reminder from the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

reminder: CalendarReminder JSON

Returns

boolean |

reopen
reopen(includingChildren?: boolean): boolean

Reopens an event. Optionally, for processes all child events can be included to reopen.

Parameters

includingChildrenOptional: boolean

Returns

boolean |

sendImmediateReminder
sendImmediateReminder(message?: string): boolean

Sends an immediate reminder with an optional message. All involved people will directly receive a notification.

Parameters

messageOptional: string

Returns

boolean |

setDependencies
setDependencies(dependencies: CalendarDependencies JSON): boolean

Sets the dependencies of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

dependencies: CalendarDependencies JSON

Returns

boolean |

setDescription
setDescription(description: string): boolean

Sets the description of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

description: string

Returns

boolean |

setEndDate
setEndDate(endDate: Date): boolean

Sets the end date of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

endDate: Date

Returns

boolean |

setName
setName(name: string): boolean

Sets the name of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

name: string

Returns

boolean |

setParentId
setParentId(parentId: string): boolean

Sets the ID of the parent process of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

parentId: string

Returns

boolean |

setProgress
setProgress(progress: integer): boolean

Sets the progress of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

progress: integer

Returns

boolean |

setStartDate
setStartDate(startDate: Date): boolean

Sets the start date of the calendar event. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

startDate: Date

Returns

boolean |

Type Library calendar-integration

C


<a name="calendareventcreateoptions"></a>

CalendarEventCreateOptions

can be passed as a JSON object to method arguments

An object specifying calendar event create options

Since

2024.3

Property Summary

Name and Description
autoActivate: boolean<br>Specifies whether the event should automatically be activated when the start date is reached.

Property Detail

autoActivate
autoActivate: boolean<br>Specifies whether the event should automatically be activated when the start date is reached.

Type Library calendar-integration

C


<a name="calendargeneraltask"></a>

CalendarGeneralTask

extends CalendarEvent

Since

2021.3

Last Update

2021.19

Method Summary

Name and Description
canUserDecline(): boolean<br>Returns whether the current user can decline the task.
canUserSubmit(): boolean<br>Returns whether the current user can submit the task.
decline(): boolean<br>Declines the calendar task.
submit(): boolean<br>Submits the calendar task.
Inherited from CalendarEvent
activate, addAssignee, addContextFilter, addOwner, addReminder, canUserReopen, getContextFilters, getDependencies, getDescription, getDueDate, getEndDate, getId, getName, getOwners, getParentId, getProgress, getReminders, getStartDate, getStatus, getType, hasUserRole, removeAssignee, removeContextFilter, removeOwner, removeReminder, reopen, sendImmediateReminder, setDependencies, setDescription, setEndDate, setName, setParentId, setProgress, setStartDate

Method Detail

canUserDecline
canUserDecline(): boolean<br>Returns whether the current user can decline the task. A task can be declined if the assignee can still work on their task and the task isn't final yet.<br>Returns<br>boolean<br>Since<br>2021.19
canUserSubmit
canUserSubmit(): boolean<br>Returns whether the current user can submit the task. A task can be submitted if the assignee has their turn and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
decline
decline(): boolean<br>Declines the calendar task. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
submit
submit(): boolean<br>Submits the calendar task. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean

Type Library calendar-integration

C


<a name="calendargeneraltaskcreateproperties"></a>

CalendarGeneralTaskCreateProperties

can be passed as a JSON object to method arguments

An object specifying calendar task properties

Since

2024.17

Property Summary

Name and Description
assignees: string[]<br>Assignees of the calendar task
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task
description: string<br>Description of the calendar task
endDate: Date<br>End date of the calendar task (formerly known as due date)
name: string<br>Name of the calendar task
owners: string[]<br>Owners of the calendar task
parentId: string<br>ID of the parent process of the calendar task
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task
startDate: Date<br>Start date of the calendar task
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Property Detail

assignees
assignees: string[]<br>Assignees of the calendar task
contextFilters
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task
dependencies
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task
description
description: string<br>Description of the calendar task
endDate
endDate: Date<br>End date of the calendar task (formerly known as due date)
name
name: string<br>Name of the calendar task
owners
owners: string[]<br>Owners of the calendar task
parentId
parentId: string<br>ID of the parent process of the calendar task
reminders
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task
startDate
startDate: Date<br>Start date of the calendar task
workFiles
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Type Library calendar-integration

C


<a name="calendarintegration"></a>

CalendarIntegration

Since

2021.3

Last Update

2024.17

Method Summary

Name and Description
createCompositeTask(taskProperties: CalendarCompositeTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON | CalendarCompositeTaskCreateOptions JSON): CalendarCompositeTask<br>Deprecated This method is deprecated, use "createGeneralTask" and "createReviewTask" instead.
createGeneralTask(taskProperties: CalendarGeneralTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarGeneralTask<br>Creates a general task specified by the task properties and the create options.
createProcess(processProperties: CalendarProcessCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarProcess<br>Creates a process specified by the process properties and the create options.
createProcessFromTemplate(templateId: string, processFromTemplateProperties: CalendarProcessFromTemplateCreateProperties JSON): CalendarProcess<br>Creates a process from template specified by the template id, process properties and the create options.
createReviewTask(taskProperties: CalendarReviewTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarReviewTask<br>Creates a review task specified by the task properties and the create options.
getCalendarEventById(eventId: string): CalendarEvent<br>Returns the calendar event specified by the event ID.
getCalendarTaskById(taskId: string): CalendarEvent<br>Deprecated This method is deprecated, use "getCalendarEventById" instead.
getCurrentEvent(): CalendarEvent<br>Returns the calendar event with which the analytic application or story was started.
getCurrentTask(): CalendarEvent<br>Deprecated This method is deprecated, use "getCurrentEvent" instead.
getRelatedEventIds(): string[]<br>Returns an array of IDs of the events where the analytic application or story is a work file.
getRelatedTaskIds(): string[]<br>Deprecated This method is deprecated, use "getRelatedEventIds" instead.

Method Detail

createCompositeTask
createCompositeTask(taskProperties: CalendarCompositeTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON | CalendarCompositeTaskCreateOptions JSON): CalendarCompositeTask

Deprecated This method is deprecated, use "createGeneralTask" and "createReviewTask" instead. Creates a composite task specified by the task properties and the create options. If this operation was successful, then the composite task is returned, and undefined if it wasn't.

Parameters

taskProperties: CalendarCompositeTaskCreateProperties JSON
createOptionsOptional: CalendarEventCreateOptions JSON | CalendarCompositeTaskCreateOptions JSON

Returns

CalendarCompositeTask

Since

2021.13

Last Update

2024.3

Deprecated

2024.17 |

createGeneralTask
createGeneralTask(taskProperties: CalendarGeneralTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarGeneralTask

Creates a general task specified by the task properties and the create options. If this operation was successful, then the general task is returned, and undefined if it wasn't.

Parameters

taskProperties: CalendarGeneralTaskCreateProperties JSON
createOptionsOptional: CalendarEventCreateOptions JSON

Returns

CalendarGeneralTask

Since

2024.17 |

createProcess
createProcess(processProperties: CalendarProcessCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarProcess

Creates a process specified by the process properties and the create options. If this operation was successful, then the process is returned, and undefined if it wasn't.

Parameters

processProperties: CalendarProcessCreateProperties JSON
createOptionsOptional: CalendarEventCreateOptions JSON

Returns

CalendarProcess

Since

2024.3 |

createProcessFromTemplate
createProcessFromTemplate(templateId: string, processFromTemplateProperties: CalendarProcessFromTemplateCreateProperties JSON): CalendarProcess

Creates a process from template specified by the template id, process properties and the create options. If this operation was successful, then the process is returned, and undefined if it wasn't.

Parameters

templateId: string
processFromTemplateProperties: CalendarProcessFromTemplateCreateProperties JSON

Returns

CalendarProcess

Since

2024.17 |

createReviewTask
createReviewTask(taskProperties: CalendarReviewTaskCreateProperties JSON, createOptions?: CalendarEventCreateOptions JSON): CalendarReviewTask

Creates a review task specified by the task properties and the create options. If this operation was successful, then the review task is returned, and undefined if it wasn't.

Parameters

taskProperties: CalendarReviewTaskCreateProperties JSON
createOptionsOptional: CalendarEventCreateOptions JSON

Returns

CalendarReviewTask

Since

2024.17 |

getCalendarEventById
getCalendarEventById(eventId: string): CalendarEvent

Returns the calendar event specified by the event ID. If no calendar event was found, then undefined is returned.

Parameters

eventId: string

Returns

CalendarEvent

Since

2024.3 |

getCalendarTaskById
getCalendarTaskById(taskId: string): CalendarEvent

Deprecated This method is deprecated, use "getCalendarEventById" instead. Returns the calendar task specified by the task ID. If no calendar task was found, then undefined is returned.

Parameters

taskId: string

Returns

CalendarEvent

Since

2021.13

Last Update

2024.3

Deprecated

2024.3 |

getCurrentEvent
getCurrentEvent(): CalendarEvent<br>Returns the calendar event with which the analytic application or story was started. If the analytic application or story isn't associated with a calendar event, then undefined is returned.<br>Returns<br>CalendarEvent<br>Since<br>2024.3
getCurrentTask
getCurrentTask(): CalendarEvent <br>Deprecated This method is deprecated, use "getCurrentEvent" instead. Returns the calendar task with which the analytic application or story was started. If the analytic application or story isn't associated with a calendar task, then undefined is returned.<br>Returns<br>CalendarEvent<br>Last Update<br>2024.3<br>Deprecated<br>2024.3
getRelatedEventIds
getRelatedEventIds(): string[]<br>Returns an array of IDs of the events where the analytic application or story is a work file. Recurring events are excluded from the result.<br>Returns<br>string[]<br>Since<br>2024.3
getRelatedTaskIds
getRelatedTaskIds(): string[]<br>Deprecated This method is deprecated, use "getRelatedEventIds" instead. Returns an array of task IDs for which the analytic application or story is a work file. Recurring composite tasks are excluded from the result.<br>Returns<br>string[]<br>Since<br>2021.13<br>Deprecated<br>2024.3

Type Library calendar-integration

C


<a name="calendarprocess"></a>

CalendarProcess

extends CalendarEvent

Since

2024.3

Method Summary

Name and Description
canUserDecline(): boolean<br>Returns whether the current user can decline the process.
canUserSubmit(): boolean<br>Returns whether the current user can submit the process.
decline(): boolean<br>Declines the calendar process.
getChildren(): string[]<br>Returns an array of children IDs of the selected process.
submit(): boolean<br>Submits the calendar process.
Inherited from CalendarEvent
activate, addAssignee, addContextFilter, addOwner, addReminder, canUserReopen, getContextFilters, getDependencies, getDescription, getDueDate, getEndDate, getId, getName, getOwners, getParentId, getProgress, getReminders, getStartDate, getStatus, getType, hasUserRole, removeAssignee, removeContextFilter, removeOwner, removeReminder, reopen, sendImmediateReminder, setDependencies, setDescription, setEndDate, setName, setParentId, setProgress, setStartDate

Method Detail

canUserDecline
canUserDecline(): boolean<br>Returns whether the current user can decline the process. A process can be declined if the assignee can still work on their process and the process isn't final yet.<br>Returns<br>boolean
canUserSubmit
canUserSubmit(): boolean<br>Returns whether the current user can submit the process. A process can be submitted if the assignee has their turn and the status is "In Progress" or "Open".<br>Returns<br>boolean
decline
decline(): boolean<br>Declines the calendar process. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
getChildren
getChildren(): string[]<br>Returns an array of children IDs of the selected process.<br>Returns<br>string[]
submit
submit(): boolean<br>Submits the calendar process. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean

Type Library calendar-integration

C


<a name="calendarprocesscreateproperties"></a>

CalendarProcessCreateProperties

can be passed as a JSON object to method arguments

An object specifying calendar process properties

Since

2024.3

Property Summary

Name and Description
assignees: string[]<br>Assignees of the calendar process
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar process
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar process
description: string<br>Description of the calendar process
endDate: Date<br>End date of the calendar process
name: string<br>Name of the calendar process
owners: string[]<br>Owners of the calendar process
parentId: string<br>ID of the parent process of the calendar process
reminders: CalendarReminder[]JSON<br>Reminders of the calendar process
startDate: Date<br>Start date of the calendar process
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar process

Property Detail

assignees
assignees: string[]<br>Assignees of the calendar process
contextFilters
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar process
dependencies
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar process
description
description: string<br>Description of the calendar process
endDate
endDate: Date<br>End date of the calendar process
name
name: string<br>Name of the calendar process
owners
owners: string[]<br>Owners of the calendar process
parentId
parentId: string<br>ID of the parent process of the calendar process
reminders
reminders: CalendarReminder[]JSON<br>Reminders of the calendar process
startDate
startDate: Date<br>Start date of the calendar process
workFiles
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar process

Type Library calendar-integration

C


<a name="calendarprocessfromtemplatecreateproperties"></a>

CalendarProcessFromTemplateCreateProperties

can be passed as a JSON object to method arguments

An object specifying calendar process from template properties

Since

2024.17

Property Summary

Name and Description
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar process
endDate: Date<br>End date of the calendar process
parentId: string<br>ID of the parent process of the calendar process
prefix: string<br>Prefix of the generated events
startDate: Date<br>Start date of the calendar process
suffix: string<br>Suffix of the generated events
useTypeBasedNames: boolean<br>Specifies whether the event names should be based on the event type or on the template name.

Property Detail

dependencies
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar process
endDate
endDate: Date<br>End date of the calendar process
parentId
parentId: string<br>ID of the parent process of the calendar process
prefix
prefix: string<br>Prefix of the generated events
startDate
startDate: Date<br>Start date of the calendar process
suffix
suffix: string<br>Suffix of the generated events
useTypeBasedNames
useTypeBasedNames: boolean<br>Specifies whether the event names should be based on the event type or on the template name.

Type Library calendar-integration

C


<a name="calendarreminder"></a>

CalendarReminder

can be passed as a JSON object to method arguments

An object specifying a calendar reminder

Since

2024.3

Property Summary

Name and Description
measure: CalendarReminderMeasureType<br>Measure of the reminder
number: number<br>Number of the reminder to specify the amount of time.
reference: CalendarReminderReferenceType<br>Reference of the reminder.

Property Detail

measure
measure: CalendarReminderMeasureType<br>Measure of the reminder
number
number: number<br>Number of the reminder to specify the amount of time. Half time reminders don't require this property.
reference
reference: CalendarReminderReferenceType<br>Reference of the reminder. Half time reminders don't require this property.

Type Library calendar-integration

E


<a name="calendarremindermeasuretype"></a>

CalendarReminderMeasureType

Since

2024.3

Property Summary

Name and Description
static Day: CalendarReminderMeasureType<br>The reminder is sent the specified days before the start or end of the event.
static HalfTime: CalendarReminderMeasureType<br>The reminder is sent at the half of the event time.
static Hour: CalendarReminderMeasureType<br>The reminder is sent the specified hours before the start or end of the event.
static Minute: CalendarReminderMeasureType<br>The reminder is sent the specified minutes before the start or end of the event.

Property Detail

Day
staticDay: CalendarReminderMeasureType<br>The reminder is sent the specified days before the start or end of the event.
HalfTime
staticHalfTime: CalendarReminderMeasureType<br>The reminder is sent at the half of the event time.
Hour
staticHour: CalendarReminderMeasureType<br>The reminder is sent the specified hours before the start or end of the event.
Minute
staticMinute: CalendarReminderMeasureType<br>The reminder is sent the specified minutes before the start or end of the event.

Type Library calendar-integration

E


<a name="calendarreminderreferencetype"></a>

CalendarReminderReferenceType

Since

2024.3

Property Summary

Name and Description
static End: CalendarReminderReferenceType<br>The reminder is based on the end date.
static Start: CalendarReminderReferenceType<br>The reminder is based on the start date.

Property Detail

End
staticEnd: CalendarReminderReferenceType<br>The reminder is based on the end date.
Start
staticStart: CalendarReminderReferenceType<br>The reminder is based on the start date.

Type Library calendar-integration

C


<a name="calendarreviewtask"></a>

CalendarReviewTask

extends CalendarEvent

Since

2021.3

Last Update

2021.19

Method Summary

Name and Description
approve(): boolean<br>Approves the calendar task.
canUserApprove(): boolean<br>Returns whether the current user can approve the task.
canUserReject(): boolean<br>Returns whether the current user can reject the task.
reject(): boolean<br>Rejects the calendar task.
Inherited from CalendarEvent
activate, addAssignee, addContextFilter, addOwner, addReminder, canUserReopen, getContextFilters, getDependencies, getDescription, getDueDate, getEndDate, getId, getName, getOwners, getParentId, getProgress, getReminders, getStartDate, getStatus, getType, hasUserRole, removeAssignee, removeContextFilter, removeOwner, removeReminder, reopen, sendImmediateReminder, setDependencies, setDescription, setEndDate, setName, setParentId, setProgress, setStartDate

Method Detail

approve
approve(): boolean<br>Approves the calendar task. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean
canUserApprove
canUserApprove(): boolean<br>Returns whether the current user can approve the task. A task can be approved if the reviewer has their turn in the reviewer round and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
canUserReject
canUserReject(): boolean<br>Returns whether the current user can reject the task. A task can be rejected if the reviewer has their turn in the reviewer round and the status is "In Progress" or "Open".<br>Returns<br>boolean<br>Since<br>2021.19
reject
reject(): boolean<br>Rejects the calendar task. Requires the user role "Assignee". If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean

Type Library calendar-integration

C


<a name="calendarreviewtaskcreateproperties"></a>

CalendarReviewTaskCreateProperties

can be passed as a JSON object to method arguments

An object specifying calendar task properties

Since

2024.17

Property Summary

Name and Description
assignees: string[]<br>Assignees of the calendar task
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task
description: string<br>Description of the calendar task
endDate: Date<br>End date of the calendar task (formerly known as due date)
name: string<br>Name of the calendar task
owners: string[]<br>Owners of the calendar task
parentId: string<br>ID of the parent process of the calendar task
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Property Detail

assignees
assignees: string[]<br>Assignees of the calendar task
contextFilters
contextFilters: CalendarContextFilter[]JSON<br>Context filters of the calendar task
dependencies
dependencies: CalendarDependencies JSON<br>Dependencies of the calendar task
description
description: string<br>Description of the calendar task
endDate
endDate: Date<br>End date of the calendar task (formerly known as due date)
name
name: string<br>Name of the calendar task
owners
owners: string[]<br>Owners of the calendar task
parentId
parentId: string<br>ID of the parent process of the calendar task
reminders
reminders: CalendarReminder[]JSON<br>Reminders of the calendar task
workFiles
workFiles: CalendarTaskWorkFile[]JSON<br>Work files of the calendar task

Type Library calendar-integration

E


<a name="calendartaskstatus"></a>

CalendarTaskStatus

Since

2021.3

Last Update

2024.14

Property Summary

Name and Description
static Canceled: CalendarTaskStatus<br>The calendar task is in status "Canceled".
static Failed: CalendarTaskStatus<br>The calendar task is in status "Failed".
static Inactive: CalendarTaskStatus<br>The calendar task is in status "Inactive".
static InProgress: CalendarTaskStatus<br>The calendar task is in status "In Progress".
static NoAssignee: CalendarTaskStatus<br>The calendar task is in status "No Assignee".
static OnHold: CalendarTaskStatus<br>The calendar task is in status "On Hold".
static Open: CalendarTaskStatus<br>The calendar task is in status "Open".
static PartiallySuccessful: CalendarTaskStatus<br>The calendar task is in status "Partially Successful".
static Successful: CalendarTaskStatus<br>The calendar task is in status "Successful".

Property Detail

Canceled
staticCanceled: CalendarTaskStatus<br>The calendar task is in status "Canceled".
Failed
staticFailed: CalendarTaskStatus<br>The calendar task is in status "Failed".<br>Since<br>2024.14
Inactive
staticInactive: CalendarTaskStatus<br>The calendar task is in status "Inactive".<br>Since<br>2021.13
InProgress
staticInProgress: CalendarTaskStatus<br>The calendar task is in status "In Progress".
NoAssignee
staticNoAssignee: CalendarTaskStatus<br>The calendar task is in status "No Assignee".<br>Since<br>2021.13
OnHold
staticOnHold: CalendarTaskStatus<br>The calendar task is in status "On Hold".
Open
staticOpen: CalendarTaskStatus<br>The calendar task is in status "Open".
PartiallySuccessful
staticPartiallySuccessful: CalendarTaskStatus<br>The calendar task is in status "Partially Successful".<br>Since<br>2024.14
Successful
staticSuccessful: CalendarTaskStatus<br>The calendar task is in status "Successful".<br>Since<br>2023.3

Type Library calendar-integration

E


<a name="calendartasktype"></a>

CalendarTaskType

Since

2021.3

Last Update

2024.3

Property Summary

Name and Description
static CompositeTask: CalendarTaskType<br>Composite task
static GeneralTask: CalendarTaskType<br>General task
static Process: CalendarTaskType<br>Process
static ReviewTask: CalendarTaskType<br>Review task

Property Detail

CompositeTask
staticCompositeTask: CalendarTaskType<br>Composite task
GeneralTask
staticGeneralTask: CalendarTaskType<br>General task
Process
staticProcess: CalendarTaskType<br>Process<br>Since<br>2024.3
ReviewTask
staticReviewTask: CalendarTaskType<br>Review task

Type Library calendar-integration

E


<a name="calendartaskuserroletype"></a>

CalendarTaskUserRoleType

Since

2021.3

Property Summary

Name and Description
static Assignee: CalendarTaskUserRoleType<br>The person who processes the calendar task
static Owner: CalendarTaskUserRoleType<br>The person who created the calendar task
static Reviewer: CalendarTaskUserRoleType<br>The person who supervises the work of the assignee

Property Detail

Assignee
staticAssignee: CalendarTaskUserRoleType<br>The person who processes the calendar task
Owner
staticOwner: CalendarTaskUserRoleType<br>The person who created the calendar task
Reviewer
staticReviewer: CalendarTaskUserRoleType<br>The person who supervises the work of the assignee

Type Library calendar-integration

C


<a name="calendartaskworkfile"></a>

CalendarTaskWorkFile

can be passed as a JSON object to method arguments

An object specifying a calendar task work file

Since

2021.13

Property Summary

Name and Description
id: string<br>ID of the work file
type: CalendarTaskWorkFileType<br>Type of the work file

Property Detail

id
id: string<br>ID of the work file
type
type: CalendarTaskWorkFileType<br>Type of the work file

Type Library calendar-integration

E


<a name="calendartaskworkfiletype"></a>

CalendarTaskWorkFileType

Since

2021.13

Property Summary

Name and Description
static AnalyticApplication: CalendarTaskWorkFileType<br>The work file is an analytic application.
static Story: CalendarTaskWorkFileType<br>The work file is a story.

Property Detail

AnalyticApplication
staticAnalyticApplication: CalendarTaskWorkFileType<br>The work file is an analytic application.
Story
staticStory: CalendarTaskWorkFileType<br>The work file is a story.

C


<a name="calendartime"></a>

CalendarTime

can be passed as a JSON object to method arguments

An object representing time

Since

2023.13

Property Summary

Name and Description
day: integer<br>day
granularity: CalendarTimeGranularity<br>granularity
halfYear: integer<br>halfYear
month: integer<br>month
quarter: integer<br>quarter
week: integer<br>week
year: integer<br>year

Property Detail

day
day: integer<br>day
granularity
granularity: CalendarTimeGranularity<br>granularity
halfYear
halfYear: integer<br>halfYear
month
month: integer<br>month
quarter
quarter: integer<br>quarter
week
week: integer<br>week
year
year: integer<br>year

E


<a name="calendartimegranularity"></a>

CalendarTimeGranularity

Since

2023.13

Property Summary

Name and Description
static Day: CalendarTimeGranularity<br>days
static HalfYear: CalendarTimeGranularity<br>halfYears
static Month: CalendarTimeGranularity<br>months
static Quarter: CalendarTimeGranularity<br>quarters
static Week: CalendarTimeGranularity<br>weeks
static Year: CalendarTimeGranularity<br>years

Property Detail

Day
staticDay: CalendarTimeGranularity<br>days
HalfYear
staticHalfYear: CalendarTimeGranularity<br>halfYears
Month
staticMonth: CalendarTimeGranularity<br>months
Quarter
staticQuarter: CalendarTimeGranularity<br>quarters
Week
staticWeek: CalendarTimeGranularity<br>weeks
Year
staticYear: CalendarTimeGranularity<br>years

Type Library standard

F

cast

Cast an object to the specified type. For example, you can cast a variable filterValue of type FilterValue to the FilterValue subtype SingleFilterValue to access the SingleFilterValue's value property (note the check whether the object is of the correct target type before the cast operation): if (filterValue.type === FilterValueType.Single) { var singleFilter = cast(Type.SingleFilterValue, filterValue); console.log(singleFilter.value); }.

Since

2020.9

Function Summary

Name and Description
cast(type: Type, arg: <any type>): <type of type><br>Cast an object to the specified type.

Function Detail

cast
cast(type: Type, arg: <any type>): <type of type>

Cast an object to the specified type. For example, you can cast a variable filterValue of type FilterValue to the FilterValue subtype SingleFilterValue to access the SingleFilterValue's value property (note the check whether the object is of the correct target type before the cast operation): if (filterValue.type === FilterValueType.Single) { var singleFilter = cast(Type.SingleFilterValue, filterValue); console.log(singleFilter.value); }.

Parameters

type: Type
arg: <any type>

Returns

<type of type> |

Type Library chart

C


<a name="planning"></a>

Planning

Since

2019.3

Last Update

2023.20

Method Summary

| |
| --- |
| Name and Description |
| getDataLocking(): DataLocking<br>Returns the Data Locking object of the table. |
| getPlanningAreaInfo(): PlanningAreaInfo<br>Returns the Planning Area Info object that is initialized with the filters applied to the table. |
| getPrivateVersion(versionId: string): PlanningPrivateVersion<br>Returns a private version associated with the data source. |
| getPrivateVersions(): PlanningPrivateVersion[]<br>Returns all private versions associated with the data source. |
| getPublicVersion(versionId: string): PlanningPublicVersion<br>Returns a public version associated with the data source. |
| getPublicVersions(): PlanningPublicVersion[]<br>Returns all public versions associated with the data source. |
| isEnabled(): boolean<br>Returns whether planning is enabled for the table. |
| setEnabled(enabled: boolean): boolean<br>Enables or disables planning for the table. |
| setUserInput(selectedData: Selection JSON, value: string): boolean<br>Sets a value to data cells. |
| submitData(): boolean<br>Submits the data to the server. |

Method Detail

| |
| --- |
| getDataLocking |
| getDataLocking(): DataLocking<br>Returns the Data Locking object of the table. If the data source associated with the table doesn't support data locking, then undefined is returned.<br>Returns<br>DataLocking<br>Since<br>2019.22 |

| |
| --- |
| getPlanningAreaInfo |
| getPlanningAreaInfo(): PlanningAreaInfo<br>Returns the Planning Area Info object that is initialized with the filters applied to the table. If the data source associated with the table doesn't support planning, then undefined is returned.<br>Returns<br>PlanningAreaInfo<br>Since<br>2023.20 |

| | | |
| --- | --- | --- |
| getPrivateVersion |
| getPrivateVersion(versionId: string): PlanningPrivateVersion

Returns a private version associated with the data source. If there is no private version with this version ID, then undefined is returned.

Parameters

| | | |
| --- | --- | --- |
| versionId: | string | |

Returns

PlanningPrivateVersion

Since

2019.4 |

| |
| --- |
| getPrivateVersions |
| getPrivateVersions(): PlanningPrivateVersion[]<br>Returns all private versions associated with the data source.<br>Returns<br>PlanningPrivateVersion[]<br>Since<br>2019.4 |

| | | |
| --- | --- | --- |
| getPublicVersion |
| getPublicVersion(versionId: string): PlanningPublicVersion

Returns a public version associated with the data source. If there is no public version with this version ID, then undefined is returned.

Parameters

| | | |
| --- | --- | --- |
| versionId: | string | |

Returns

PlanningPublicVersion

Since

2019.4 |

| |
| --- |
| getPublicVersions |
| getPublicVersions(): PlanningPublicVersion[]<br>Returns all public versions associated with the data source.<br>Returns<br>PlanningPublicVersion[]<br>Since<br>2019.4 |

| |
| --- |
| isEnabled |
| isEnabled(): boolean<br>Returns whether planning is enabled for the table.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| setEnabled |
| setEnabled(enabled: boolean): boolean

Enables or disables planning for the table. If this operation was successful, then true is returned (even if you try to enable planning for a table that is already planning-enabled), and false if it wasn't.

Parameters

| | | |
| --- | --- | --- |
| enabled: | boolean | |

Returns

boolean |

| | | |
| --- | --- | --- |
| setUserInput |
| setUserInput(selectedData: Selection JSON, value: string): boolean

Sets a value to data cells. The data cells are specified by the selection. The selection references a visible data cell in the rows or columns of the table. If this operation was successful, then true is returned, and false if it wasn't. Note: If this operation wasn't successful, then one of the following could be the cause: The cell is either a fact cell, a calculation cell, or not input-enabled. Note: After calling setUserInput() it's best to immediately submit your input with Planning.submitData(). Otherwise, unexpected results may occur. For example, if other operations are performed in scripts or by user interaction that lead to a refresh of the planning table before submitting your input, then your input may be discarded. Note: When setting a value for a key figure of a BPC model, you can use digits, letters, and special characters in the value.

Parameters

| | | |
| --- | --- | --- |
| selectedData: | Selection JSON | |
| value: | string | |

Returns

boolean

Since

2019.10 |

| |
| --- |
| submitData |
| submitData(): boolean<br>Submits the data to the server. If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean<br>Since<br>2019.10 |

Type Library
planning

C
\


<a name="planningareafilter"></a>

PlanningAreaFilter

can be passed as a JSON object to method arguments

Since

2023.20

Property Summary

| |
| --- |
| Name and Description |
| dimension: string |
| hierarchy: string |
| members: string[] |
| property: string |

Property Detail

| |
| --- |
| dimension |
| dimension: string |

| |
| --- |
| hierarchy |
| hierarchy: string |

| |
| --- |
| members |
| members: string[] |

| |
| --- |
| property |
| property: string |

Type Library
planning

C
\


<a name="planningareainfo"></a>

PlanningAreaInfo

Since

2023.20

Method Summary

| |
| --- |
| Name and Description |
| changeFilter(dimension: string | DimensionInfo JSON, memberInfo: PlanningAreaMemberInfo JSON): PlanningAreaInfo<br>Sets a filter on the dimension. |
| getFilters(): PlanningAreaFilter[]<br>Returns filters that define the planning area. |
| removeFilter(dimension: string | DimensionInfo JSON): PlanningAreaInfo<br>Removes any filter that is set on the dimension. |

Method Detail

| | | |
| --- | --- | --- |
| changeFilter |
| changeFilter(dimension: string | DimensionInfo JSON, memberInfo: PlanningAreaMemberInfo JSON): PlanningAreaInfo

Sets a filter on the dimension. Any existing filter on the dimension is overwritten.

Parameters

| | | |
| --- | --- | --- |
| dimension: | string | DimensionInfo JSON | |
| memberInfo: | PlanningAreaMemberInfo JSON | |

Returns

PlanningAreaInfo |

| |
| --- |
| getFilters |
| getFilters(): PlanningAreaFilter[]<br>Returns filters that define the planning area. Filters on Version and Measure dimensions are ignored.<br>Returns<br>PlanningAreaFilter[] |

| | | |
| --- | --- | --- |
| removeFilter |
| removeFilter(dimension: string | DimensionInfo JSON): PlanningAreaInfo

Removes any filter that is set on the dimension.

Parameters

| | | |
| --- | --- | --- |
| dimension: | string | DimensionInfo JSON | |

Returns

PlanningAreaInfo |

Type Library
planning

C
\


<a name="planningareamemberinfo"></a>

PlanningAreaMemberInfo

can be passed as a JSON object to method arguments

Since

2023.20

Property Summary

| |
| --- |
| Name and Description |
| hierarchy: string |
| members: string[] |

Property Detail

| |
| --- |
| hierarchy |
| hierarchy: string |

| |
| --- |
| members |
| members: string[] |

Type Library
planning

E
\


<a name="planningcategory"></a>

PlanningCategory

Since

2019.4

Last Update

2019.7

Property Summary

| |
| --- |
| Name and Description |
| static Actuals: PlanningCategory<br>Predefined "Actuals" category of the SAP Analytic Cloud planning model |
| static Budget: PlanningCategory<br>Predefined "Budget" category of the SAP Analytic Cloud planning model |
| static Forecast: PlanningCategory<br>Predefined "Forecast" category of the SAP Analytic Cloud planning model |
| static Planning: PlanningCategory<br>Predefined "Planning" category of the SAP Analytic Cloud planning model |
| static RollingForecast: PlanningCategory<br>Predefined "Rolling Forecast" category of the SAP Analytic Cloud planning model |

Property Detail

| |
| --- |
| Actuals |
| staticActuals: PlanningCategory<br>Predefined "Actuals" category of the SAP Analytic Cloud planning model<br>Since<br>2019.7 |

| |
| --- |
| Budget |
| staticBudget: PlanningCategory<br>Predefined "Budget" category of the SAP Analytic Cloud planning model |

| |
| --- |
| Forecast |
| staticForecast: PlanningCategory<br>Predefined "Forecast" category of the SAP Analytic Cloud planning model |

| |
| --- |
| Planning |
| staticPlanning: PlanningCategory<br>Predefined "Planning" category of the SAP Analytic Cloud planning model |

| |
| --- |
| RollingForecast |
| staticRollingForecast: PlanningCategory<br>Predefined "Rolling Forecast" category of the SAP Analytic Cloud planning model |

Type Library
planning

E
\


<a name="planningcopyoption"></a>

PlanningCopyOption

Since

2019.7

Last Update

2023.20

Property Summary

| |
| --- |
| Name and Description |
| static AllData: PlanningCopyOption<br>All data is included when copying a version. |
| static CustomizedPlanningArea: PlanningCopyOption<br>Planning Area with customized filter is included when copying a version. |
| static NoData: PlanningCopyOption<br>All data is excluded when copying a version. |
| static PlanningArea: PlanningCopyOption<br>Deprecated This option is deprecated, Planning Area data is included when copying a version. |
| static VisibleData: PlanningCopyOption<br>Visible data based on the table is included when copying a version. |

Property Detail

| |
| --- |
| AllData |
| staticAllData: PlanningCopyOption<br>All data is included when copying a version. |

| |
| --- |
| CustomizedPlanningArea |
| staticCustomizedPlanningArea: PlanningCopyOption<br>Planning Area with customized filter is included when copying a version.<br>Since<br>2023.20 |

| |
| --- |
| NoData |
| staticNoData: PlanningCopyOption<br>All data is excluded when copying a version. |

| |
| --- |
| PlanningArea |
| staticPlanningArea: PlanningCopyOption <br>Deprecated This option is deprecated, Planning Area data is included when copying a version.<br>Since<br>2021.19<br>Deprecated<br>2024.12 |

| |
| --- |
| VisibleData |
| staticVisibleData: PlanningCopyOption<br>Visible data based on the table is included when copying a version.<br>Since<br>2023.20 |

Type Library
planning-model

C
\


<a name="planningmodel"></a>

PlanningModel

Since

2020.9

Last Update

2025.7

Method Summary

| |
| --- |
| Name and Description |
| createMembers(dimensionId: string, members: PlanningModelMember JSON | PlanningModelMember[]JSON): boolean<br>Creates planning model members. |
| deleteMembers(dimensionId: string, members: string | string[]): boolean<br>Deletes planning model members. |
| getMember(dimensionId: string, memberId: string): PlanningModelMember<br>Returns a planning model member. |
| getMembers(dimensionId: string, options?: PlanningModelMemberOptions JSON): PlanningModelMember[]<br>Returns planning model members. |
| getPrivateVersion(versionId: string): PlanningModelPrivateVersion<br>Returns a private version associated with the data source. |
| getPrivateVersions(): PlanningModelPrivateVersion[]<br>Returns all private versions associated with the data source. |
| getPublicVersion(versionId: string): PlanningModelPublicVersion<br>Returns a public version associated with the data source. |
| getPublicVersions(): PlanningModelPublicVersion[]<br>Returns all public versions associated with the data source. |
| updateMembers(dimensionId: string, members: PlanningModelMember JSON | PlanningModelMember[]JSON): boolean<br>Updates planning model members. |

Method Detail

| | | |
| --- | --- | --- |
| createMembers |
| createMembers(dimensionId: string, members: PlanningModelMember JSON | PlanningModelMember[]JSON): boolean

Creates planning model members. If this operation was successful, then true is returned, and false if it wasn't. Note: Currently, this operation supports only generic dimensions. Note: Call DataSource.refreshData() or Application.refreshData() after this operation, if you need the chart or table to reflect the created members in subsequent method calls operating on visible cells or elements of those widgets, for example, Planning.setUserInput(), DataSource.getData(), or DataSource.getPlanning().getState(). Note: Creating a member with the same member ID as an already existing member results in an error.

Parameters

| | | |
| --- | --- | --- |
| dimensionId: | string | |
| members: | PlanningModelMember JSON | PlanningModelMember[]JSON | |

Returns

boolean |

| | | |
| --- | --- | --- |
| deleteMembers |
| deleteMembers(dimensionId: string, members: string | string[]): boolean

Deletes planning model members. If this operation was successful, then true is returned, and false if it wasn't. Note: Currently, this operation supports only generic dimensions. Note: Call DataSource.refreshData() or Application.refreshData() after this operation, if you need the chart or table to reflect the deleted members in subsequent method calls operating on visible cells or elements of those widgets, for example, Planning.setUserInput(), DataSource.getData(), or DataSource.getPlanning().getState().

Parameters

| | | |
| --- | --- | --- |
| dimensionId: | string | |
| members: | string | string[] | |

Returns

boolean |

| | | |
| --- | --- | --- |
| getMember |
| getMember(dimensionId: string, memberId: string): PlanningModelMember

Returns a planning model member. Note: Currently, this operation supports only generic dimensions.

Parameters

| | | |
| --- | --- | --- |
| dimensionId: | string | |
| memberId: | string | |

Returns

PlanningModelMember |

| | | |
| --- | --- | --- |
| getMembers |
| getMembers(dimensionId: string, options?: PlanningModelMemberOptions JSON): PlanningModelMember[]

Returns planning model members. Note: Currently, this operation supports only generic dimensions. Note: If you specify options, then you can control the returned set of members even finer, for example, the number of returned members (default: 200).

Parameters

| | | |
| --- | --- | --- |
| dimensionId: | string | |
| optionsOptional: | PlanningModelMemberOptions JSON | |

Returns

PlanningModelMember[] |

| | | |
| --- | --- | --- |
| getPrivateVersion |
| getPrivateVersion(versionId: string): PlanningModelPrivateVersion

Returns a private version associated with the data source. If there is no private version with this version ID, then undefined is returned.

Parameters

| | | |
| --- | --- | --- |
| versionId: | string | |

Returns

PlanningModelPrivateVersion

Since

2025.7 |

| |
| --- |
| getPrivateVersions |
| getPrivateVersions(): PlanningModelPrivateVersion[]<br>Returns all private versions associated with the data source.<br>Returns<br>PlanningModelPrivateVersion[]<br>Since<br>2025.7 |

| | | |
| --- | --- | --- |
| getPublicVersion |
| getPublicVersion(versionId: string): PlanningModelPublicVersion

Returns a public version associated with the data source. If there is no public version with this version ID, then undefined is returned.

Parameters

| | | |
| --- | --- | --- |
| versionId: | string | |

Returns

PlanningModelPublicVersion

Since

2025.7 |

| |
| --- |
| getPublicVersions |
| getPublicVersions(): PlanningModelPublicVersion[]<br>Returns all public versions associated with the data source.<br>Returns<br>PlanningModelPublicVersion[]<br>Since<br>2025.7 |

| | | |
| --- | --- | --- |
| updateMembers |
| updateMembers(dimensionId: string, members: PlanningModelMember JSON | PlanningModelMember[]JSON): boolean

Updates planning model members. If this operation was successful, then true is returned, and false if it wasn't. Note: Currently, this operation supports only generic dimensions. Note: Call DataSource.refreshData() or Application.refreshData() after this operation, if you need the chart or table to reflect the updated members in subsequent method calls operating on visible cells or elements of those widgets, for example, Planning.setUserInput(), DataSource.getData(), or DataSource.getPlanning().getState().

Parameters

| | | |
| --- | --- | --- |
| dimensionId: | string | |
| members: | PlanningModelMember JSON | PlanningModelMember[]JSON | |

Returns

boolean |

E
\


<a name="planningmodelcopyoption"></a>

PlanningModelCopyOption

Since

2025.7

Property Summary

| |
| --- |
| Name and Description |
| static AllData: PlanningModelCopyOption<br>All data is included when copying a version. |
| static NoData: PlanningModelCopyOption<br>All data is excluded when copying a version. |

Property Detail

| |
| --- |
| AllData |
| staticAllData: PlanningModelCopyOption<br>All data is included when copying a version. |

| |
| --- |
| NoData |
| staticNoData: PlanningModelCopyOption<br>All data is excluded when copying a version. |

Type Library
planning-model

C
\


<a name="planningmodelmember"></a>

PlanningModelMember

can be passed as a JSON object to method arguments

An object defining a planning model member

Since

2020.9

Last Update

2020.13

Property Summary

| |
| --- |
| Name and Description |
| dataLockingOwners: PlanningModelMemberPrincipal[]JSON<br>Users and teams who own data locks on the planning model member |
| description: string<br>Description of the planning model member |
| hierarchies: PlanningModelMemberHierarchies<br>Hierarchies of the planning model member. |
| id: string<br>ID of the planning model member |
| properties: PlanningModelMemberProperties<br>Properties of the planning model member |
| readers: PlanningModelMemberPrincipal[]JSON<br>Users and teams who can read the planning model member |
| responsible: PlanningModelMemberPrincipal JSON<br>Responsible user for the planning model member |
| writers: PlanningModelMemberPrincipal[]JSON<br>Users and teams who can update the planning model member |

Property Detail

| |
| --- |
| dataLockingOwners |
| dataLockingOwners: PlanningModelMemberPrincipal[]JSON<br>Users and teams who own data locks on the planning model member<br>Since<br>2020.13 |

| |
| --- |
| description |
| description: string<br>Description of the planning model member |

| |
| --- |
| hierarchies |
| hierarchies: PlanningModelMemberHierarchies<br>Hierarchies of the planning model member. Here's an example of the structure of the hierarchies object, hierarchies: { MyHierarchyId: { parentId: "HCUST0001", previousSiblingId: "CUST0007" } }. In this example, "MyHierarchyId" represents the ID of the hierarchy in your model. |

| |
| --- |
| id |
| id: string<br>ID of the planning model member |

| |
| --- |
| properties |
| properties: PlanningModelMemberProperties<br>Properties of the planning model member |

| |
| --- |
| readers |
| readers: PlanningModelMemberPrincipal[]JSON<br>Users and teams who can read the planning model member |

| |
| --- |
| responsible |
| responsible: PlanningModelMemberPrincipal JSON<br>Responsible user for the planning model member<br>Since<br>2020.13 |

| |
| --- |
| writers |
| writers: PlanningModelMemberPrincipal[]JSON<br>Users and teams who can update the planning model member |

Type Library
planning-model

C
\


<a name="planningmodelmemberhierarchies"></a>

PlanningModelMemberHierarchies

is an object< PlanningModelMemberHierarchy >

Hierarchies of the planning model member. Here's an example of the structure of the hierarchies object, hierarchies: { MyHierarchyId: { parentId: "HCUST0001", previousSiblingId: "CUST0007" } }. In this example, "MyHierarchyId" represents the ID of the hierarchy in your model.

Since

2020.9

Type Library
planning-model

C
\


<a name="planningmodelmemberhierarchy"></a>

PlanningModelMemberHierarchy

can be passed as a JSON object to method arguments

An object defining a planning model member hierarchy

Since

2020.9

Property Summary

| |
| --- |
| Name and Description |
| parentId: string<br>Parent ID of a planning model member hierarchy |
| previousSiblingId: string<br>Previous sibling ID of a planning model member hierarchy. |

Property Detail

| |
| --- |
| parentId |
| parentId: string<br>Parent ID of a planning model member hierarchy |

| |
| --- |
| previousSiblingId |
| previousSiblingId: string<br>Previous sibling ID of a planning model member hierarchy. The planning model member is inserted after the specified sibling. If previousSiblingId is an empty string (""), then the planning model member is inserted as the first sibling. If the property previousSiblingId is omitted, then the planning model member is appended as the last sibling. |

Type Library
planning-model

C
\


<a name="planningmodelmemberoptions"></a>

PlanningModelMemberOptions

can be passed as a JSON object to method arguments

An object specifiying planning model members

Since

2020.9

Property Summary

| |
| --- |
| Name and Description |
| hierarchyId: string<br>Hierarchy ID |
| limit: integer<br>Maximum number of returned members. |
| offset: integer<br>Number of members to skip before starting to read members |
| parentId: string<br>Parent ID |

Property Detail

| |
| --- |
| hierarchyId |
| hierarchyId: string<br>Hierarchy ID |

| |
| --- |
| limit |
| limit: integer<br>Maximum number of returned members. It must be zero or a positive number. If the limit isn't specified or invalid, then the default value is used (default: 200). |

| |
| --- |
| offset |
| offset: integer<br>Number of members to skip before starting to read members |

| |
| --- |
| parentId |
| parentId: string<br>Parent ID |

Type Library
planning-model

C
\


<a name="planningmodelmemberprincipal"></a>

PlanningModelMemberPrincipal

can be passed as a JSON object to method arguments

An object defining a user or a team who has certain access to a planning model member

Since

2020.9

Property Summary

| |
| --- |
| Name and Description |
| id: string<br>ID of a user or a team that has certain access to a planning model member |
| type: UserType<br>Type of a user or a team who has certain access to a planning model member |

Property Detail

| |
| --- |
| id |
| id: string<br>ID of a user or a team that has certain access to a planning model member |

| |
| --- |
| type |
| type: UserType<br>Type of a user or a team who has certain access to a planning model member |

Type Library
planning-model

C
\


<a name="planningmodelmemberproperties"></a>

PlanningModelMemberProperties

is an object<string>

Properties of a planning model member

Since

2020.9

C
\


<a name="planningmodelprivateversion"></a>

PlanningModelPrivateVersion

extends PlanningModelVersion

Since

2025.7

Method Summary

| |
| --- |
| Name and Description |
| getOwnerId(): string<br>Returns the user ID of the user who created this private version. |
| publish(targetVersion?: PlanningModelPublicVersion, updateChangedDataOnly?: boolean, publishOptions?: PrivateVersionPublishOptions JSON): boolean<br>Creates a public version from this private version. |
| publishAs(newVersionName: string, versionCategory?: PlanningCategory): boolean<br>Creates a public version with the specified name from this private version. |

| |
| --- |
| Inherited from PlanningModelVersion |
| copy, deleteVersion, getDisplayId, getId, redo, undo |

Method Detail

| |
| --- |
| getOwnerId |
| getOwnerId(): string<br>Returns the user ID of the user who created this private version.<br>Returns<br>string |

| | | |
| --- | --- | --- |
| publish |
| publish(targetVersion?: PlanningModelPublicVersion, updateChangedDataOnly?: boolean, publishOptions?: PrivateVersionPublishOptions JSON): boolean

Creates a public version from this private version. If a public target version is specified, then updateChangedDataOnly specifies whether to update only data that was changed or to update all valid member combinations (default: false). If no public target version is specified, then the original public version is overwritten that was used when the private version was created. If the public target version is unrelated to the private version and updateChangedDataOnly is false, then the private version overwrites the public target version. If the public target version is unrelated to the private version and updateChangedDataOnly is true, then only the changed data is published to the public target version. If this operation was successful, then this private version is deleted.

Parameters

| | | |
| --- | --- | --- |
| targetVersionOptional: | PlanningModelPublicVersion | |
| updateChangedDataOnlyOptional: | boolean | |
| publishOptionsOptional: | PrivateVersionPublishOptions JSON | |

Returns

boolean |

| | | |
| --- | --- | --- |
| publishAs |
| publishAs(newVersionName: string, versionCategory?: PlanningCategory): boolean

Creates a public version with the specified name from this private version. If no category is specified, then the category of the private version is used for the new public version. If this operation was successful, then this private version is deleted.

Parameters

| | | |
| --- | --- | --- |
| newVersionName: | string | |
| versionCategoryOptional: | PlanningCategory | |

Returns

boolean |

E
\


<a name="planningmodelpubliceditoption"></a>

PlanningModelPublicEditOption

Since

2025.7

Property Summary

| |
| --- |
| Name and Description |
| static AllData: PlanningModelPublicEditOption<br>All data is included when starting edit version. |
| static PlanningArea: PlanningModelPublicEditOption<br>Planning Area data is included when starting edit version. |

Property Detail

| |
| --- |
| AllData |
| staticAllData: PlanningModelPublicEditOption<br>All data is included when starting edit version. |

| |
| --- |
| PlanningArea |
| staticPlanningArea: PlanningModelPublicEditOption<br>Planning Area data is included when starting edit version. |

C
\


<a name="planningmodelpublicversion"></a>

PlanningModelPublicVersion

extends PlanningModelVersion

Since

2025.7

Last Update

2025.13

Method Summary

| |
| --- |
| Name and Description |
| isDirty(): boolean<br>Returns whether this version has been modified and can be published or reverted. |
| publish(publishOptions?: PublicVersionPublishOptions JSON): boolean<br>Publishes the modifications applied by the user. |
| revert(): boolean<br>Reverts the modifications applied by the user. |
| startEditMode(planningPublicEditOption: PlanningModelPublicEditOption): boolean<br>Starts the edit mode for public version. |
| updateProperty(propertyName: string, propertyValue: string | PlanningCategory): boolean<br>Updates the property of this version. |

| |
| --- |
| Inherited from PlanningModelVersion |
| copy, deleteVersion, getDisplayId, getId, redo, undo |

Method Detail

| |
| --- |
| isDirty |
| isDirty(): boolean<br>Returns whether this version has been modified and can be published or reverted.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| publish |
| publish(publishOptions?: PublicVersionPublishOptions JSON): boolean

Publishes the modifications applied by the user. If this operation was successful, then true is returned, and false if it wasn't. Note: Before publishing, check with PlanningModelPublicVersion.isDirty() if there are modifications available that can be published. When there're conflicting changes, if the related parameter isn't specified, the user's changes overwrite the other ones.

Parameters

| | | |
| --- | --- | --- |
| publishOptionsOptional: | PublicVersionPublishOptions JSON | |

Returns

boolean |

| |
| --- |
| revert |
| revert(): boolean<br>Reverts the modifications applied by the user. If this operation was successful, then true is returned, and false if it wasn't. Note: Before reverting, check with PlanningModelPublicVersion.isDirty() if there are modifications available that can be reverted.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| startEditMode |
| startEditMode(planningPublicEditOption: PlanningModelPublicEditOption): boolean

Starts the edit mode for public version. If this operation was successful, then true is returned, and false if it wasn't. Note: Before starting edit mode, check with PlanningModelPublicVersion.isDirty() to false.

Parameters

| | | |
| --- | --- | --- |
| planningPublicEditOption: | PlanningModelPublicEditOption | |

Returns

boolean |

| | | |
| --- | --- | --- |
| updateProperty |
| updateProperty(propertyName: string, propertyValue: string | PlanningCategory): boolean

Updates the property of this version. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

| | | |
| --- | --- | --- |
| propertyName: | string | |
| propertyValue: | string | PlanningCategory | |

Returns

boolean

Since

2025.13 |

C
\


<a name="planningmodelversion"></a>

PlanningModelVersion

is abstract

Direct Subclasses

PlanningModelPrivateVersion, PlanningModelPublicVersion

Since

2025.7

Last Update

2025.13

Method Summary

| |
| --- |
| Name and Description |
| copy(newVersionName: string, planningCopyOption: PlanningModelCopyOption, versionCategory?: PlanningCategory): boolean<br>Creates a private copy of this version. |
| deleteVersion(): boolean<br>Deletes this version. |
| getDisplayId(): string<br>Returns the display ID of this version. |
| getId(): string<br>Returns the ID of this version. |
| redo(): boolean<br>Redoes changes to the version. |
| undo(): boolean<br>Undoes changes to the version. |

Method Detail

| | | |
| --- | --- | --- |
| copy |
| copy(newVersionName: string, planningCopyOption: PlanningModelCopyOption, versionCategory?: PlanningCategory): boolean

Creates a private copy of this version. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

| | | |
| --- | --- | --- |
| newVersionName: | string | |
| planningCopyOption: | PlanningModelCopyOption | |
| versionCategoryOptional: | PlanningCategory | |

Returns

boolean |

| |
| --- |
| deleteVersion |
| deleteVersion(): boolean<br>Deletes this version. If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean |

| |
| --- |
| getDisplayId |
| getDisplayId(): string<br>Returns the display ID of this version. You can use it, for example, to display the version in dropdowns or texts.<br>Returns<br>string |

| |
| --- |
| getId |
| getId(): string<br>Returns the ID of this version. You can use it, for example, when calling DataSource.getData().<br>Returns<br>string |

| |
| --- |
| redo |
| redo(): boolean<br>Redoes changes to the version. If the operation is successful, then "true" is returned, and "false" if it isn't.<br>Returns<br>boolean<br>Since<br>2025.13 |

| |
| --- |
| undo |
| undo(): boolean<br>Undoes changes to the version. If the operation is successful, then "true" is returned, and "false" if it isn't.<br>Returns<br>boolean<br>Since<br>2025.13 |

Type Library
planning

C
\


<a name="planningprivateversion"></a>

PlanningPrivateVersion

extends PlanningVersion

Since

2019.4

Last Update

2023.15

Method Summary

| |
| --- |
| Name and Description |
| getOwnerId(): string<br>Returns the user ID of the user who created this private version. |
| publish(targetVersion?: PlanningPublicVersion, updateChangedDataOnly?: boolean, publishOptions?: PrivateVersionPublishOptions JSON): boolean<br>Creates a public version from this private version. |
| publishAs(newVersionName: string, versionCategory?: PlanningCategory): boolean<br>Creates a public version with the specified name from this private version. |

| |
| --- |
| Inherited from PlanningVersion |
| copy, deleteVersion, getDisplayId, getId, redo, undo |

Method Detail

| |
| --- |
| getOwnerId |
| getOwnerId(): string<br>Returns the user ID of the user who created this private version.<br>Returns<br>string<br>Since<br>2019.8 |

| | | |
| --- | --- | --- |
| publish |
| publish(targetVersion?: PlanningPublicVersion, updateChangedDataOnly?: boolean, publishOptions?: PrivateVersionPublishOptions JSON): boolean

Creates a public version from this private version. If a public target version is specified, then updateChangedDataOnly specifies whether to update only data that was changed or to update all valid member combinations (default: false). If no public target version is specified, then the original public version is overwritten that was used when the private version was created. If the public target version is unrelated to the private version and updateChangedDataOnly is false, then the private version overwrites the public target version. If the public target version is unrelated to the private version and updateChangedDataOnly is true, then only the changed data is published to the public target version. If this operation was successful, then this private version is deleted.

Parameters

| | | |
| --- | --- | --- |
| targetVersionOptional: | PlanningPublicVersion | |
| updateChangedDataOnlyOptional: | boolean | |
| publishOptionsOptional: | PrivateVersionPublishOptions JSON | |

Returns

boolean

Last Update

2023.15 |

| | | |
| --- | --- | --- |
| publishAs |
| publishAs(newVersionName: string, versionCategory?: PlanningCategory): boolean

Creates a public version with the specified name from this private version. If no category is specified, then the category of the private version is used for the new public version. If this operation was successful, then this private version is deleted.

Parameters

| | | |
| --- | --- | --- |
| newVersionName: | string | |
| versionCategoryOptional: | PlanningCategory | |

Returns

boolean |

Type Library
planning

E
\


<a name="planningpubliceditoption"></a>

PlanningPublicEditOption

Since

2023.20

Property Summary

| |
| --- |
| Name and Description |
| static AllData: PlanningPublicEditOption<br>All data is included when starting edit version. |
| static CustomizedPlanningArea: PlanningPublicEditOption<br>Planning Area with customized filter is included when starting edit version. |
| static PlanningArea: PlanningPublicEditOption<br>Planning Area data is included when starting edit version. |
| static TableContextWithPlanningArea: PlanningPublicEditOption<br>Table context with Planning Area is included when starting edit version. |

Property Detail

| |
| --- |
| AllData |
| staticAllData: PlanningPublicEditOption<br>All data is included when starting edit version. |

| |
| --- |
| CustomizedPlanningArea |
| staticCustomizedPlanningArea: PlanningPublicEditOption<br>Planning Area with customized filter is included when starting edit version. |

| |
| --- |
| PlanningArea |
| staticPlanningArea: PlanningPublicEditOption<br>Planning Area data is included when starting edit version. |

| |
| --- |
| TableContextWithPlanningArea |
| staticTableContextWithPlanningArea: PlanningPublicEditOption<br>Table context with Planning Area is included when starting edit version. |

Type Library
planning

C
\


<a name="planningpublicversion"></a>

PlanningPublicVersion

extends PlanningVersion

Since

2019.4

Last Update

2024.12

Method Summary

| |
| --- |
| Name and Description |
| isDirty(): boolean<br>Returns whether this version has been modified and can be published or reverted. |
| publish(publishOptions?: PublicVersionPublishOptions JSON): boolean<br>Publishes the modifications applied by the user. |
| revert(): boolean<br>Reverts the modifications applied by the user. |
| startEditMode(planningPublicEditOption: PlanningPublicEditOption, planningAreaFilter?: PlanningAreaFilter[]JSON): boolean<br>Starts the edit mode for public version. |

| |
| --- |
| Inherited from PlanningVersion |
| copy, deleteVersion, getDisplayId, getId, redo, undo |

Method Detail

| |
| --- |
| isDirty |
| isDirty(): boolean<br>Returns whether this version has been modified and can be published or reverted.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| publish |
| publish(publishOptions?: PublicVersionPublishOptions JSON): boolean

Publishes the modifications applied by the user. If this operation was successful, then true is returned, and false if it wasn't. Note: Before publishing, check with PlanningPublicVersion.isDirty() if there are modifications available that can be published. When there're conflicting changes, if the related parameter isn't specified, the user's changes overwrite the other ones.

Parameters

| | | |
| --- | --- | --- |
| publishOptionsOptional: | PublicVersionPublishOptions JSON | |

Returns

boolean

Last Update

2023.15 |

| |
| --- |
| revert |
| revert(): boolean<br>Reverts the modifications applied by the user. If this operation was successful, then true is returned, and false if it wasn't. Note: Before reverting, check with PlanningPublicVersion.isDirty() if there are modifications available that can be reverted.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| startEditMode |
| startEditMode(planningPublicEditOption: PlanningPublicEditOption, planningAreaFilter?: PlanningAreaFilter[]JSON): boolean

Starts the edit mode for public version. If this operation was successful, then true is returned, and false if it wasn't. Note: Before starting edit mode, check with PlanningPublicVersion.isDirty() to false.

Parameters

| | | |
| --- | --- | --- |
| planningPublicEditOption: | PlanningPublicEditOption | |
| planningAreaFilterOptional: | PlanningAreaFilter[]JSON | |

Returns

boolean

Since

2024.12 |

Type Library
planning

C
\


<a name="planningversion"></a>

PlanningVersion

is abstract

Direct Subclasses

PlanningPrivateVersion, PlanningPublicVersion

Since

2019.4

Last Update

2025.13

Method Summary

| |
| --- |
| Name and Description |
| copy(newVersionName: string, planningCopyOption: PlanningCopyOption, versionCategory?: PlanningCategory, planningAreaFilter?: PlanningAreaFilter[]JSON, hideUnbooked?: boolean): boolean<br>Creates a private copy of this version. |
| deleteVersion(): boolean<br>Deletes this version. |
| getDisplayId(): string<br>Returns the display ID of this version. |
| getId(): string<br>Returns the ID of this version. |
| redo(): boolean<br>Redoes changes to the version. |
| undo(): boolean<br>Undoes changes to the version. |

Method Detail

| | | |
| --- | --- | --- |
| copy |
| copy(newVersionName: string, planningCopyOption: PlanningCopyOption, versionCategory?: PlanningCategory, planningAreaFilter?: PlanningAreaFilter[]JSON, hideUnbooked?: boolean): boolean

Creates a private copy of this version. If this operation was successful, then true is returned, and false if it wasn't.

Parameters

| | | |
| --- | --- | --- |
| newVersionName: | string | |
| planningCopyOption: | PlanningCopyOption | |
| versionCategoryOptional: | PlanningCategory | |
| planningAreaFilterOptional: | PlanningAreaFilter[]JSON | |
| hideUnbookedOptional: | boolean | |

Returns

boolean

Since

2019.7

Last Update

2025.12 |

| |
| --- |
| deleteVersion |
| deleteVersion(): boolean<br>Deletes this version. If this operation was successful, then true is returned, and false if it wasn't.<br>Returns<br>boolean |

| |
| --- |
| getDisplayId |
| getDisplayId(): string<br>Returns the display ID of this version. You can use it, for example, to display the version in dropdowns or texts.<br>Returns<br>string<br>Since<br>2019.5 |

| |
| --- |
| getId |
| getId(): string<br>Returns the ID of this version. You can use it, for example, when calling DataSource.getData().<br>Returns<br>string |

| |
| --- |
| redo |
| redo(): boolean<br>Redoes changes to the version. If the operation is successful, then "true" is returned, and "false" if it isn't.<br>Returns<br>boolean<br>Since<br>2025.13 |

| |
| --- |
| undo |
| undo(): boolean<br>Undoes changes to the version. If the operation is successful, then "true" is returned, and "false" if it isn't.<br>Returns<br>boolean<br>Since<br>2025.13 |

Type Library
containers

C
\


<a name="scheduling"></a>

Scheduling

Since

2020.3

Last Update

2021.16

Method Summary

| |
| --- |
| Name and Description |
| static isRunBySchedulePublication(): boolean<br>Returns whether the analytic application is run by scheduling. |
| static logMessage(messageType: SchedulingMessageType, messageText: string): void<br>Log a message in the scheduling status details. |
| static openSubscriptionDialog(): void<br>Opens the scheduling subscription dialog. |
| static publish(): boolean<br>Triggers the scheduling of an export in manual mode. |

Method Detail

| |
| --- |
| isRunBySchedulePublication |
| staticisRunBySchedulePublication(): boolean<br>Returns whether the analytic application is run by scheduling.<br>Returns<br>boolean |

| | | |
| --- | --- | --- |
| logMessage |
| staticlogMessage(messageType: SchedulingMessageType, messageText: string): void

Log a message in the scheduling status details.

Parameters

| | | |
| --- | --- | --- |
| messageType: | SchedulingMessageType | |
| messageText: | string | |

Since

2020.17 |

| |
| --- |
| openSubscriptionDialog |
| staticopenSubscriptionDialog(): void<br>Opens the scheduling subscription dialog.<br>Mobile Support<br>Not supported on mobile devices.<br>Since<br>2021.16 |

| |
| --- |
| publish |
| staticpublish(): boolean<br>Triggers the scheduling of an export in manual mode.<br>Returns<br>boolean |

Type Library
standard

E
\


<a name="schedulingmessagetype"></a>

SchedulingMessageType

Since

2020.17

Property Summary

| |
| --- |
| Name and Description |
| static Error: SchedulingMessageType<br>Error message |
| static Info: SchedulingMessageType<br>Information message |
| static Warning: SchedulingMessageType<br>Warning message |

Property Detail

| |
| --- |
| Error |
| staticError: SchedulingMessageType<br>Error message |

| |
| --- |
| Info |
| staticInfo: SchedulingMessageType<br>Information message |

| |
| --- |
| Warning |
| staticWarning: SchedulingMessageType<br>Warning message |

Type Library
search-to-insight

C
\


Compass

<a name="compass"></a>

Type Library: compass | Since: 2026.6

Widget for SAP Analytics Cloud's Compass feature — provides AI-assisted insights and recommendations for seamless planning scenarios. Extends Widget.

Inherited Methods (from Widget):

  • getCssClass(): string
  • getLayout(): object
  • isVisible(): boolean
  • setCssClass(cssClass: string): void
  • setVisible(isVisible: boolean): void
if (Compass_1.isVisible()) {
    Compass_1.setVisible(false);
}

Source: SKILL.md on GitHub

1 alert16d5 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    The skill is a comprehensive reference and template collection for SAP Analytics Cloud (SAC) scripting. It provides secure instructions for setting up an associated Model Context Protocol (MCP) server, including commit pinning and security flags during installation. It also incorporates multiple security best practices for developers, such as origin validation for iframe communication.

  • Socket16d

    1 alert: gptAnomaly

  • Snyk16d

    Risk: MEDIUM · 1 issue

  • Runlayer6mo

    32/61 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 620a19a. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 weeks ago.

Activeupdated 2 months ago
Other metadata
metadata
{
  "maintainer": "Eduard Jiglau",
  "maintainer_email": "hello@sap-ai-skills.com",
  "website": "https://sap-ai-skills.com",
  "version": "2.4.1",
  "last_verified": "2026-06-11",
  "sac_version": "Q2 2026 (2026.8)",
  "api_reference_version": "2025.20 (OSE Q2 2026)",
  "documentation_source": "https://help.sap.com/docs/SAP_ANALYTICS_CLOUD",
  "reference_files": 66,
  "template_patterns": 56,
  "agents": 4,
  "commands": 4,
  "status": "docs_audited_runtime_pending",
  "known_issues": [
    "Live SAC story/runtime checks require tenant evidence before claiming production validation."
  ]
}

README badge

README badge for secondsky/sap-skills/sap-sac-scripting