tworzenie plików wsadowych metody
Użycie nagłówków protokołu SOAP Reporting Services Umożliwia uwzględnienie wielu metody usługa sieci Web w jednej operacji. Metody są uruchamiane w ramach zakres transakcji jednej bazy danych, w kolejności, w którym są one nazywane.
Przywracanie jest jedną z zalet przy użyciu metoda wielu partia operacji.W przypadku wystąpienia błędu w przypadku dowolnego wywołania metoda partia jest uruchomiona, serwer raportów wsadowego jest przerywane i powoduje powrót żadnych poprzedniej operacji.Jest to przydatne, gdy wywołanie metoda zależy od pomyślnego zakończenia innych wywołań metod, w tym partia.
usługa sieci Web nie zapewnia blokowania semantyka operacji wsadowych wielu metoda.Wiersze w bazie danych serwer raportów nie są zablokowane w celu zaktualizowania aż wiadomość jest wysyłana do serwera i wykonaj polecenie jest wywołane.
Istnieją także bez kontroli współbieżność, aby zagwarantować, że baza danych nie zmienił się od czasu ostatniego odczytu danych.Jeżeli dwóch klientów zmodyfikować ten sam towar, jeśli parametry są nadal ważne powiedzie się ostatniej aktualizacji (na przykład, element nie zmieniono).
Następujące wywołania przykład CreateFolder(String, String, array<Property[]) Metoda trzy razy i uruchamia te wywołania w jednej partia. Jeśli wywołań CreateFolder(String, String, array<Property[]) Niepowodzenie całej partia został anulowany.
Imports System
Imports System.Web.Services.Protocols
Imports myNamespace.MyReferenceName
Class Sample
Sub Main(args() As String)
Dim rs As New ReportingService2005()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
' Set the base Web service URL of the source server
rs.Url = "http://<Server Name>/reportserver/ReportService2005.asmx"
Dim bh As New BatchHeader()
bh.BatchId = service.CreateBatch()
rs.BatchHeaderValue = bh
rs.CreateFolder("New Folder1", "/", Nothing)
rs.CreateFolder("New Folder2", "/", Nothing)
rs.CreateFolder("New Folder3", "/", Nothing)
Console.WriteLine("Creating folders...")
rs.BatchHeaderValue = bh
rs.ExecuteBatch()
Console.WriteLine("Folders created successfully.")
rs.BatchHeaderValue = Nothing
End Sub
End Class
using System;
using System.Web.Services.Protocols;
using myNamespace.MyReferenceName;
class Sample
{
static void Main(string[] args)
{
ReportingService2005 rs = new ReportingService2005();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
// Set the base Web service URL of the source server
rs.Url = "http://<Server Name>/reportserver/ReportService2005.asmx"
BatchHeader bh = new BatchHeader();
bh1.BatchID = service.CreateBatch();
rs.BatchHeaderValue = bh;
rs.CreateFolder("New Folder1", "/", null);
rs.CreateFolder("New Folder2", "/", null);
rs.CreateFolder("New Folder3", "/", null);
Console.WriteLine("Creating folders...");
rs.BatchHeaderValue = bh1;
rs.ExecuteBatch();
Console.WriteLine("Folders created successfully.");
rs.BatchHeaderValue = null;
}
}
See Also
Reference
CancelBatch()
CreateBatch()