Skip to main content

Data Access

The Persistence Manager provides up to 10 submodule instances of type PersistenceChannel. Each persistence channel provides a submodule instance of type DataStorage which is responsible for the data access. This instance implements the interface IDataStorage:

INTERFACE IDataStorage EXTENDS IModule

METHOD Clear : BOOL //delete all entries

METHOD Close : BOOL //close data base

METHOD Create : BOOL //create new data base; existing data base with same name is deleted

METHOD DefineIntegrityCheckEntry : BOOL //if an integrity object shall be written when closing the data base and checked when opening, one must transmit this object via this method
VAR_INPUT
    itfKey: IDataStorageItem;
    itfData: IDataStorageItem;
END_VAR

METHOD Del : BOOL // delete object with key
VAR_INPUT
    key: IDataStorageItem;
END_VAR

METHOD Get : BOOL // get object with key
VAR_INPUT
    itfKey  : IDataStorageItem;
    itfData : IDataStorageItem;
END_VAR

METHOD Next : BOOL // get next object
VAR_INPUT
    itfKey  : IDataStorageItem;
    itfData : IDataStorageItem;
END_VAR

METHOD Open : BOOL //open database with name sName for reading (xRead=TRUE) and/or writing (xWrite=TRUE); the data model for key and value is transmitted as object instance of the correct type
VAR_INPUT
    xRead: BOOL;
    xWrite: BOOL;
    dsiKeyModel, dsiDataModel: IDataStorageItem;
END_VAR

METHOD Put : BOOL // add/replace one entry
VAR_INPUT
    itfKey  : IDataStorageItem;
    itfData : IDataStorageItem;
    xReplaceIfPresent       : BOOL;
END_VAR