Renders an interactive FullCalendar widget that loads events via RPC, supports drag-to-resize, and opens a form on event click.
CALENDAR — set as ReportType in def_report.
def Render(self, Param1="", Param2="", Param3="") -> str:
Param1 is passed as the user/filter parameter to event RPC calls. The query must return a single row with columns: initial date, slot min time, slot max time.
Options read from self._Options JSON.
| Key | Effect |
|---|---|
| (plain string) | FullCalendar initialView name (e.g. timeGridWeek). Append :formcode to set the form opened on event click. Defaults to timeGridWeek. |
RpcEvents(data)Fetches events for the calendar's visible date range via the CONVERSATION_RECEIVE webhook and returns a list of event objects with constraint metadata.
RpcResize(data)Handles event drag/resize by calling ObjCalendar.update_event_time.
Requires FullCalendar 6.1.15 (CDN), Bootstrap 5.1.3 CSS (CDN), and Bootstrap Icons (CDN). Events auto-refresh every 10 seconds. Uses axion.rpc.js for server communication.