Info: Ausführen eines SQL Server-DTS-Pakets von Active Server Pages

Zusammenfassung

SQL Server Data Transformation Services (DTS) Pakete müssen von remote-Standorten ausgeführt werden. Active Server Pages (ASP) verwenden, können Sie von entfernten Standorten aus über das Intranet oder Internet ausführen da ASP Automatisierungsclient für Component Object Model (COM)-Komponenten und vom Browser ausgeführt werden kann.

Weitere Informationen

Ausführen eines DTS-Pakets von ASP-Code und erstellen Sie eine Instanz eines DTS-Paketobjekts entsprechenden Load-Methode aufrufen. Um einen lokalen Server-Paket ausführen, können Sie die LoadFromSQLServer -Methode. Beispiel:
<%@Language=VBScript %><% Option Explicit %>
<html>
<head>
<title>Q252987 Sample Code</title>
</head>
<body>

<%
Const DTSSQLStgFlag_Default = 0
Const DTSStepExecResult_Failure = 1

Dim oPkg, oStep, sMessage, bStatus

Set oPkg = Server.CreateObject("DTS.Package")
oPkg.LoadFromSQLServer "MyServer","MyUser","MyPassword",DTSSQLStgFlag_Default,"PackagePassword","","","MyPackage"
oPkg.Execute()

bStatus = True

For Each oStep In oPkg.Steps
sMessage = sMessage & "<p> Step [" & oStep.Name & "] "
If oStep.ExecutionResult = DTSStepExecResult_Failure Then
sMessage = sMessage & " failed<br>"
bStatus = False
Else
sMessage = sMessage & " succeeded<br>"
End If
sMessage = sMessage & "Task """ & oPkg.Tasks(oStep.TaskName).Description & """</p>"
Next

If bStatus Then
sMessage = sMessage & "<p>Package [" & oPkg.Name & "] succeeded</p>"
Else
sMessage = sMessage & "<p>Package [" & oPkg.Name & "] failed</p>"
End If

Response.Write sMessage
Response.Write "<p>Done</p>"

%>
</body>
</html>

Integrierte Windows NT-Authentifizierung

Windows NT-Authentifizierung integriert können in SQL Server Sie das DTS-Paket. Gehen Sie hierzu folgendermaßen vor:
  1. Konfigurieren Sie den Computer mit Microsoft Internet Information Server (IIS) zum Windows NT-Authentifizierung verwenden.
  2. Konfigurieren Sie den Computer mit SQL Server, um Zugriff auf alle Benutzer und Gruppen, die das Paket.
  3. Ändern Sie LoadFromSQLServer Methodenaufruf vertraute Verbindungen verwenden, wie im folgenden Code dargestellt:
       const DTSSQLStgFlag_UseTrustedConnection = 256   oPackage.LoadFromSQLServer "MyServer","","",DTSSQLStgFlag_UseTrustedConnection,"","","","MyPackage"

Mögliche Berechtigungsprobleme

Wenn Sie ein DTS-Paket aus einer ASP-Seite ausführen, führt das Paket im Kontext der Website-Besucher des Windows-Benutzers werden kann (wenn die Website für Basic oder NT-Authentifizierung konfiguriert ist) oder das anonyme Konto. Das Paket wird im Sicherheitskontext des Benutzers angegeben zum Laden des Pakets aus SQL Server nicht ausgeführt. Daher unbedingt sicherstellen, dass das Konto Ausführen des Pakets erforderlichen Windows-Berechtigungen für alle Ressourcen, die das Paket verwenden können – wie Dateien, DLLs und andere Treiber (für Import/Export-Vorgänge) – insbesondere wenn der Website konfiguriert ist für den anonymen Zugriff. Wenn ein Paket in DTS-Designer funktioniert und von anderen Clientanwendungen ist, jedoch nicht von Web Applications, beginnt Behandlung von Berechtigungsproblemen mit.

Weitere Informationen darüber, welche Windows-Konto zum Ausführen des DTS-Pakets verwendet werden finden Sie der Microsoft Knowledge Base:
269074 -INF: Ausführen ein DTS-Pakets als geplanter Auftrag

DTS-Ereignisse

Es ist nicht möglich, die Ereignisse des DTS-Paketobjekts im ASP-Code verwenden, da Anwendungserstellungsprojekt ASP-Code keine Ereignisse unterstützt. Benötigen Sie DTS-Ereignisse zu verwenden, Erstellen einer kompilierten ASP-Komponente in Microsoft Visual Basic oder Microsoft Visual C++ und rufen Sie das Objekt aus einer ASP-Seite. Die DLL kann dann vom ASP-Skript aufgerufen werden. Dieser Ansatz hat außerdem den Vorteil, die Zugriff auf die GetExecutionErrorInfo -Methode, die nicht in eine Skriptingumgebung verfügbar ist, da andere Variante "als Verweis" Argumente verwendet.

REFERENZEN

Weitere Informationen über IIS-Authentifizierungsmethoden finden Sie auf der Microsoft Developer Network (MSDN)-Website:
Klicken Sie für Weitere Informationen auf die nachstehende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:
240221 -INF: Fehler im DTS-Paket und Schrittobjekte Behandlung
Eigenschaften

Artikelnummer: 252987 – Letzte Überarbeitung: 10.01.2017 – Revision: 1

Feedback