简体   繁体   中英

BizTalk Business Rules Engine Pipeline Framework

I have this XML message:

<ns0:PurchaseOrder xmlns:ns0="http://Samples.BreFramework.Schemas.Schema1">
  <Header>
    <ReqID>ReqID_0</ReqID>
    <Date>Date_0</Date>
  </Header>
  <Item>
    <Description>Description_0</Description>
    <Quantity>400</Quantity>
    <UnitPrice>20</UnitPrice>
  </Item>
  <Status>Denied</Status>
</ns0:PurchaseOrder>

I'm using a pipeline named PurchaseOrder_Receive with the following stages set: 解码阶段属性和默认XML反汇编程序

My policy is set like so: PurchaseOrderRules-政策

All my ports are configured correctly, using the above pipeline in my ReceiveLocation.

The Xml message I posted is the one being used as input, however, the output Xml message should contain a Status value of "Approved", but it remains as "Denied".

Basically, the question here is, what am I doing wrong that prevents my policy from being used on the pipeline, keep in my mind that my policy's "If condition" is always true.

I pinged the author of the BRE Pipeline Framework and this is his response.

I do not see an InstructionLoaderPolicy being used in the question at all. The XML document type must be asserted in the InstructionLoaderPolicy for XML based facts to be accessible to the ExecutionPolicy. This is documented here (following the text "To create the TypedXMLDocument object") - https://adventuresinsidethemessagebox.wordpress.com/2014/03/19/using-the-bre-pipeline-framework-to-assess-and-update-xml-message-content-using-xml-vocabularies/ . It's important that the message type specified in InstructionLoaderPolicy matches the message type in the XML vocabulary.

Your suggestion for him to apply the TrackingFolder parameter was spot on. He'd likely see the XML fact wasn't asserted and thus the rule didn't fire. Using CAT instrumentation tracing would also be very helpful.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM