Type property (for example Document 4 files) query

Hy All,

I would like to analyze our vault's size and user's behavior so I need some information.

As one of these I need the Type property, which show how many file content by multiple-document.

There are too much objects in the vault to use desktop client's export function (more than 100.000).

This property was in export file earlier, if I group by ID segment, but now there is not in it.

I thought that, I could query by API, but I don't know how could I identify this property at the script.

Could you help me with any idea?

Thanks in advance

  • The best way to perform this type of analysis is by using an external reporting database where you can export vault metadata.

    When you export document metadata, the reporting database also includes a Document_Files table. This table lists every file on its own row, whether the document is single-file or multi-file. You can then run database queries or use a reporting tool like Microsoft Power BI to analyze the number of files within multi-file documents.

    Example: Files in a multi-file document share the same document ID.

  • Thank you for your quick answer.

    If I think correctly, this is an separated paid solution, isn't it?

    We don't have licence to Reporting and Data export function and we don't even plan to, because we only analyze it once or twice a year. Is there any way to solve it without extra fee?

    Best regards

  • The Reporting module is included in certain subscription plans, so it's a good idea to confirm this with your M-Files representative or reseller.

    You may also want to discuss alternative approaches for the analysis with them.

  • You asked explicitly about the API.  When you do a search, or perform various other operations, you often get an ObjectVersion instance.  This instance has a "FilesCount" property, which is the value you can see above.

    If you do go down the API route then you may want to consider the segmented searching extension methods from the VAF Extensions library.  Whilst this library is designed to be used from the VAF, it can often be used in other scenarios where you're just using the COM API.  If you can't use the library for some reason (e.g. you're not using dotnet) then the source code to these extension methods are available and could be used to implement your own methods in whatever language or environment you're using.

    With the above all said: the reporting database is definitely the route I would go personally.