Linguaggio

ASExecuteDDLTask.Source Proprietà

Definizione

Ottiene o imposta il nome della sorgente che contiene l'istruzione DDL da inviare al server Analysis Services.

public:
 property System::String ^ Source { System::String ^ get(); void set(System::String ^ value); };
public string Source { get; set; }
member this.Source : string with get, set
Public Property Source As String

Valore della proprietà

Il nome della sorgente che contiene l'istruzione DDL da inviare al server Analysis Services.

Esempio

Il seguente esempio di codice crea, configura ed esegue un nuovo ASExecuteDDLTask che carica l'istruzione DDL da eseguire da una connessione a un file. Il campione utilizza questa Source proprietà.

using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.DataTransformationServices.Tasks.DTSProcessingTask;  

class Module1  
{  

  public static void Main()  
  {  

    Package pkg = new Package();  

    ConnectionManager asCM;  
    asCM = pkg.Connections.Add("MSOLAP100");  
    asCM.Name = "Analysis Services Connection Manager";  
    asCM.ConnectionString = "Data Source=<servername>;" +  
      "Initial Catalog=Adventure Works DW;Provider=MSOLAP;" +  
      "Integrated Security=SSPI;Impersonation Level=Impersonate;";  

    ConnectionManager cmdCM;  
    cmdCM = pkg.Connections.Add("FILE");  
    cmdCM.Name = "Command Source Connection Manager";  
    cmdCM.ConnectionString = "C:\\ddltest.txt";  

    Executable exe = pkg.Executables.Add("Microsoft.DataTransformationServices.Tasks.DTSProcessingTask.ASExecuteDDLTask, " +  
      "Microsoft.SqlServer.ASTasks, Version=10.0.0.0, " +  
      "Culture=neutral, PublicKeyToken=89845dcd8080cc91");  
    TaskHost thTask = (TaskHost) exe;  
    {  
      thTask.Properties("ConnectionName").SetValue(thTask, "Analysis Services Connection Manager");  
      thTask.Properties("SourceType").SetValue(thTask, DDLSourceType.FileConnection);  
      thTask.Properties("Source").SetValue(thTask, "Command Source Connection Manager");  
    }  

    DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);  

    if (valResults==DTSExecResult.Success)  
    {  
      pkg.Execute();  
    }  

  }  

}  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.DataTransformationServices.Tasks.DTSProcessingTask  

Module Module1  

  Sub Main()  

    Dim pkg As New Package  

    Dim asCM As ConnectionManager  
    asCM = pkg.Connections.Add("MSOLAP100")  
    asCM.Name = "Analysis Services Connection Manager"  
    asCM.ConnectionString = "Data Source=<servername>;" & _  
      "Initial Catalog=Adventure Works DW;Provider=MSOLAP;" & _  
      "Integrated Security=SSPI;Impersonation Level=Impersonate;"  

    Dim cmdCM As ConnectionManager  
    cmdCM = pkg.Connections.Add("FILE")  
    cmdCM.Name = "Command Source Connection Manager"  
    cmdCM.ConnectionString = "C:\ddltest.txt"  

    Dim exe As Executable = pkg.Executables.Add( _  
      "Microsoft.DataTransformationServices.Tasks.DTSProcessingTask.ASExecuteDDLTask, " & _  
      "Microsoft.SqlServer.ASTasks, Version=10.0.0.0, " & _  
      "Culture=neutral, PublicKeyToken=89845dcd8080cc91")  
    Dim thTask As TaskHost = CType(exe, TaskHost)  
    With thTask  
      .Properties("ConnectionName").SetValue(thTask, _  
        "Analysis Services Connection Manager")  
      .Properties("SourceType").SetValue(thTask, DDLSourceType.FileConnection)  
      .Properties("Source").SetValue(thTask, "Command Source Connection Manager")  
    End With  

    Dim valResults As DTSExecResult = pkg.Validate( _  
      pkg.Connections, pkg.Variables, Nothing, Nothing)  

    If valResults = DTSExecResult.Success Then  
      pkg.Execute()  
    End If  

  End Sub  

End Module  

Commenti

Questa proprietà funziona con la SourceType proprietà. Se il tipo sorgente è una variabile e la variabile è nulla, la String restituita è vuota. Se il tipo di sorgente è una connessione e c'è un errore nel recuperare la connessione, il String ritorno è vuoto.

L'istruzione DDL consiste in un'istruzione XML for Analysis (XMLA) che contiene i comandi XMLA Create, Alter, Delete o comandi, in un formato simile all'esempio che segue:

<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">

<ParentObject>

<DatabaseID>Adventure Works DW</DatabaseID>

</ParentObject>

<ObjectDefinition>

<Dimension xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<ID>Dim Customer</ID>

<Name>Customer</Name>

<Annotations>

...

</Annotations>

<Source xsi:type="DataSourceViewBinding">

<DataSourceViewID>Adventure Works DW</DataSourceViewID>

</Source>

<Type>Customers</Type>

<Language>1033</Language>

<Collation>Latin1_General_CI_AS</Collation>

<UnknownMemberName>Unknown</UnknownMemberName>

<Translations>

...

</Translations>

<Attributes>

...

</Attributes>

...

</Dimension>

</ObjectDefinition>

</Create>

Si applica a