The states of all an appointment's flags.

Usage

Set_Property(OLECtrlEntID, "OLE.ApptFlags[ID]", Boolean)

Values

[True | False]

Default: False

Indices

IndexDescription
IDUnique ID of an existing appointment

Remarks

Every appointment stores 32 single-bit flags in memory, which are all set to zero by default. The ApptFlags property allows you to get or set all these flags in one @FM-delimited array. This takes a the appointment ID as its index.

This property is formatted as an @FM-delimited array of boolean values. The array has 32 elements, representing the 32 flags of this appointment in order. Thus, the first element in the array represents flag one and the last one represent flag 32. When setting flags using this property, blank elements cause the flag to remain unchanged. This allows you to selectively updated a handful of flags without having to first read the property.

These flags have no meaning to the appointments; they are there for your use. However, they do provide some convenience when used with the Layout property. You can define a layout item that consists of 32 images, which correspond to these 32 flags. Once the relationship is established, the images will appear automatically when its flag is turned on.

Of course, you do not need to use these flags with the Layout property. You can simply use this property to store state information for convenient retreival later.

If you need to only set a single flag at a time, use the ApptFlag property.

Example

// Set all sixteen flags to a random value 
Flags  = Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM 
Flags := Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2):@FM:Rnd(2) 
Set_Property(@Window:".OLE_SCHEDULE", "OLE.ApptFlags[Appt0001]", Flags) 

// Turn on the 2nd and 4th flags, but leave all the others as is 
Flags = @FM:1:@FM:@FM:1 
Set_Property(@Window:".OLE_SCHEDULE", "OLE.ApptFlags[Appt0001]", Flags)

See Also

LayoutApptFlag

  • No labels