BackupRestore (FB) ¶ FUNCTION_BLOCK BackupRestore EXTENDS BACnet.BACnetServerPluginBase IMPLEMENTS CmpEventMgr.ICmpEventCallback, BACnet.IBACnetEventConsumer Default implementation for ReinitializeDevice service application hook including handling for backup/restore. Requires a BACnet file object (the backup-restore-object) in Init(). Requests for ReinitializeDevice to REINIT_COLDSTART or REINIT_WARMSTART doesnt stop/start the application nor the whole PLC, because this is not appropriate for all use cases. You can configure, if client created objects should be restored or not. Restore ignores: - backup files created for a different device-ID - server objects in the restore file, but not in the application - if configured: client created objects Configure your BackupFilePath, BackupFailTime, Password and RestoreClientCreatedObjects as needed. Additionally requirements: - a BACnet file object, to be used as backup-restore-file. - dont mix this default implementation with the more simplistic ReinitDevice_SvcAppHook, use just one of both Needs to be called cyclically to ensure processing of timed actions. Properties: BackupFailTime BackupFilePath Name NumHooks Password RestoreClientCreatedObjects TimeZone UpdateTimeZoneFromSystem Methods: BACnetEventCallback DumpDataBase GetHook GetTimeZoneFromSystem Init PostUnregister PreRegister Restore Structure: BACnetEventCallback (Method) BackupFailTime (Property) BackupFilePath (Property) DumpDataBase (Method) GetHook (Method) GetTimeZoneFromSystem (Method) Init (Method) Name (Property) NumHooks (Property) Password (Property) PostUnregister (Method) PreRegister (Method) Restore (Method) RestoreClientCreatedObjects (Property) TimeZone (Property) UpdateTimeZoneFromSystem (Property)
BackupRestore.BACnetEventCallback (METH) ¶ METHOD BACnetEventCallback : BOOL Hook callback for IEC_BACNET_CB_TYPE.CB_REINIT_DEV InOut: Scope Name Type Comment Return BACnetEventCallback BOOL Input EventId DWORD If only one event is possibly called, the following Ids can be ignored. If there are more at least the EventId should be checked, to get the right type of pParameter. ID of the occured Event. Contains the class and the event (see CmpBACnet.EVENTIDS) usParamId WORD Id of the parameter structure (see pParameter and CmpBACnet.EVENTIDS) usVersion WORD Version of the parameter structure (see pParameter and CmpBACnet.EVENTIDS) pParameter POINTER TO BYTE Pointer to the event specific parameter, that is specified by Id (see CmpBACnet.EVENTIDS and CmpBACnet, i.e. EVT_BACNET_ACKALARM)
BackupRestore.BackupFailTime (PROP) ¶ PROPERTY BackupFailTime : UDINT Backup fail time
BackupRestore.BackupFilePath (PROP) ¶ PROPERTY BackupFilePath : FileNameString File path of the backup / restore file.
BackupRestore.DumpDataBase (METH) ¶ METHOD DumpDataBase : CmpBACnet.IEC_BACNET_STATUS Dumps the object database to data files. InOut: Scope Name Type Return DumpDataBase CmpBACnet.IEC_BACNET_STATUS
BackupRestore.GetHook (METH) ¶ METHOD GetHook : BACnet.IBACnetServerPluginHook InOut: Scope Name Type Return GetHook BACnet.IBACnetServerPluginHook Input index UINT
BackupRestore.GetTimeZoneFromSystem (METH) ¶ METHOD GetTimeZoneFromSystem : Util.ERROR Gets the timezone from the underlying system. InOut: Scope Name Type Return GetTimeZoneFromSystem Util.ERROR
BackupRestore.Init (METH) ¶ METHOD Init InOut: Scope Name Type Comment Input backupRestoreFileObject POINTER TO BACnet.BACnetFile backup / restore file object
BackupRestore.Name (PROP) ¶ PROPERTY Name : STRING
BackupRestore.NumHooks (PROP) ¶ PROPERTY NumHooks : UINT