Il significato di correlation in Biztalk è la possibilità di vincolare un determinato processo di business ad una informazione univoca al processo stesso o al messaggio.
Chiaro no?
Ecco alcuni esempi:
- Inviare un messaggio e ricevere il rispettivo responso in asincrono anche dopo molto tempo sulla base del valore di un campo del messaggio
- Eseguire dei processi di business in single thread e di tipo FIFO (First In First Out)
- Per controllare la concorrenza tra i processi di business
Sto terminando un' articolo che prenderà in esame queste tre possibilità per capire come funziona la correlation e i suoi principi, io sono sempre del parere che l’ importante sia capire il principio delle cose, la fantasia e la buona volontà farà il resto.
Nel frattempo un tip:
Nel caso delle correlations, spesso capire se i messaggi sono stati correttamente elaborati dalla stessa istanza piuttosto che in sequenza corretta, può rivelarsi un problema molto complicato.
Per questo vi consiglio l’ utilizzo del subscription viewer che potete trovare sotto la directory ROOT:\Program Files\Microsoft BizTalk Server 2006\SDK\Utilities
Il file si chiama BTSSubscriptionViewer.btq, nella versione Biztalk 2004 ha estensione .EXE
Aprite la HUB Page, e mediante la voce di menu Action\Query Tasks\Open... aprite il file ed eseguite la query, il risultato è l’ insieme di tutte le sottoscrizioni effettuate, esistono tanti modi per ottenere questo risultato ma questa è la stada più semplpice per chi non ha molta famigliarità con Biztalk Server.
Consiglio da addetto ai lavori, per trovare possibili problemi di correlation filtrate la query anche per Service Name e impostate le corrispettive porte associate alla correlation in esame.