Supporto per le chiamate in ingresso tramite polling
L'adapter Microsoft BizTalk per Oracle E-Business Suite consente ai programmi client di ricevere messaggi da Oracle E-Business Suite informandoli delle modifiche ai dati in Oracle E-Business Suite. L'adapter Oracle E-Business supporta la ricezione di messaggi "basati sul polling" in cui l'adapter esegue un'istruzione SQL specificata, una stored procedure, una funzione o una routine all'interno di un pacchetto, recupera i dati e fornisce il risultato al client a intervalli regolari di tempo.
Nota
È anche possibile impostare il contesto delle applicazioni per l'operazione Poll nell'adapter Oracle E-Business. È obbligatorio impostare il contesto delle applicazioni per l'operazione polling se l'operazione viene eseguita in una tabella di interfaccia o in una visualizzazione dell'interfaccia. Per informazioni sul contesto delle applicazioni e su come impostarlo, vedere Impostare contesto applicazione.
Un'operazione di polling tipica usando l'adapter Oracle E-Business prevede quanto segue:
I client dell'adapter devono specificare
Polling
come operazione in ingresso nella proprietà di associazione InboundOperationType . Il valore predefinito per questa proprietà di associazione è Polling.I client della scheda devono specificare un'istruzione SELECT per la proprietà di associazione PolledDataAvailableStatement per determinare se sono disponibili dati per il polling. Se la prima colonna della prima riga del primo set di risultati restituito sull'esecuzione di questa istruzione contiene un valore intero positivo, è disponibile la data per il polling.
I client della scheda devono specificare un intervallo di polling per la proprietà di associazione PollingInterval per definire l'intervallo in secondi in cui viene eseguita l'istruzione specificata nella proprietà di associazione PolledDataAvailableStatement . Alla fine di ogni intervallo di polling, viene eseguita l'istruzione disponibile per i dati con polling e viene restituito il set di risultati.
I client dell'adapter devono specificare un'istruzione SELECT o una stored procedure per la proprietà di associazione PollingInput . Se si vuole eseguire il polling di una tabella o di una vista, è necessario specificare un'istruzione SELECT per questa proprietà di associazione. Se si vuole eseguire il polling usando una stored procedure, è necessario specificare l'intero messaggio di richiesta per questa proprietà di associazione.
L'istruzione nella proprietà di associazione PollingInput viene eseguita solo se sono disponibili dati per il polling, determinato dalla proprietà di associazione PolledDataAvailableStatement nel passaggio 2.
I client della scheda devono specificare un'azione per l'operazione di polling nella proprietà di associazione PollingAction . L'azione di polling per un'operazione specifica viene determinata dai metadati generati per l'operazione usando il componente aggiuntivo Del servizio adapter.
I client della scheda possono usare la proprietà di associazione PollWhileDataFound per ignorare l'intervallo di polling e eseguire continuamente il polling dei dati, come e quando disponibili.
Importante
Se si imposta il valore della proprietà di associazione PollWhileDataFound su True, i client dell'adapter eseguono il polling continuo dei dati da Oracle e nel processo aprono e chiudino le connessioni al database Oracle in un ciclo. Poiché la frequenza con cui le connessioni vengono aperte da ODP.NET è maggiore delle connessioni chiuse, le connessioni vengono esaurite dopo qualche tempo e viene generata un'eccezione. In seguito, assicurarsi che il valore di UseOracleConnectionPool sia impostato su True e che un valore appropriato sia indicato nella proprietà di associazione IncrPoolSize per controllare il numero di connessioni che possono essere aperte dai client dell'adapter.
I client della scheda possono specificare un'istruzione post-poll, un blocco Oracle PL/SQL per la proprietà di associazione PostPollStatement . L'istruzione specificata in questa proprietà di associazione viene eseguita dopo l'esecuzione dell'istruzione specificata nella proprietà di associazione PollingInput .
Nota
L'adapter esegue l'istruzione specificata nelle proprietà di associazione PollingInput e PostPollStatement in una transazione. Per altre informazioni sulle transazioni nella scheda Oracle E-Business, vedere Come gestisce le transazioni dell'adapter?
L'adapter elimina eventuali risposte di polling vuote provenienti da Oracle E-Business Suite.
La figura seguente fornisce informazioni sul flusso di lavoro di polling nella scheda Oracle E-Business. Vengono illustrati due scenari per il flusso di lavoro di polling:
Quando il valore di PollWhileDataFound è impostato su "False" (impostazione predefinita).
Quando il valore di PollWhileDataFound è impostato su "True".
Scenario di )
Differenze tra polling e notifica
Anche se il polling e la notifica sono entrambe operazioni in ingresso e informano i client dell'adapter sulle modifiche ai dati nel database Oracle, la tabella seguente elenca alcune differenze tra i due. Le differenze seguenti consentono di decidere un'operazione a seconda dei requisiti:
Polling | Notifica |
---|---|
Il polling è supportato per tutte le versioni del database Oracle supportate dall'adapter Oracle E-Business. | La notifica è supportata solo per le versioni del database Oracle 10.2 e versioni successive. |
È possibile configurare l'intervallo di polling per controllare i dati disponibili per il polling a intervalli regolari o immediatamente come e quando i dati sono disponibili. Mancia: Il polling può offrire una maggiore velocità effettiva negli scenari in cui le modifiche ai dati vengono eseguite continuamente e non si vuole ricevere una notifica di ogni modifica come e quando si verifica. Si specifica invece un intervallo di polling dopo il quale si desidera ricevere una notifica di tutte le modifiche apportate dall'ultima notifica di modifica. | La notifica di modifica dei dati è sempre istantanea. |
Il polling viene avviato dall'adapter. L'adapter esegue un'istruzione SQL per verificare se i dati sono disponibili per il polling e quindi avvia il polling eseguendo l'istruzione di polling se alcuni dati sono disponibili per il polling. | La notifica viene avviata dal database Oracle. L'istruzione di notifica rilasciata dall'adapter indica solo al database di avviare la notifica nel caso in cui si verifichi una modifica nel set di risultati dell'istruzione. La notifica è una funzionalità del database Oracle. |
È possibile usare l'istruzione di polling per leggere o aggiornare i dati nel database Oracle. | È possibile usare l'istruzione di notifica per leggere solo i dati in un database Oracle. |
Il polling informa i dati effettivi modificati. | La notifica informa solo sul tipo di modifica nei dati, ad esempio Insert, Update e Delete. |
Per altre informazioni:
Le proprietà di associazione correlate al polling, vedere Informazioni sull'adapter BizTalk per le proprietà di associazione di Oracle E-Business Suite.
Ricezione di messaggi basati sul polling usando BizTalk Server, vedere Poll Oracle E-Business Suite using BizTalk Server.