vcl-cxschedulerstorage-dot-tcxcustomschedulerstorage-7a9947fb.md
Publishes all newly created user events and updates content displayed in the associated Scheduler control.
procedure PostEvents; virtual;
Call the PostEvents procedure to post (publish) [user events] added using the createEvent function. All posted events are accessible through the Events property.
Note
A PostEvents procedure call has no effect if the [IsActive] function returns False or the scheduler storage component has only posted user events.
The following code example creates, configures, and displays two events in a TcxScheduler control using a TcxSchedulerDBStorage component as user event storage:
uses
System.SysUtils, // Declares the Now function
System.DateUtils, // Declares the IncHour function
cxScheduler, // Declares the TcxScheduler class
cxSchedulerStorage, // Declares the TcxCustomSchedulerStorage class and related types
cxSchedulerDBStorage; // Declares the TcxSchedulerDBStorage class
// ...
procedure TMyForm.FormCreate(Sender: TObject);
var
AEvent: TcxSchedulerEvent;
begin
cxSchedulerDBStorage1.BeginUpdate; // Initiates the following batch operation
try
AEvent := cxSchedulerDBStorage1.createEvent;
AEvent.Caption := 'Event1';
AEvent.Start := Now;
AEvent.Finish := IncHour(Now, 2);
AEvent.ResourceID := 1;
AEvent := cxSchedulerDBStorage1.createEvent;
AEvent.Caption := 'Event2';
AEvent.Start := IncHour(Now, 3);
AEvent.Finish := IncHour(Now, 5);
AEvent.ResourceID := 1;
cxSchedulerDBStorage1.PostEvents; // Publishes created and configured user events
finally
cxSchedulerDBStorage1.EndUpdate; // Calls EndUpdate regardless of the batch operation's success
end;
end;
#include // Declares the IncHour function
#include // Declares the Now function
#include "cxScheduler.hpp" // Declares the TcxScheduler class
#include "cxSchedulerStorage.hpp" // Declares the TcxCustomSchedulerStorage class and related types
#include "cxSchedulerDBStorage.hpp" // Declares the TcxSchedulerDBStorage class
// Add the following linker directives to the corresponding CPP source file:
#pragma link "cxScheduler" // Required to use cxScheduler.hpp declarations
#pragma link "cxSchedulerStorage" // Required to use cxSchedulerStorage.hpp declarations
#pragma link "cxSchedulerDBStorage" // Required to use cxSchedulerDBStorage.hpp declarations
void __fastcall TMyForm::FormCreate(TObject *Sender)
{
TcxSchedulerEvent* AEvent;
cxSchedulerDBStorage1->BeginUpdate(); // Initiates the following batch change
try
{
AEvent = cxSchedulerDBStorage1->createEvent();
AEvent->Caption = "Event1";
AEvent->Start = Now();
AEvent->Finish = IncHour(Now(), 2);
AEvent->ResourceID = 1;
AEvent = cxSchedulerDBStorage1->createEvent();
AEvent->Caption = "Event2";
AEvent->Start = IncHour(Now(), 3);
AEvent->Finish = IncHour(Now(), 5);
AEvent->ResourceID = 1;
cxSchedulerDBStorage1->PostEvents(); // Publishes created and configured user events
}
__finally
{
cxSchedulerDBStorage1->EndUpdate(); // Calls EndUpdate regardless of the batch operation's success
}
}
See Also
TcxSchedulerEvent.Post Procedure
TcxCustomSchedulerStorage Class