Condividi tramite


Elaborazione dei messaggi di istanza mediante l'innalzamento di livello delle proprietà

L'innalzamento di livello delle proprietà tramite il metodo Property Field richiede la creazione di uno schema di proprietà. Per altre informazioni sulla creazione di uno schema di proprietà, vedere How to Create Property Schemas.For more information about creating a property schemas, see How to Create Property Schemas. Come per tutte le promozioni di proprietà, utilizzare la finestra di dialogo Alza di livello proprietà , accessibile tramite la proprietà Promote Properties del nodo Schema negli schemi dei messaggi.

Nota

È necessario scegliere una pipeline che innalzi il livello delle proprietà per accedervi e utilizzarle. Ad esempio, se si utilizza la pipeline PassthruReceive, nessuna proprietà sarà innalzata di livello di conseguenza il routing basato sul contenuto e altre funzionalità non funzioneranno nel modo previsto.

Nella finestra di dialogo Alza di livello proprietà verificare che la scheda Campi proprietà sia selezionata sul lato destro della finestra di dialogo. Verificare quindi che lo schema delle proprietà appropriato sia incluso nell'elenco Schemi proprietà nella parte superiore della scheda Campi proprietà . Se necessario, usare il pulsante della cartella per selezionare lo schema delle proprietà appropriato usando la finestra di dialogo Selezione tipi BizTalk . Espandere quindi i nodi nell'albero dello schema a sinistra della finestra di dialogo per trovare e selezionare il nodo Elemento campo o Attributo campo da alzare di livello come campo proprietà e quindi fare clic su Aggiungi. Usare infine l'elenco a discesa nella colonna Proprietà della tabella dizionario Property-Fields per selezionare un nodo Elemento campo in uno schema di proprietà a cui associare la proprietà alzata di livello. Per istruzioni dettagliate sull'innalzamento di livello delle proprietà ai campi delle proprietà tramite la finestra di dialogo Alza di livello proprietà , vedere How to Copy Data to the Message Context as Property Fields.

Nota

È anche possibile alzare di livello un nodo Record a un nodo Elemento campo nello schema delle proprietà, ma solo se la proprietà Content Type del nodo Record è impostata su SimpleContent.

Nota

È possibile alzare di livello più volte la stessa proprietà all'interno di uno schema, purché tutti gli innalzamenti di livello vengano eseguiti sotto nodi radice diversi. Questo perché il messaggio viene convalidato rispetto a un solo nodo radice e solo le proprietà alzate di livello sotto tale nodo radice vengono valutate in fase di esecuzione.

Per rimuovere un nodo Elemento campo o un nodo Attributo campo dal set di proprietà alzato di livello come campi proprietà, selezionare la proprietà alzata di livello nella tabella del dizionario Property-Fields della scheda Campi proprietà e quindi fare clic su Rimuovi.

La colonna Percorso nodo nella tabella del dizionario Property-Fields mostra L'XPath al nodo dello schema corrispondente alla proprietà alzata di livello. È possibile modificare questo valore direttamente utilizzando la finestra di dialogo Modifica XPath istanza . È possibile aprire questa finestra di dialogo facendo clic sul pulsante con i puntini di sospensione (...) visualizzato alla fine destra della cella corrispondente quando si seleziona tale cella. È necessario prestare attenzione quando si modificano direttamente i valori XPath, perché la presenza di valori XPath non risolti impedisce la corretta esecuzione delle operazioni di convalida.

L'editor BizTalk fornisce anche un comando semplificato per promuovere le proprietà usando il meccanismo Campo proprietà . Questo comando è denominato Promozione rapida ed è disponibile usando Promuovi | Comando Promozione rapida nei menu di scelta rapida e BizTalk. Questo comando alza di livello il nodo Campo selezionato (o Nodo Record ) a un campo proprietà creato automaticamente nello schema delle proprietà specificato dalla proprietà Nome schema proprietà predefinito nella finestra di dialogo Pagine delle proprietà per lo schema contenitore. Per istruzioni dettagliate sull'innalzamento di livello delle proprietà ai campi delle proprietà tramite il comando Promozione rapida, vedere How to Copy Data to the Message Context as Property Fields .For step-by-step instructions about promotion properties fields using the Quick Promotion command, see How to Copy Data to the Message Context as Property Fields.

Quando si alza di livello una proprietà mediante il meccanismo dei campi delle proprietà, nella rappresentazione XSD (XML Schema Definition) dello schema del messaggio vengono aggiunti due frammenti XSD. Il primo frammento XSD è un frammento di annotazione associato all'elemento dello schema che identifica lo schema di proprietà corrispondente, come nell'esempio seguente:

<xs:annotation>  
    <xs:appinfo>  
        <b:imports>  
            <b:namespace prefix="ns0"  
                uri="http://BizTalk_Server_Project1.PropertySchema1"  
                location=".\propertyschema1.xsd" />  
        </b:imports>  
    </xs:appinfo>  
</xs:annotation>  

Il secondo frammento XSD è un frammento di annotazione associato all'elemento Root (indipendentemente dal fatto che sia stato rinominato) che identifica i valori del nodo Elemento campo o del nodo Attributo campo promossi tramite il meccanismo del campo delle proprietà, come nell'esempio seguente:

<xs:annotation>  
    <xs:appinfo>  
        <b:properties>  
            <b:property name="ns0:PromProp1"  
                xpath="/*[local-name()='Root' and namespace-  
                 uri()='http://BizTalk_Server_Project1.Schema2']/  
                 *[local-name()='MyRec1']/@*[local-  
                 name()='Field_x0020_1']" />  
            <b:property name="ns0:PromProp2"  
                xpath="/*[local-name()='Root' and namespace-  
                 uri()='http://BizTalk_Server_Project1.Schema2']/  
                 *[local-name()='MyRec1']/*[local-  
                 name()='ProgramManager']/*[local-name()='Name']" />  
        </b:properties>  
    </xs:appinfo>  
</xs:annotation>  

Vedere anche

Modalità di utilizzo del contenuto dei messaggi per controllare l'elaborazione dei messaggi
Come copiare dati nel contesto del messaggio come campi delle proprietà