Batching Error RRS feed

  • Question

  • Hi All,

    I have created one orchestration in which i m sending message to Msgbox.one batch corr is thr in which i hav promoted edi.partyID,partynameand tobebatched.

    i m giving default values to these propertits and in send port filters i have given edi.batchname and tobebatched= false. for these batching is working fine.but due to partyid it is casusing me problems in deployment using msi in different enviorments as partyid is not constant.

    so i want to use party name in orchestration.can anyone suggetst wht properties i need to give in send ports filter so that batching will work and i wont face any routing failure.

    Pooja Jagtap

    • Moved by Steef-Jan WiggersMVP Monday, March 5, 2012 3:38 PM EDI related (From:BizTalk Server General)
    Thursday, March 1, 2012 8:58 AM

All replies

  • Hi Pooja,

    I think the way to design this solution would be to get rid of hard coded values in the orchestration and I can suggest you 2 methods to do this

    1. If the message received by orchestration do contain any name which can be used to set the party name or if this is not the case

    2. then create a policy to get input from the message or environment and use the business rule engine to generate these values.

    Please mark the post answered your question as answer, and mark other helpful posts as helpful, it'll help other users who are visiting your thread for the similar problem, Regards -Rohit Sharma (http://rohitbiztalk.blogspot.com)

    Thursday, March 1, 2012 9:51 AM
  • Hi Rohit,

    Thanks for reply.

    We can use BRE. But after importing Bindings partyid will change and partyid i m giving in orchestration if partyid changed then my application will fail.

    becasue of this i want to use party name, we can give static as well as can use bre.

    but i want to know if i give party name in orchestrationm, then in send ports filter what properties i need to promote so that bat ching will work as well as my message will send to desired location without any routing failure.

    Pooja Jagtap

    Friday, March 2, 2012 7:39 AM
  •  EDI.DestinationPartyId, 


    Are you trying to batch 837's?

    Monday, March 5, 2012 3:29 PM
  •   i m trying to batch 835's....

    Pooja Jagtap

    Monday, March 5, 2012 3:46 PM
  • I have done a similar thing I think, and this is how I solved it.

    I used a Database table to store a combination of customer Id's and EDI party details relevant for this customer. In my orchestration I simply used a helper class to retrieve the relevant record from DB using a field in my message containing the customer Id as input.

    After retreiving the relevant record you simply assign values inside a message construct shape. You need to specify at least the following properties in order to find a match on a contract:

    • (EDI.DestinationPartySenderIdentifier)
    • (EDI.DestinationPartySenderQualifier)
    • (EDI.DestinationPartyReceiverIdentifier)
    • (EDI.DestinationPartyReceiverQualifier)

    additionaly you may need to override UNB7, if that is so you use

    (EdiOverride.UNB7) and make sure you set (EdiOverride.OverrideEDIHeader) = true as well.

    This will give you dynamic assigning of edi partner details depending on who the message we are processing bellongs to. Off course this approach relies on an updated db matching your party contracts.

    Friday, March 16, 2012 8:04 AM