Previous Next JavaScript must be enabled to correctly display this content

## 10.2.7 About Dynamic Action Support for Calendar

Use the Dynamic Action Create Wizard to specify an action that is performed when a defined set of conditions occur. You can specify which elements are affected by the action and when and how they are affected.

Dynamic actions provide a way to define complex client-side behavior declaratively without the need for JavaScript. When working with dynamic actions, you should be mindful of the fact that the more dynamic actions you add to a page, the greater your overall page size. This is because the dynamic action framework emits additional code to the client for each dynamic action defined, which then also must be downloaded and executed by the framework in the client.

Dynamic actions contain a condition that can be specified to control the action. APEX components such as reports or charts can react to specific calendar events. For example, if you view a calendar and click a button to view a subsequent month, you can create a dynamic action to automatically refresh an associated report.

To use this feature, the developer creates a new dynamic action on the Calendar page in Page Designer. Select the new dynamic action in the Dynamic Action tab in the left pane of Page Designer. Once created, the new dynamic action displays in red with the label New. Then the developer edits the dynamic action attributes in the Property Editor. In Property Editor, locate and expand When attribute. Under the When attribute, for Event, select one of the following events:

- Date Selected [Calendar]

  This event fires when the user selects an empty date or date range either with the mouse or with the keyboard. If the developer provides a "create link" in the calendar attributes, no event fires.

  Information about the current view is being passed as the "data" object:

      { "newStartDate"::: "newEndDate"::: }

      { "newStartDate":{first day of selection} (YYYYMMDDHH24MISS),
       "newEndDate": {last day of selection} YYYYMMDDHH24MISS }

- Event Selected [Calendar]

  This event fires when the user clicks an existing event with the mouse or selects it with the keyboard. When the developer provided an "edit link" in the Calendar attributes, no event is being fired. The "data" object contains the jQuery FullCalendar JSON representation of the event.

  See Also:

  Full Calendar documentation for Event Object.

- View Changed [Calendar]

  This event fires when either the view type changes (day, week, month, list) or when the view changes to its previous or next view page. The "data" object contains the following information:

      { "viewType": {view type, day, week, month or list},
       "startDate": {first day of view} (YYYYMMDDHH24MISS),
       "endDate": {last day of view} (YYYYMMDDHH24MISS) }

See Also:

Managing Dynamic Actions and Debugging Dynamic Actions for information on how to debug problems

Parent topic: Creating Calendars