Fornire una Query di origine OData in fase di esecuzioneProvide an OData Source Query at Runtime

È possibile modificare la query di origine OData in fase di esecuzione tramite l'aggiunta di un espressione per il [origine OData]. [ Query] proprietà dell'attività flusso di dati.You can modify the OData Source query at runtime by adding an expression to the [OData Source].[Query] property of the Data Flow task.

Le colonne restituite devono essere le stesse colonne che sono state restituite in fase di progettazione. in caso contrario, un errore si verifica quando viene eseguito il pacchetto.The columns returned have to be the same columns that were returned at design time; otherwise, you get an error when the package is executed. Assicurarsi di specificare le stesse colonne (nello stesso ordine) quando si utilizza l'opzione query $select.Be sure to specify the same columns (in the same order) when using the $select query option. Un'alternativa più sicura all'utilizzo dell'opzione $select consiste nel deselezionare le colonne non desiderate direttamente dall'interfaccia utente del componente di origine.A safer alternative to using the $select option is to deselect the columns you don’t want directly from the Source Component UI.

Sono disponibili alcune modalità differenti per impostare dinamicamente il valore di query in fase di esecuzione.There are a few different ways of dynamically setting the query value at runtime. Ecco alcuni dei metodi più comuni.Here are some of the more common methods.

Specificare la query come parametroProvide the query as a parameter

La procedura seguente viene illustrato come esporre la query utilizzata da un componente origine OData come parametro del pacchetto.The following procedure shows how to expose the query used by an OData Source component as a parameter of the package.

  1. Fare clic con il pulsante destro del mouse sull' attività Flusso di dati e scegliere l’opzione Imposta parametri.Right click on the Data Flow task and select the Parameterize… opzione.option.

  2. Nel imposta parametri finestra di dialogo Seleziona [<nome del componente di origine OData >]. [ Query] per proprietà.In the Parameterize dialog, select [<Name of the OData Source Component>].[Query] for Property.

  3. Scegliere se creare un nuovo parametro o usare un parametro esistente.Choose whether to create new parameter or use an existing parameter.

  4. Se si seleziona creare un nuovo parametro:If you select Create new parameter:

    1. Immettere un nome e una descrizione per il parametro.Enter name and description for the parameter.

    2. Specificare il valore predefinito per il parametro.Specify default value for the parameter.

    3. Specificare l' ambito (pacchetto o progetto) per il parametro.Specify the scope (package or project) for the parameter.

    4. Specificare se il parametro è obbligatorio o meno.Specify whether the parameter is required or not

  5. Scegliere OK per chiudere la finestra di dialogo.Click OK to close the dialog box.

Specifica un'espressione di queryProvide the query with an expression

Questo metodo è utile quando si desidera creare dinamicamente la stringa di query in fase di esecuzione.This method is useful when you want to dynamically construct the query string at runtime.

  1. Selezionare il attività flusso di dati che contiene il origine OData.Select the Data Flow Task that contains your OData Source.

  2. Nella finestra Proprietà selezionare la proprietà Espressioni .In the Properties window, highlight the Expressions property.

  3. Fare clic sul pulsante con i puntini di sospensione (...)Click the … pulsante (puntini di sospensione) per visualizzare il Editor espressioni di proprietà.(ellipsis) button to bring up the Property Expressions Editor.

  4. Selezionare la proprietà [Origine OData].[Query] .Select the [OData Source].[Query] property.

  5. Fare clic sul pulsante con i puntini di sospensione (...)Click the … () con i puntini espressione.(ellipsis) button for Expression.

  6. Immettere l' espressione.Enter the expression.

  7. Scegliere OK.Click OK.

Nota

Quando si utilizza questo approccio, è necessario assicurarsi che i valori impostati siano URL correttamente codificati.When you use this approach, you have to ensure that the values you set are properly URL encoded. Alla ricezione di valori dall'input utente, ad esempio l'impostazione di singoli valori di opzioni query da un parametro, è necessario assicurarsi che i valori siano convalidati per evitare potenziali attacchi SQL injection.When receiving values from user input (for example, setting individual query option values from a parameter), you must ensure that the values are validated to avoid potential SQL injection-type attacks.