Foros del Web » Programación para mayores de 30 ;) » .NET »

Leer todos los DTS de SQLServer

Estas en el tema de Leer todos los DTS de SQLServer en el foro de .NET en Foros del Web. Hola a todos!!! Se podrá desde el Net leer todos los nombres de los paquetes DTS que tengo almacenados en SQLServer para su posterior ejecución?...
  #1 (permalink)  
Antiguo 22/05/2006, 10:42
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 20 años
Puntos: 0
Leer todos los DTS de SQLServer

Hola a todos!!!
Se podrá desde el Net leer todos los nombres de los paquetes DTS que tengo almacenados en SQLServer para su posterior ejecución?
__________________
Julio Hernández
  #2 (permalink)  
Antiguo 22/05/2006, 10:57
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Puedes empezar con ésto:

http://www.c-sharpcorner.com/Code/2002/Sept/DTSnCS.asp
http://www.15seconds.com/issue/030909.htm

realmente no los he probado, pero si puedes sería bueno que despues publiques como hacerlo para tenerlo como referencia y colocarlo en las faq´s, te echaría la mano pero ahorita ando algo apuradon... jeje

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 24/05/2006, 11:57
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 20 años
Puntos: 0
Gracias Root, en el propio manual se aclara todo, lo que tuve que hacer en mi caso es agregar la referencia Microsoft DTSPackage Object Library.

/// <summary>
/// Lee todos los paquetes DTS de SQLServer
/// </summary>
/// <returns>Un DataView conteniendo información del paquete</returns>
public DataView getDTSPackage()
{
DataTable tblPackage = new DataTable("tblPackage");
DataRow dtRow;

tblPackage.Columns.Add(new DataColumn("Nombre",System.Type.GetType("System.St ring")));
tblPackage.Columns.Add(new DataColumn("VersionID",System.Type.GetType("System .String")));


DTS.Application App = new DTS.Application();
DTS.PackageSQLServer package= App.GetPackageSQLServer("WINDOWS-108C049", "sa", "123456",
DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default );
DTS.PackageInfos Infos;
Infos = package.EnumPackageInfos("", false, "");
foreach(DTS.PackageInfo Info in Infos)
{
dtRow = tblPackage.NewRow();
dtRow["Nombre"] = Info.Name;
dtRow["VersionID"] = Info.VersionID;
tblPackage.Rows.Add(dtRow);
}

return tblPackage.DefaultView;
}

Un pequeño método que regresa un DataView de paquetes DTS conteniendo dos columnas, Nombre y VersionID del paquete

Saludos :)
__________________
Julio Hernández
  #4 (permalink)  
Antiguo 24/05/2006, 13:16
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 20 años
Puntos: 0
Aquí va otra para mandar a ejecutar paquetes DTS y talvez no haya la necesitad de ejecutarlos desde procedimientos almacenados.

Saludos.

/// <summary>
/// Manda a ejecutar un paquete DTS
/// </summary>
public void execDTSPackage(string name)
{
DTS.Package2Class package = new DTS.Package2Class();
try
{
Object MIA = System.Reflection.Missing.Value;
package.LoadFromSQLServer("WINDOWS-108C049", "sa", "123456", DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default ,"","","",name, ref MIA);
package.Execute();
}
finally
{
package.UnInitialize();
package=null;
}
}
__________________
Julio Hernández
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:31.