Come configurare la forma Ricezione
Forma Ricezione
Una forma Receive può essere utilizzata per avviare un'orchestrazione. Se si imposta la proprietà Activate su True, il motore di runtime verificherà un messaggio in arrivo per verificare se è del tipo corretto e, se è stato applicato un filtro, se l'espressione di filtro è soddisfatta. Se vengono soddisfatti i criteri per la ricezione del messaggio, il motore di runtime crea ed esegue una nuova istanza di orchestrazione e la forma Receive riceve il messaggio.
Nota
Se la proprietà Activate di una forma Receive è impostata su True, la proprietà Receive deve essere la prima azione nell'orchestrazione.
Nota
Se la proprietà Activate è impostata su False in tutte le forme Receive , l'orchestrazione deve essere chiamata da un'altra orchestrazione per poter essere eseguita.
Nota
Se si inserisce una forma Receive all'interno di un ambito con la proprietà Activate impostata su True e quindi si aggiunge una variabile di classe .NET all'orchestrazione senza modificare la proprietà Use Default Constructor della variabile su False, l'istruzione di ricezione activate non rientra nell'ambito nel codice XLANG/S generato, ma l'area di progettazione continuerà a visualizzarla come all'interno dell'ambito.
Ogni orchestrazione deve avere almeno una forma Receive con la proprietà Activate impostata su True.
Se si prevede di ricevere una risposta indiretta o asincrona (non su una porta richiesta-risposta) a un messaggio trasmesso in precedenza, sarà necessario correlare il messaggio con l'istanza attualmente in esecuzione dell'orchestrazione, in modo che chi risponde possa ottenere la risposta all'istanza corretta. È possibile applicare un set di correlazioni di inizializzazione alla forma Ricezione se si intende eseguire correlazioni successive su valori del messaggio in ingresso oppure un set di correlazioni successivo per la correlazione di un set di correlazioni di inizializzazione precedente. Per altre informazioni, vedere Uso delle correlazioni nelle orchestrazioni.
Per configurare una forma Ricezione
Impostare un'operazione porta e di messaggio.
Nella finestra Visualizzazione orchestrazione verificare che l'orchestrazione abbia sia un'operazione porta che un'operazione di messaggio definita per il tipo di messaggio ricevuto.
Nella Finestra Proprietà selezionare il messaggio da ricevere dall'elenco a discesa Proprietà messaggio.
Nella Finestra Proprietà selezionare l'operazione di porta per ricevere il messaggio dall'elenco a discesa Operazione.
Oppure
Trascinare il connettore di ricezione dalla forma Receive al socket della porta che riceverà il messaggio.
Specificare che la forma Ricezione attiverà l'orchestrazione.
Nella finestra Proprietà impostare la proprietà Attivata su True.
Nella Finestra Proprietà fare clic sul pulsante Puntini di sospensione (...) per la proprietà Espressione filtro per creare un filtro per limitare i messaggi accettati dalla forma Receive.
Oppure
Fare clic con il pulsante destro del mouse sulla forma Ricezione e quindi scegliere Modifica espressione filtro.
Verrà visualizzata la finestra di dialogo Espressione filtro . Utilizzare questa finestra di dialogo per creare una o più espressioni filtro.
Nota
Per poter applicare un filtro, è necessario definire e assegnare un tipo di messaggio alla forma Receive .
Specificare i set di correlazione per limitare i messaggi accettati dalla forma Receive .
Per ogni set di correlazione da seguire, controllare un set di correlazione dall'elenco a discesa nella proprietà Set di correlazioni seguenti .
Per ogni set di correlazione che si desidera inizializzare, controllare un set di correlazione dall'elenco a discesa nella proprietà Initializing Correlation Sets .For each correlation set that you want to initialize, check a correlation set from the drop-down on the Initializing Correlation Sets property.
Controllo griglia Espressione filtro
È possibile creare un'espressione filtro utilizzando questo controllo griglia per definire i predicati che costituiscono l'espressione. È possibile aggiungere, modificare ed eliminare i predicati dalle celle della griglia. Questo controllo griglia include quattro colonne: Proprietà, Operatore, Valore e Raggruppamento.
Proprietà. Nell'elenco a discesa della cella è possibile digitare o selezionare un riferimento alla proprietà. Nell'elenco sono riportate le proprietà per il messaggio in ingresso.
Operatore. Nell'elenco a discesa della cella è possibile digitare o selezionare un operatore. Le selezioni possibili sono:
Operando Significato == È uguale a != Non è uguale a < È minore di <= È minore o uguale a > È maggiore di >= È maggiore o uguale a Exists Exists Valore. Le celle nella colonna Valore possono contenere qualsiasi costante digitata in: un valore letterale stringa, un valore letterale integer o Null.
Nota
Se la proprietà selezionata è di tipo stringa, il valore dovrà essere racchiuso fra virgolette. Ad esempio, SMTP.From = "MyServer".
Raggruppamento. Utilizzare questa colonna per controllare il raggruppamento dei predicati. Le espressioni filtro sono sempre espresse in formato DNF (Disjunctive Normal Form) per consentire la determinazione automatica del raggruppamento. AND indica di raggruppare il predicato con il predicato che lo segue, mentre OR indica che il predicato è separato da quello presente nella riga successiva. Quando si raggruppano i predicati, a sinistra del controllo della griglia vengono visualizzate parentesi quadre grigie. Non è possibile nidificare gruppi di predicati. Se non si specifica un valore in questa cella, verrà inserito il valore predefinito AND.
È possibile, ad esempio, creare un'espressione simile alla seguente:
MSMQ.MsgID = 1
Con questo filtro, il gruppo di porte di trasmissione sottoscriverà solo i messaggi che hanno un ID messaggio MSMQ 1.
È possibile creare ulteriori espressioni e specificare che queste hanno una relazione AND oppure OR con altre espressioni, ad esempio:
MSMQ.MsgID = 1 OR
SMTP.From = "MyServer"
In questo caso, il gruppo di porte di trasmissione sottoscriverà tutti i messaggi con ID messaggio MSMQ 1 o che sono stati inviati dal server SMTP denominato MyServer.
Etichetta suggerimento
Questo campo fornisce indicazioni utente. Il testo dell'etichetta cambia a seconda di quale colonna contiene la cella attiva. Il testo visualizza il nome della colonna seguita dalle indicazioni in base a quanto segue:
Proprietà. Selezionare una proprietà del messaggio in ingresso dall'elenco.
Operatore. Selezionare un operatore per mettere a confronto Proprietà e Valore.
Valore. Selezionare una proprietà del messaggio dall'elenco o digitare un valore letterale.
Raggruppamento. Specificare in che modo questa riga deve essere raggruppata con la riga successiva. 'AND' unirà le righe, mentre 'OR' le separerà.
Pulsante Sposta su
Fare clic su questo pulsante per spostare in su la riga selezionata. Per prima cosa, selezionare una riga facendo clic sul pulsante freccia destra (>) sul lato sinistro del controllo griglia.
Pulsante Sposta giù
Fare clic su questo pulsante per spostare in giù la riga selezionata. Per prima cosa, selezionare una riga facendo clic sul pulsante freccia destra (>) sul lato sinistro del controllo griglia.
Campo Espressione filtro creata
Questa casella di testo di sola lettura mostra l'espressione così come viene creata.