ReportingService2005.CancelBatch Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membatalkan batch yang dimulai oleh panggilan ke CreateBatch() metode .
public:
void CancelBatch();
public void CancelBatch ();
member this.CancelBatch : unit -> unit
Public Sub CancelBatch ()
Contoh
Untuk mengkompilasi contoh kode ini, Anda harus mereferensikan Reporting Services Web Service Description Language (WSDL) dan mengimpor namespace tertentu. Untuk informasi selengkapnya, lihat Mengkompilasi dan Menjalankan Contoh Kode. Contoh kode berikut membatalkan batch, mencoba menjalankannya, dan menampilkan detail kesalahan:
Imports System
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2005()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim bh As New BatchHeader()
bh.BatchID = rs.CreateBatch()
rs.BatchHeaderValue = bh
rs.CreateFolder("New Folder1", "/", Nothing)
rs.CreateFolder("New Folder2", "/", Nothing)
rs.CreateFolder("New Folder3", "/", Nothing)
Console.WriteLine("Cancelling current batch operation.")
' Cancel the current batch.
Try
rs.CancelBatch()
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
Try
' Generates an error because the batch has already been cancelled.
rs.ExecuteBatch()
Console.WriteLine("The batch executed successfully.")
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
Console.WriteLine("The batch was not executed.")
Finally
rs.BatchHeaderValue = Nothing
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.Web.Services.Protocols;
class Sample
{
public static void Main()
{
ReportingService rs = new ReportingService2005();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
BatchHeader bh = new BatchHeader();
bh.BatchID = rs.CreateBatch();
rs.BatchHeaderValue = bh;
rs.CreateFolder("New Folder1", "/", null);
rs.CreateFolder("New Folder2", "/", null);
rs.CreateFolder("New Folder3", "/", null);
Console.WriteLine("Cancelling current batch operation.");
// Cancel the current batch.
try
{
rs.CancelBatch();
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.InnerXml.ToString());
}
try
{
// Generates an error because the batch has already been cancelled.
rs.ExecuteBatch();
Console.WriteLine("The batch executed successfully.");
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.InnerXml.ToString());
Console.WriteLine("The batch was not executed.");
}
finally
{
rs.BatchHeaderValue = null;
}
}
}
Keterangan
Tabel di bawah ini memperlihatkan informasi header dan izin pada operasi ini.
Header SOAP | (Dalam) BatchHeaderValue (Keluar) ServerInfoHeaderValue |
Memerlukan izin | Pengguna harus menjadi administrator database atau yang dikonfigurasi sebagai akun eksekusi yang tidak dijaga. Untuk informasi selengkapnya, lihat Akun Eksekusi (Mode Asli SSRS). |
Anda harus menentukan ID batch yang ingin Anda batalkan sebelum memanggil CancelBatch metode . Anda dapat melakukan ini dengan mengatur BatchHeaderValue properti layanan Web Server Laporan ke nilai yang sama dengan ID batch yang dihasilkan saat batch dibuat.
Ketika metode dipanggil CancelBatch , setiap panggilan metode yang terkait dengan ID batch tidak dapat lagi dijalankan. Setiap upaya untuk menjalankan batch dengan ID batch yang dibatalkan menghasilkan pengecualian SOAP dengan kode rsBatchNotFound
kesalahan .