Modificare la query di origine OData in fase di esecuzioneModify OData Source Query at Runtime

È possibile modificare la query di origine OData in fase di esecuzione aggiungendo un'espressione alla proprietà [Origine OData].[Query] 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.

Si noti che le colonne devono essere le stesse di quelle utilizzate in fase di progettazione; in caso contrario, verrà visualizzato un errore al momento dell'esecuzione del pacchetto.Note that the columns must remain the same as what was used at design time; otherwise you will 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. Di seguito sono riportati alcuni dei metodi più comuni.Below are some of the more common methods.

Esposizione della query come parametroExposing the Query as a Parameter

Nella procedura seguente sono riportati i passaggi per esporre la query utilizzata da un componente di origine OData come parametro nel pacchetto.The following procedure has steps to expose query used by an OData Source component as a parameter to 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 Crea nuovo parametro, eseguire le operazioni seguenti:If you select Create new parameter, do the following:

    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.

Utilizzo di un'espressioneUsing 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 query string at runtime. In questo esempio, la variabile MaxRows verrà impostata in altro modo (script, parametro e così via).In this example, MaxRows variable will be set through other means (script, parameter, etc).

  1. Selezionare l' attività Flusso di dati contenente l' Origine OData.Select the Data Flow Task which 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 … per visualizzare Editor espressioni di proprietà.(ellipses) 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 … per Espressione.(ellipses) button for Expression.

  6. Immettere l' espressione.Enter the expression.

  7. Scegliere OK.Click OK.

Avviso

Si noti che quando si utilizza questo approccio, è necessario assicurarsi che i valori impostati siano URL correttamente codificati.Note that when using this approach you need to ensure that the values 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.