Condividi tramite


Ricevere IDOCs da SAP in un contesto transazionale usando BizTalk Server

La ricezione di IDOC in un contesto transazionale è simile alla ricezione di tRFCs in un contesto transazionale. In tal caso, l'IDOC ricevuto dal sistema SAP contiene un TID come parte dell'elemento <TransactionalRfcOperationIdentifier> . Questo TID viene mantenuto in un database SQL dall'adapter. Se il codice ABAP nel sistema SAP che invia l'IDOC ha un'istruzione "COMMIT WORK", il TID viene eliminato dal database SQL dopo l'invio di una risposta al sistema SAP.

L'orchestrazione necessaria per ricevere un IDOC è simile indipendentemente dal fatto che l'IDOC venga ricevuto in un contesto transazionale o meno. Vedere Ricevere IDOC da SAP usando BizTalk Server. Tuttavia, è necessario eseguire determinate attività aggiuntive per assicurarsi che i IDOC vengano ricevuti in un contesto transazionale.

  1. In fase di progettazione generare lo schema per un IDOC che si vuole ricevere.

  2. In fase di esecuzione assicurarsi di impostare la proprietà di associazione TidDatabaseConnectionString. Questa proprietà accetta il stringa di connessione per connettersi a un database SQL per archiviare il TID. Un esempio stringa di connessione sarà simile al seguente:

    Data Source=<myServerAddress>;Initial Catalog=<myDataBase>;User Id=<myUsername>;Password=<myPassword>;  
    

    Per altre informazioni sulla proprietà di associazione e su come impostarla, vedere Informazioni sull'adapter BizTalk per le proprietà di binding di mySAP Business Suite.

    Importante

    La configurazione guidata di BizTalk Adapter Pack installa uno script SQL, SapAdapter-DbScript-Install.sql, che deve essere eseguito dall'amministratore SQL Server per creare un database e gli oggetti di database in SQL Server. Lo script viene in genere installato nell'unità<> di installazione:P rogram FilesMicrosoft BizTalk Adapter Pack.

    L'adapter SAP usa questi oggetti per rendere persistenti gli ID. Pertanto, l'amministratore SQL Server deve assicurarsi che il nome utente specificato come parte del stringa di connessione disponga di privilegi sufficienti per eseguire le stored procedure. È anche possibile scegliere di autenticazione di Windows fornito che l'utente di Windows dispone di autorizzazioni sufficienti per eseguire stored procedure nel database.

  3. Assicurarsi che MSDTC sia abilitato nel computer in cui è installato l'adattatore. Seguire questa procedura per abilitare MSDTC.

    1. Avviare lo snap-in MMC servizi componenti.

    2. Nello snap-in MMC Servizi componenti, nel riquadro sinistro espandere Servizi componenti, espandere Computer, fare clic con il pulsante destro del mouse su My Computer e scegliere Proprietà.

    3. Nella finestra di dialogo Proprietà computer personali fare clic sulla scheda MSDTC .

    4. Nella sezione Configurazione transazione fare clic sul pulsante Configurazione sicurezza .

    5. Nella finestra di dialogo Configurazione sicurezza selezionare la casella di controllo Accesso DTC di rete e, all'interno, selezionare la casella di controllo Consenti client remoti .

    6. Nella sezione Comunicazione di Transaction Manager selezionare le caselle di controllo Consenti in ingresso e Consenti in uscita .

    7. Nella finestra di dialogo Configurazione sicurezza fare clic su OK.

    8. Fare clic su nella finestra di dialogo che informa che il servizio MSDTC verrà riavviato. Dopo il riavvio del servizio MSDTC, fare clic su OK nella finestra di dialogo.

    9. Nella finestra di dialogo Proprietà computer personali fare clic su OK.

  4. Aggiungere MSDTC all'elenco di eccezioni di Windows Firewall, se non è già stato aggiunto. Eseguire il comando seguente.

    netsh firewall set allowedprogram %windir%\system32\msdtc.exe MSDTC enable  
    

Vedere anche

Sviluppare applicazioni BizTalk