SQL Server ed ALM su database


Il blog di Alessandro Alpi
Archivio Posts
Anno 2018

Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

Come raggiungere le proprietà di un SSIS

Tramite Visual Studio Business Intelligence Development Studio è possibile configurare il pacchetto e renderlo dinamico, in base ad alcune impostazioni definibili tramite la voce di menu SSIS --> Package Configuration.



Tramite questa interfaccia è possibile impostare particolari comportamenti e determinate proprietà del pacchetto.
Premendo il tasto "Aggiungi" è possibile definire come il package verrà configurato a runtime. Le possibilità sono varie:



- File Configurazione XML
    che consente di partire da un determinato file XML contenente tutte le proprietà da "mappare" all'interno del nostro SSIS

- Variabile di ambiente
   
che permette di utilizzare il valore di una variabile di Environment di Windows

- Voce del registro di sistema
   
ovvero l'utilizzo di una chiave del registro con il relativo valore

- Variabile del pacchetto padre
   
Una variabile di un SSIS da cui quello che stiamo scrivendo deriva

- SQL Server
    che consente di utilizzare una tabella di configurazione residente su SQL Server, in base ad un filtro ben definito

Per ogni caso è possibile definire il percorso specifico su cui trovare la configurazione, tramite una variabile di ambiente fissa (voce sotto a quella predefinita).

Ognuna di queste possibilità ritorna un valore o un elenco di valori che poi possono essere associati alle proprietà del pacchetto che stiamo progettando. Ad esempio, è possibile associare la connectionstring di un ConnectionManager andando a leggere un file xml, piuttosto che una tabella sql server oppure una variabile proveniente dal package padre.
In questo modo, il pacchetto può avere comportamenti diversi in base alla configurazione che gli si assegna. Può risultare molto utile elaborare configurazioni su server di sviluppo, collaudo e produzione, in modo che ogni ambiente trasformi il SSIS in qualcosa di proprio, e che il SSIS si aggrappi all'ambiente stesso, lavorando su uno scope ben definito.
A prescindere da questo, lo strumento di configurazione del package consente di raggiungere in maniera mirata la proprietà che si vuole impostare:



Quando invece si vuole configurare il pacchetto dall'esterno, e quindi utilizzando DTEXECUI oppure scrivendo un JOB di SQL Server 2005, non esiste un percorso come quello appena indicato nelle immagini. E' necessario scrivere a mano il percorso per scrivere il valore passato alle proprietà del SSIS.


Per questo eccovi un elenco delle sintassi per reperire le vostre proprietà all'interno del DTSX (Le parti in corsivo sono FISSE):

Proprietà di un pacchetto
    \Package.Properties[NomeProprietà]
    ES: \Package.Properties[Description] oppure \Package.Properties[Disable], ecc..

Valori di variaibli
    \Package.Variables[Namespace::VariableName].Properties[NomeProprietà]
   
ES: \Package.Variables[Utente::Variabile1].Properties[Value]

Variabili in un container
    \Package\NomeContainer.Variables[Namespace::VariableName].Properties[NomeProprietà]
    ES: \Package\DataFlow1.Variables[Utente::Variabile5].Properties[Value]

Stringhe di connessione
   
\Package.Connections[NomeConnectionManager].Properties[ConnectionString]
    ES: \Package.Connections[DBSviluppo].Properties[ConnectionString]

Proprietà di un container o di un task
    \Package\NomeContainer.Properties[NomeProprietà]
    ES: \Package\DataFlow1.Properties[Description]

Proprietà di un task all'interno di un container
    \Package\NomeContainer\NomeTask.Properties[NomeProprietà]
   
ES: \Package\ForContainer1\AttivitàEseguiSQL1.Properties[Description]

N.B. In alcune voci è stata indicata la proprietà Value, ma è possibile utilizzarne anche altre, come Description, EvaluateAsExpression, ecc..

Seguendo questa sintassi è possibile impostare i valori a determinate proprietà del package, anche se sinceramente un wizard incluso nella DTEXECUI oppure nelle form di creazione dei JOB di SQL Server 2005 non sarebbe male..
attendiamo fiduciosi
Categoria: SSIS 2005 tips
lunedì, 30 apr 2007 Ore. 14.36
Statistiche
  • Views Home Page: 601.390
  • Views Posts: 1.068.621
  • Views Gallerie: 641.208
  • n° Posts: 484
  • n° Commenti: 273



















Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003