Quintiq file version 2.0 #parent: btnExportCalendars Response OnClick () id:Response_LibCal_pnlExportButton_btnExportCalendars_OnClick { #keys: '[131094.0.1483458398]' Body: [* // Trigger the export of the calendars to XLS. // The Server will store the data that must we written to the file in attribute ExportData // of the ExportSource (a subtype of LibCal_ImportExport). // Attribute ExportID of the ExportSource is 'monitored' by lblExportID using databinding. // When the value of the attribute changes, the label will trigger the writing of the data to file // iff the ExportID matches the value that is provided to the Server by this method. // So the assignment of exportID to attribute ExportID acts as a callback from the Server to the // Client that the ExportData is ready to be retrieved. // Get the calendars that will be exported. calendars := LibCal_pnlExportButton.GetCalendars(); // Generate an exportID and Register it so that there can be recognized later on that the ExportData is for this Client. exportID := Key::NextPersistentKey(); lblMyExportID.Text( [String]exportID ); // Trigger the export, providing the exportID and the calendars-to-be-exported. exportSource := LibCal_pnlExportButton.GetExportSource(); if( not isnull( exportSource ) ) { exportSource.Export( exportID, calendars ); } *] CanBindMultiple: false DefinitionID: 'Responsedef_GUIButtonBase_OnClick' Precondition: [* return LibCal_GlobalState.HasImportExportImplemented(); *] }