La StringToDataSet Activity è una Activity propria della piattaforma IrionEDM, utilizzata per impostare eventuali parametri in input ad una DataEntity Activity, in cui deve essere annidata.
L’inserimento di una nuova DataEntity Activity in un Workflow comporta l’inclusione automatica di una StringToDataSet Activity, denominata Parameters, nella regione Before Execution. |
Questa Activity dispone delle seguenti proprietà configurabili mediante il riquadro delle Properties:
✓ DisplayName, nome visualizzato per questa Activity nella working area del Designer;
✓ String, stringa che rappresenta la serializzazione XML del dataset in output di un oggetto del Package di tipo Parameter.
✓ Result, variabile di tipo DataSet contenente il risultato della conversione del campo String.
La proprietà String può essere impostata anche dalla working area del Designer mediante l'apposita maschera Configuration Parameters, accessibile premendo il box Select Parameters nel riquadro che espone l'Activity. Essa consente di:
✓ acquisire struttura e contenuto di ogni oggetto di tipo Parameter, da cui dipende l'oggetto della DataEntity Activity associata;
✓ aggiungere oggetti e relativi Parameter che possono condizionare l’esecuzione della DataEntity Activity;
✓ aggiungere o rimuovere righe e colonne dagli oggetti di tipo Parameter sincronizzati;
✓ decidere se utilizzare i valori di default di tali oggetti di tipo Parameter.
La maschera Configuration Parameter apre implicitamente il Package ed esegue un run preview del Book o del Data Engine, sottostante alla DataEntity associata. In caso di errori su tale Book o Data Engine nessun oggetto di tipo Parameter viene visualizzato. |
Il pulsante Sync all tables from consente di acquisire struttura e contenuto di uno degli oggetti di tipo Parameter, da cui dipende l'oggetto della DataEntity Activity in cui la StringToDataSet è annidata. Un'apposita drop down contestuale visualizza l'elenco dei Parameter disponibili. Si tratta di tutti i parametri che influenzano in modo diretto la DataEntity corrente.
Quando l'esecuzione di una DataEntity Activity dipende da altri oggetti a loro volta influenzati da oggetti di tipo Parameter, essi non sono raggiungibili tramite il pulsante Sync All Tables from. Il tasto Add table consente aggiungere manualmente tali Parameter mediante una maschera dedicata, dove è possibile:
✓ specificare il nome del dataset corrispondente;
✓ elencare le colonne, opportunamente tipizzate, che lo compongono.
Il pulsante Edit selected table consente di accedere ad una maschera in cui modificare la struttura del dataset associato al Parameter visualizzato nella finestra Configuration Parameters. In particolare è possibile:
✓ aggiungere e rimuovere le colonne che lo compongono;
✓ modificare il tipo dato ad esse associato.
I tasti Add Row e Remove selected row
consentono, rispettivamente, di aggiungere nuovi record o eliminare uno o più righe selezionati sul Parameter attualmente visualizzato nella maschera Configuration Parameters.
Il pulsante Sync selected table form permette di aggiornare il Parameter attualmente visualizzato nella maschera Configuration Parameters, ricaricando il dataset ad esso sottostante.
Ogni modifica alla struttura del dataset sottostante al Parameter visualizzato viene eliminata ogni volta che si preme il tasto Sync selected table form. |
Infine il pulsante Use Default Parameters consente di forzare l'utilizzo dei valori di default dei parametri visualizzati nella maschera Configuration Parameters.
APPROFONDIMENTO: VALORIZZARE PARAMETRI IN INPUT Per consentire ad un Workflow in esecuzione di richiedere la valorizzazione run-time dei parametri da cui dipende una DataEntity Activity, occorre: ✓ definire un Argument per ogni colonna dell'oggetto di tipo Parameter referenziato da una StringToDataSet Activity; ✓ inserire nella regione Before Execution una Sequence Activity contenente la StringToDataSet Activity che referenzia il Parameter e una Assign Activity per ogni Argument.
Le Assign Activity permettono di associare ad ogni Argument una specifica colonna dell'oggetto Parameter, rappresentante uno dei parametri da cui dipende l'esecuzione della DataEntity Activity corrente. La sintassi corretta con cui realizzare questa assegnazione è la seguente: [Variable].Tables("Parameter").Rows(n)("Field") = [Argument] dove indichiamo con: ✓ Variable, nome della variabile, specificata nella proprietà Parameters della DataEntity Activity corrente, contenente l'oggetto Parameter di interesse; ✓ Parameter, full name (case-sensitive) dell’oggetto di tipo Parameter; ✓ Field, nome della colonna dell’oggetto Parameter associato all’Argument corrente; ✓ Row, record dell’oggetto Parameter da considerare come valore di default. Il numero intero n con cui identificare il record contenente il valore di default parte da zero (e.g. la seconda riga è identificata da n uguale a 1).
La valorizzazione dei parametri in input è valida anche in caso si sostituisca l'Argument con una Variable. |