We are using XPath conditions in the interface determinations to select a specific mapping according to the payload:
e.g. execute mapping I if:
/ORDERS05[(IDOC/EDI_DC40/MESCOD="IC") and (IDOC/E1EDK14[QUALF="014"]/ORGID="P475")]
e.g. execute mapping II if:
/ORDERS05[(IDOC/EDI_DC40/MESCOD="IC") and (IDOC/E1EDK14[QUALF="014"]/ORGID!="P475")] and not(contains(/ORDERS05/IDOC/E1EDP01/E1EDP19[QUALF="002"]/IDTNR,"#"))
It works fine for mapping I but if mapping II should be triggered the message fails with: "Unable to find inbound interface".
However, if I test the XPath for the second test IDoc in my XPath test tool it returns TRUE so the XPath should be correct. Could it be that the not() and contains() XPath functions are not supported in XI?
check this blog:
XPATH expresens must return an element or node, not a boolean value.