Correlazione di un set di transazioni in ingresso con un batch in uscita
BizTalk Server consente di correlare un set di transazioni EDI inviato all'orchestrazione batch con un batch in uscita. A tale scopo, è possibile correlare una voce di creazione rapporti di stato per il set di transazioni inviato all'orchestrazione batch (BTSInterchangeID) con una voce di creazione di rapporti di stato per l'orchestrazione (ActivityID). Questa correlazione viene eseguita utilizzando le voci nell'attività BAM BusinessMessageJournal. Queste voci vengono create dall'orchestrazione batch quando viene ricevuto un elemento batch.
Importante
BizTalk Server farà voci nell'attività BusinessMessageJournal solo se la segnalazione dello stato EDI e il rilevamento set di transazioni è abilitato per il contratto.
Nelle sezioni riportate di seguito vengono descritte le operazioni seguenti:
Come BizTalk Server salva i dati di rilevamento
Creazione di un componente personalizzato della pipeline per abilitare la correlazione
Modalità di correlazione di un set di transazioni in ingresso con un batch in uscita
Modalità di esecuzione di query sull'attività BusinessMessageJournal per determinare il valore BTSInterchangeID del batch se si conosce il valore BTSInterchangeID del set di transazioni incluso nel batch
Prerequisiti
È necessario essere connessi come membro del gruppo Administrators BizTalk Server o BizTalk Server gruppo Operatori B2B.
Modifiche alle attività
L'orchestrazione batch consente di creare voci nelle attività BAM BatchingActivity, TransactionSetActivity e BusinessMessageJournal. Quando un set di transazioni passa attraverso BizTalk Server, BizTalk Server eseguirà le voci seguenti in queste tabelle attività per il set di transazioni e il batch che lo include:
Quando tramite il disassembler EDI viene elaborato un interscambio EDI in ingresso, vengono create voci nelle tabelle InterchangeStatusActivity e TransactionSetActivity.
Nota
Per altre informazioni sulle attività BAM, vedere Attività BAM create per tenere traccia dei messaggi EDI-AS2.
Quando vengono create istanze dell'orchestrazione batch, tramite l'orchestrazione viene creata una voce in BatchingActivity. Tramite il sottosistema BAM viene creato un valore per ActivityID.
Dopo il recupero del set di transazioni, tramite l'orchestrazione batch viene creata una voce per tale set nella tabella TransactionSetActivity.
Tramite l'orchestrazione viene creata una voce nell'attività BusinessMessageJournal. Il campo MessageTrackingID di tale attività viene impostato sul valore del campo ActivityID della voce creata dall'orchestrazione nella tabella TransactionSetActivity. Il campo BTSInterchangeID viene inoltre impostato sulla proprietà di contesto BTS.InterchangeID per il set di transazioni e il campo BTSMessageID viene impostato sulla proprietà di contesto BTS.MessageID per il set di transazioni.
Tramite l'orchestrazione viene creata una seconda voce nell'attività BusinessMessageJournal. Il campo MessageTrackingID viene impostato sul campo ActivityID della voce creata dall'orchestrazione nella tabella TransactionSetActivity. Il campo BTSInterchangeID viene impostato sulla proprietà di contesto BTS.InterchangeID per il batch. Il valore BTSMessageID non viene impostato. Il campo ContainerActivityID viene impostato sul valore di ActivityID in BatchingActivity.
Creazione di un componente personalizzato della pipeline per abilitare la correlazione
Per configurare la correlazione di un set di transazioni in ingresso con un batch in uscita contenente tale set di transazioni, è necessario creare un componente personalizzato della pipeline. Tale componente della pipeline deve seguire il disassembler EDI e deve precedere il componente BatchMarker della pipeline EDIReceive. Tale componente della pipeline deve creare una voce nell'attività BusinessMessageJournal. In questa voce è necessario impostare il campo BTSInterchangeID sulla proprietà di contesto BTS.InterchangeID e il campo BTSMessageID sulla proprietà di contesto BTS.MessageID.
Ricerca del valore InterchangeID per un set di transazioni in un batch
È possibile correlare un interscambio ricevuto e il batch contenente il set di transazioni dell'interscambio, utilizzando le voci disponibili nella tabella BatchingActivity e l'attività BusinessMessageJournal, come illustrato di seguito.
Per correlare un set di transazioni in ingresso con un batch in uscita contenente tale set di transazioni
Determinare il valore di ActivityID per il batch nella tabella BatchingActivity.
Cercare il valore ActivityID nel campo ContainerActivityID della tabella attività BusinessMessageJournal.
Nel record identificato da ContainerActivityID cercare il valore del campo MessageTrackingID, associato al batch.
Utilizzando il valore del campo MessageTrackingID associato al batch nella tabella attività BusinessMessageJournal, cercare lo stesso valore nel campo MessageTrackingID di altri record disponibili nella tabella attività BusinessMessageJournal. Eventuali record trovati vengono associati ai set di transazioni nel batch, come segnalato dall'orchestrazione batch.
In un record associato a un set di transazioni nella tabella attività BusinessMessageJournal cercare il valore del campo BTSInterchangeID.
Utilizzando il valore di BTSInterchangeID, è possibile cercare un record per il set di transazioni creato nella tabella attività BusinessMessageJournal, come segnalato dal componente personalizzato della pipeline. È inoltre possibile cercare un record per il set di transazioni nella tabella TransactionSetActivity.
Esecuzione di query su BusinessMessageJournal
Se la creazione di rapporti relativi ai set di transazioni è abilitata e se si conosce il valore di BTSInterchangeID per l'interscambio ricevuto, è possibile utilizzare la query SQL seguente per trovare il valore di BTSInterchangeID per il batch che include il set di transazioni inviato all'orchestrazione batch. Questo codice consente di creare un'applicazione personalizzata, per ottenere visibilità nei messaggi in un batch.
Importante
BizTalk Server farà voci nell'attività BusinessMessageJournal solo se la segnalazione dello stato EDI e il rilevamento set di transazioni è abilitato per il contratto.
Select MessageTrackingID
From BusinessMessageJournal
Where BTSInterchangeID = <given InterchangeID of the receive interchange>
Select BTSInterchangeID
From BusinessMessageJournal
Where MessageTrackingID = <MessageTrackingID from the previous query> and BTSInterchangeID = <given InterchangeID>
Vedere anche
Attività BAM create per tenere traccia dei messaggi EDI-AS2
Abilitazione dei rapporti di stato EDI e AS2