Import from external source without requirement properties

Hi,

We configured an external source with a hot folder and XML files.

For example, I configured:

  • document\class id

  • document\car number

  • document\client number

  1. In the PROD vault, if the XML is missing the car number or client number, the file is still imported with the details it has. However, in the QA vault, the files are not imported if they do not contain all the XML lines. Where do I need to change the configuration to ensure that files are imported even if the XML does not contain all the lines?

  2. In M-Files, if required properties are missing in the XML in the PROD environment, the file is still imported with empty fields. How can I change the configuration so that if required fields are empty in the XML, the file will not be imported? I have attached an event log screenshot from the QA vault.

    the event is:

    M-Files Online M-Files Pre Prod {ED24777C-DA60-45D3-BD08-61B0C4DD047C}

    Failed to retrieve property value: Purchasing Group (_חשבונית ספק-20250306-155533.PDF) No nodes found with XPath expression 'Document/PurchasingGroup'.

    ExternalFileMonitor.cpp, 5796, Failed to retrieve property value: Purchasing Group (_חשבונית ספק-20250306-155533.PDF) (0x800400E3) ExternalFileMonitor.cpp, 5796, No nodes found with XPath expression 'Document/PurchasingGroup'. (0x800400E4) ExternalFileMonitor.cpp, 5884, No nodes found with XPath expression 'Document/PurchasingGroup'. (0x800400E4) ExternalFileMonitor.cpp, 6599, No nodes found with XPath expression 'Document/PurchasingGroup'. (0x800400E4) ExternalFileMonitor.cpp, 6637, No nodes found with XPath expression 'Document/PurchasingGroup'. (0x800400E4) (M-Files 24.12.14341.6 2025-03-06T14:16:26.828Z)

     

  • 1. IF you have mapped "Document/PurchasingGroup" in the settings but it does not EXISTS in the XML, the importer will give you this error. If it's only empty but exists in the XML it should be fine 

    2. I've tried this operations with 24.x versions of M-Files. You can actually add an simple event handler to check those properties and if empty you can stop it with "err.raise mfscriptcancel". But the problem is, the earlier version did not move on if it generated an error. So, as an example lets say you have 20 files to import and on 4th file there is a missing property. The event handler will prevent the creation of that file as the property is missing aaaaand the operation stops with it. It does not move to 5th file, it just stops.