0

I want the BAM view to show

  • IntegrationStart
  • MessageType
  • ServiceName
  • ServiceStart
  • ServiceEnd
  • IntegrationDuration

The messages comes from one receive port and are passed to an orchestration, one message per orchestration, that sends them to a WCF service.

I know how to solve this scenario if I have one incoming message that goes all the way (different InterchangeID), but I have a batch that the receive pipeline split to individual messages (with the same InterchangeID).

I cannot use a unique value in the message, since there can be more than one in the batch.

I guess I need to use Relationship, but how?

What ID can I relate?

Dijkgraaf
  • 11,049
  • 17
  • 42
  • 54
Martin Bring
  • 1,176
  • 1
  • 7
  • 17

2 Answers2

1

Look at this - http://generatetypedbamapi.codeplex.com. The generated API has methods to create relationships between activities and will do a lot of the work for you...

I would suggest reading this book as well - http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470046422.html. Darren's chapter on BAM is especially good and has clear examples...

Fabio
  • 730
  • 3
  • 10
  • Hi Fabio. Thanks for your reply. This time I have a already deployed and running solution so I need to use TPE. I will have a look in the book to see if it clear things out. Thanks. – Martin Bring Mar 28 '12 at 20:19
0

I did use a relation ship, with the interchangeID, and now everything works fine.

I also created a view so I did not have to change my already created reporting services reports.

When I did not had the relation ship I could get "Violation of primary key",because Bam engine tried to put in records with the same key (after split in receive pipeline all messages have the same interchangeID).

Martin Bring
  • 1,176
  • 1
  • 7
  • 17