Structure tables¶
The MFSQL Connector uses a set of structure tables to represent the metadata and configuration settings required for working with the class tables. This section provides an overview of the key structure tables, their relationships, and the concepts behind their design.
The main structure tables include:
MFClass: Represents the classes defined in the metadata structure.
MFProperty: Represents the properties associated with each class.
MFClassProperty: Represents the relationship between classes and their properties, including additional metadata such as whether a property is required or optional.
MFObjectType: Represents the different object types available in the metadata structure.
MFValueList: Represents the value lists associated with properties.
MFValueListItem: Represents the individual items within each value list.
MFWorkflow: Represents the workflows associated with classes.
MFWorkflowState: Represents the states within each workflow.
MFUserAccount: Represents user accounts that can interact with the metadata.
MFLoginAccount: Represents login accounts for accessing the metadata.
These tables are designed to work together to provide a comprehensive view of the metadata structure and its components. Understanding these relationships is crucial for effectively working with the MFSQL Connector and managing metadata. The following sections provide detailed information on each of these tables, including their columns, relationships, and usage. Additionally, best practices for managing and utilizing metadata effectively within the MFSQL Connector are discussed.
The view MFvwMetadataStructure provides a consolidated view of class properties, including details from related tables such as MFClass, MFProperty, and MFValueList. This view is useful for quickly accessing comprehensive information about class properties without needing to join multiple tables manually.
The structure tables are populated and maintained through a series of stored procedures that synchronize the SQL database with the M-Files vault. These procedures ensure that any changes made in the M-Files metadata structure are accurately reflected in the SQL tables. Most of these procedures are internally used by a few main user facing procedures to update the metadata structure.
The following procedures are used to manage and manipulate the metadata structure tables: - spMFSynchronizeMetadata: Synchronizes the metadata structure tables with the M-Files vault. This procedure is used the initialise the metadata structure tables. - spMFDropAndUpdateMetadata: Drops and updates the metadata structure tables based on changes in the M-Files vault. This procedure is used when there are changes to the metadata structure in M-Files. - spMFSynchronizeSpecificMetadata: Synchronizes specific parts of the metadata structure tables based on provided parameters. This procedure is used to update specific classes, properties, or object types.