Functional to Deep-Dive Mapping¶
Purpose¶
Provide traceability between each functional element listed in the Functional Overview matrix and its detailed documentation location(s).
Metadata Structure¶
Auto create metadata structure tables: Partial – implied across metadata “structure” pages; add explicit subsection “Automatic Metadata Structure Creation”.
Analyse and refresh metadata using SQL: Partial – add concrete refresh workflow snippet.
Drop & recreate metadata: Gap – needs safe rebuild guidance (backup, locking constraints).
Update names and aliases from SQL: Covered – spMFAliasesUpsert (anchor pending in deep dive).
Insert new valuelist items from SQL: Covered – staging + sync in Valuelist and Workflow Management.
Update aliases in bulk: Partial – add rollback / performance notes.
Analyse metadata structure relationships: Gap – recipe queries using
MFvwMetadataStructure
&MFvwClassTableColumns
.Show login / user accounts: External – procedure & security docs.
Show workflows & states: Partial – add example query block.
Show valuelists & items: Partial – need usage query examples.
Auto create valuelist/workflow views: External – procedures
spMFCreateValueListLookupView
,spMFCreateWorkflowStateLookupView
.Show complex ownership relationships: Gap – multi-level ownership recipe planned (will anchor in valuelist & workflow management deep dive).
Explore metadata usage in vault: Partial – add usage density / orphan property queries.
Get metadata structure version: External –
fnMFLastConnectorVersion
.
Class Tables¶
Create new class tables: Covered – creation procedures + overview.
Drop and re-create all class tables: Gap – add procedure + warnings.
Batch update of records: Covered (procedures) but Partial – tuning & batch sizing doc.
Update only changed records: Partial – add explicit “Delta-Only Updates” anchor in class table strategies.
Concurrent update processes: Partial – need multi ProcessBatch pattern example.
Bi-directional updates (to & from M-Files): Partial – clarify both paths.
Update records from specific date: Covered – date-based procedure.
Update records with specific objids: Covered – object ID grouping procs.
Update records changed by specific SQL user: Gap – recipe using audit tables.
Update all included in App tables: Partial – document inclusion flag logic.
Update using filters: Partial – consolidate filter option comparison table.
Helper procedures for update filters: Partial – list & link.
Insert new records: Covered – insert path explanation.
Hyperlinks to objects: Covered – hyperlink functions.
Format hyperlinks for Excel: Covered – Excel hyperlink function example.
Get object hyperlink to public links: Partial – add combined example.
Change classes and properties: Partial – need caution & step sequence.
Delete records: Covered – add retention / audit caution.
Delete adhoc properties in bulk: Partial – script loop example needed.
Get objver of objects: External – view/procedure only.
Copy objects: External – procedure.
Add comments: External – procedure.
Search objects: External – search procedure; add small example.
Delete adhoc properties (single): Covered – procedure docs; narrative partial.
Special Functions¶
Delimited string handling: Partial – add parsing & multi-lookup mapping recipe.
HTML conversion for reporting: External –
spMFConvertTableToHtml
.Include table in notification: Partial – pattern combining HTML + email send.
Send HTML formatted email: Partial – end-to-end sample forthcoming.
Remove special characters: Covered – add before/after snippet.
Insert/update multi lookup values: Partial – performance note.
Send bulk notifications using templates: Gap – add email template recipe (will land in messaging deep dive).
Files¶
Export files to folders: External – file export procedures.
Send bulk emails with attachments: External – combine file + email procs.
Import files from database blobs: External – ingestion procedures.
Checksum of a file: Gap – confirm function existence or remove claim.
Import files from network folders: External – scripts.
Get file size: Gap/External – verify & document or remove.
Get metadata on files without downloading: Gap – document metadata-only access pattern.
Views & Reporting¶
Explore full metadata structure: Covered – reporting module pages.
Create views for related lookups in bulk: Partial – need procedure usage example.
Class Table statistical report: Gap – produce view/example.
Explore column usage & errors: Partial – add troubleshooting queries.
Explore valuelist ownership relations: Gap – planned recipe.
Export / view M-Files event log: Covered – reporting module (cross-link only).
Export object history: External – procedure.
Process log summary (class tables): Partial – summarization pattern.
View Error log: Partial – add direct link and filter examples.
Get/create comments: External – procedure.
View Update History: Partial – expand referencing history tables.
View Process Batch logs: Covered – logging & observability deep dive.
View User Messages: Partial – retrieval usage example.
View Audit History: External – view only.
Valuelists & Workflow Items¶
Create valuelist lookup views: External – dedicated procedures.
Create workflow state lookup views: External – dedicated procedures.
Create/update/delete valuelist items: Covered – detailed in valuelist & workflow management deep dive (Value List Item Synchronization section).
Operations in M-Files¶
Configurable context menu items: Covered – context menu deep dive.
Access Website: Partial – need action type usage example.
Execute procedure on object: Covered – context menu action types.
Execute procedure on workflow trigger: Covered – workflow/event handler doc.
Execute procedure on event handler trigger: Covered – same location.
Show user message: Partial – small example needed.
Synchronous processing: Covered – action type docs.
Process with feedback message: Partial – add combined example snippet.
Asynchronous processing: Covered – logging & observability (queue section).
SQL actions via WebAPI (cloud): Partial – add concise steps.
Error Handling¶
Email notification of SQL errors: Partial – expand
spMFLogError_EMail
usage.User Messages: Partial – central retrieval + display pattern.
Error logging: Covered – logging tables overview.
Email sent log: Gap – verify existence / add doc.
Process logging: Covered – logging deep dive (metrics examples pending).
Show user message from SQL: Partial – snippet needed.
Formatted emailed process results: Gap – HTML + email example planned.
Show feedback message: Partial – clarify semantics vs user message.
Validate email profile: External – procedure.
Perform Class Table audits: Partial – performance + integrity checklist.
Delete history logs: Covered – automated updates & scheduling deep dive.
Special Applications¶
External application user to filter updates: Gap – security pattern.
Action M-Files Reporting Data Export: Partial – link to reporting export flow.
Update metadata on demand: Partial – targeted sync examples.
Update metadata scheduled: Covered – automated updates & scheduling (matrix).
Change history of any class property: Partial – combine change history procedure + conflict remediation narrative.
Scheduling & Automation (New)¶
Daily incremental updates: Covered – automated updates & scheduling deep dive.
Weekly metadata refresh: Covered – same deep dive.
Monthly retention & housekeeping: Covered – same deep dive (
spMFDeleteHistory
guidance).Sync error remediation loop: Covered – synchronization conflicts deep dive.
Value list synchronization cadence: Covered – valuelist management deep dive.
Assembly version safeguard: Covered – automated updates & scheduling.
Escalation/conflict spike detection: Gap – planned (add escalation script skeleton).
Installation & Upgrade (External)¶
All related procedures and scripts remain in installation / getting-started sections; only cross-link from matrix table as needed.
Appendix A: Object-Level Mapping (Snapshot)¶
Legend: T=Table, P=Procedure, F=Function, V=View
Metadata Structure Objects¶
Auto create metadata structure tables: P
spMFCreateAllMFTables
, PspMFCreateAllLookups
; TtbMFClass
,tbMFProperty
,tbMFObjectType
,tbMFValueList
,tbMFValueListItems
,tbMFWorkflow
,tbMFWorkflowState
– Status Partial.Analyse metadata refresh: P
spMFSynchronizeMetadata
, PspMFSynchronizeSpecificMetadata
, PspMFSynchronizeClasses
; VMFvwMetadataStructure
– Partial.Drop & recreate metadata: P
spMFDropAndUpdateMetadata
– Gap.Update names & aliases: P
spMFAliasesUpsert
– Covered.Valuelist item insert/update: P
spMFInsertValueListItems
; TtbMFValueListItems
– Covered.Alias bulk update: P
spMFAliasesUpsert
– Partial.Relationship analysis: V
MFvwMetadataStructure
, VMFvwClassTableColumns
– Gap.Accounts & users: P
spMFInsertLoginAccount
, PspMFInsertUserAccount
– External.Workflows/states: P
spMFInsertWorkflow
, PspMFInsertWorkflowState
– Partial.Complex ownership: (No direct object) – Gap.
Usage analysis: V
MFvwClassTableColumns
– Partial.Structure version: F
fnMFLastConnectorVersion
– External.
Class Table Objects¶
Creation: P
spMFCreateTable
, PspMFInsertClass
– Covered.Recreate all: P
spMFDropAllClassTables
– Gap.Batch update: P
spMFUpdateTableinBatches
; PspMFUpdateTableInternal
– Partial.Delta update: P
spMFUpdateTableWithLastModifiedDate
; PspMFUpdateMFilesToMFSQL
– Partial.Concurrent processing: T
tbMFProcessBatch
; P update procs – Partial.Directional updates: P
spMFUpdateMFilesToMFSQL
(MF→SQL), PspMFUpdateTable
/spMFUpdateTableinBatches
(SQL→MF) – Partial.Date filter: P
spMFUpdateTableWithLastModifiedDate
– Covered.ObjID filter: P
spMFUpdateTable_ObjIDs_Grouped
; PspMFUpdateTable_ObjIDs_GetGroupedList
– Covered.User-based filter: audit tables
tbMFUpdateHistory
– Gap (no dedicated proc).Inclusion flag batch: P
spMFUpdateAllncludedInAppTables
– Partial.Filter helpers: P
spMFUpdateTable_ObjIDs_GetGroupedList
– Partial.Inserts: P
spMFUpdateTable
(insert path) – Covered.Hyperlinks: F
fnMFObjectHyperlink
; FfnMFExcelObjectHyperlink
– Covered.Public link hyperlink: P
spMFCreatePublicSharedLink
+ F hyperlink fn – Partial.Change class/property: P
spMFChangeClass
(and related) – Partial.Delete records: standard update procs with delete flags – Covered.
Bulk adhoc property delete: P
spMFDeleteAdhocProperty
loop – Partial.ObjVer retrieval: (view/proc) – External.
Object copy: P
spMFCopyObject
– External.Comments: P
spMFGetAndUpdateObjectComments
– External.Search: P
spMFSearchForObject
– External.Single adhoc property delete: P
spMFDeleteAdhocProperty
– Covered.
Scheduling & Automation Objects¶
Daily/weekly/monthly routines: documented patterns using P
spMFUpdateAllncludedInAppTables
, PspMFDeleteHistory
, PspMFDropAndUpdateMetadata
, PspMFCheckAndUpdateAssemblyVersion
– Covered.Sync error remediation: P
spMFUpdateSynchronizeError
– Covered.Conflict stats: P
spMFClassTableStats
– Covered (monitoring).Value list sync: P
spMFSynchronizeValueListItemsToMFiles
– Covered.Assembly version: P
spMFCheckAndUpdateAssemblyVersion
– Covered.Escalation (planned): new script (Gap).
Error Handling & Logging Objects¶
Synchronization errors: P
spMFUpdateSynchronizeError
; TtbMFProcessBatch
; TtbMFProcessBatchDetail
– Covered (synchronization conflicts deep dive).History retention: P
spMFDeleteHistory
– Covered (automated updates deep dive).Email error notification: P
spMFLogError_EMail
– Partial.
File Pipeline Objects¶
Import/export control & history: T
tbMFFileImport
,tbMFFileExportControl
,tbMFExportFileHistory
– Covered (file ingestion & export pipeline deep dive pending anchor verification).
Appendix B: Remaining Unmapped / Review¶
Procedures needing placement or decision:
- spMFObjectTypeUpdateClassIndex
(metadata usage counts) – candidate Metadata Structure.
- spMFSetAdditionalProperty
(adhoc property management) – integrate into Class Tables property changes.
- spMFSetUniqueIndexes
(index/constraint management) – consider adding new minor subsection under performance.
- spMFUsersByUserGroup
(security introspection) – map to user/security insights deep dive.
- spMFsettingsForDBUpdate
/ spMFsettingsForVaultUpdate
(internal) – decide to omit or document as internal.
- spMFUpdateItemByItem
(row-by-row fallback) – performance caveats subsection.
- spMFSynchronizeLookupColumnChange
/ spMFSynchronizeWorkFlowStateColumnChange
– change history / structure drift subsection.
Utility Functions (possible consolidation):
- fnMFVariableTableName
, fnMFGetCulture
, fnMFTextToDate
, fnMFFloatToString
, fnMFCapitalizeFirstLetter
– either group under “Utility Conversions” or keep external.
- fnMFVaultSettings
– map to settings/metadata structure.
Views / Diagnostics:
- MFvwTableID
– metadata diagnostics; include in Metadata Structure analysis.
Recommendation: treat minor utilities collectively to avoid table bloat; prioritize authoring Gap items tied to safety, data integrity, or core update correctness before cosmetic enhancements.
Next Actions¶
Validate status accuracy; adjust any misclassified items.
Create missing anchors (delta-only updates, alias maintenance, escalation script placeholder, complex ownership examples).
Author Gap content (metadata drop/recreate safety, email sent log, checksum/file metadata access, escalation script, complex ownership).
Merge summarized mapping into functional overview table via footnotes or hover tooltips (future enhancement).
Reassess remaining External items; either keep or integrate if they gain deep-dive coverage.
End of Mapping