Bagikan melalui


Membandingkan Tugas Skrip dan Komponen Skrip

Berlaku untuk: Integration Runtime SSIS SQL Server di Azure Data Factory

Tugas Skrip, tersedia di jendela Alur Kontrol perancang Layanan Integrasi, dan komponen Skrip, yang tersedia di jendela Aliran Data, memiliki tujuan yang sangat berbeda dalam paket Layanan Integrasi. Tugas ini adalah alat alur kontrol tujuan umum, sedangkan komponen berfungsi sebagai sumber, transformasi, atau tujuan dalam aliran data. Meskipun tujuannya berbeda, namun, tugas Skrip dan komponen Skrip memiliki beberapa kesamaan dalam alat pengkodian yang mereka gunakan dan objek dalam paket yang mereka sediakan untuk pengembang. Memahami kesamaan dan perbedaannya dapat membantu Anda menggunakan tugas dan komponen secara lebih efektif.

Kesamaan antara Tugas Skrip dan Komponen Skrip

Tugas Skrip dan komponen Skrip berbagi fitur umum berikut.

Fitur Deskripsi
Dua mode waktu desain Dalam tugas dan komponen, Anda mulai dengan menentukan properti di editor, lalu beralih ke lingkungan pengembangan untuk menulis kode.
Microsoft® Visual Studio® Tools for Applications (VSTA) Baik tugas maupun komponen menggunakan VSTA IDE yang sama, dan kode dukungan yang ditulis dalam Microsoft Visual Basic atau Microsoft Visual C#.
Skrip yang telah dikommpilasikan sebelumnya Mulai SQL Server 2008 Integration Services (SSIS), semua skrip telah dikommpilasikan sebelumnya. Di versi sebelumnya, Anda dapat menentukan apakah skrip telah dikommpilasikan sebelumnya.

Skrip ini telah dikompilasi ke dalam kode biner, memungkinkan eksekusi yang lebih cepat, tetapi dengan biaya peningkatan ukuran paket.
Awakutu Baik tugas maupun komponen mendukung titik henti dan melangkah melalui kode saat men-debug di lingkungan desain. Untuk informasi selengkapnya, lihat Mengkoding dan Men-debug Tugas Skrip dan Pengkodian dan Men-debug Komponen Skrip.

Perbedaan antara Tugas Skrip dan Komponen Skrip

Tugas Skrip dan komponen Skrip memiliki perbedaan penting berikut.

Fitur Tugas Skrip Komponen Skrip
Alur kontrol / Aliran data Tugas Skrip dikonfigurasi pada tab Alur Kontrol perancang dan berjalan di luar aliran data paket. Komponen Skrip dikonfigurasi pada halaman Aliran Data perancang dan mewakili sumber, transformasi, atau tujuan dalam tugas Aliran Data.
Tujuan Tugas Skrip dapat menyelesaikan hampir semua tugas tujuan umum. Anda harus menentukan apakah Anda ingin membuat sumber, transformasi, atau tujuan dengan komponen Skrip.
Eksekusi Tugas Skrip menjalankan kode kustom pada beberapa titik dalam alur kerja paket. Kecuali Anda memasukkannya ke dalam kontainer perulangan atau penanganan aktivitas, itu hanya berjalan sekali. Komponen Skrip juga berjalan sekali, tetapi biasanya menjalankan rutinitas pemrosesan utamanya sekali untuk setiap baris data dalam aliran data.
Editor Editor Tugas Skrip memiliki tiga halaman: Umum, Skrip, dan Ekspresi. Hanya properti ReadOnlyVariables dan ReadWriteVariables, dan ScriptLanguage yang secara langsung memengaruhi kode yang dapat Anda tulis. Editor Transformasi Skrip memiliki hingga empat halaman: Kolom Input, Input dan Output, Skrip, dan Pengelola Koneksi. Metadata dan properti yang Anda konfigurasikan di setiap halaman ini menentukan anggota kelas dasar yang dibuat secara otomatis untuk penggunaan Anda dalam pengodean.
Interaksi dengan paket Dalam kode yang ditulis untuk tugas Skrip, Anda menggunakan properti Dts untuk mengakses fitur lain dari paket. Properti Dts adalah anggota kelas ScriptMain . Dalam kode komponen Skrip, Anda menggunakan properti aksesor yang di ketik untuk mengakses fitur paket tertentu seperti variabel dan manajer koneksi.

Metode PreExecute hanya dapat mengakses variabel baca-saja. Metode PostExecute dapat mengakses variabel baca-saja dan baca/tulis.

Untuk informasi selengkapnya tentang metode ini, lihat Pengodean dan Penelusuran Kesalahan Komponen Skrip.
Menggunakan variabel Tugas Skrip menggunakan Variables properti objek Dts untuk mengakses variabel yang tersedia melalui tugas ReadOnlyVariables dan ReadWriteVariables properti. Contohnya:

[Visual Basic]

Dim myVar as String
myVar = Dts.Variables("MyStringVariable").Value.ToString

[C#]

string myVar;
myVar = Dts.Variables["MyStringVariable"].Value.ToString();
Komponen Skrip menggunakan properti pengakses yang ditik dari kelas berbasis yang dibuat secara otomatis, yang dibuat dari komponen ReadOnlyVariables dan ReadWriteVariables properti. Contohnya:

[Visual Basic]

Dim myVar as String
myVar = Me.Variables.MyStringVariable

[C#]

string myVar;
myVar = this.Variables.MyStringVariable;
Menggunakan koneksi Tugas Skrip menggunakan Connections properti objek Dts untuk mengakses manajer koneksi yang ditentukan dalam paket. Contohnya:

[Visual Basic]

Dim myFlatFileConnection As String
myFlatFileConnection = _ DirectCast(Dts.Connections("Test Flat File Connection").AcquireConnection(Dts.Transaction), _ String)

[C#]

string myFlatFileConnection;
myFlatFileConnection = (Dts.Connections["Test Flat File Connection"].AcquireConnection(Dts.Transaction) as String);
Komponen Skrip menggunakan properti pengakses yang ditik dari kelas dasar yang dibuat secara otomatis, yang dibuat dari daftar manajer koneksi yang dimasukkan oleh pengguna di halaman Pengelola Koneksi editor. Contohnya:

[Visual Basic]

Dim connMgr As IDTSConnectionManager100
connMgr = Me.Connections.MyADONETConnection

[C#]

IDTSConnectionManager100 connMgr;
connMgr = this.Connections.MyADONETConnection;
Menaikkan peristiwa Tugas Skrip menggunakan Events properti objek Dts untuk menaikkan peristiwa. Contohnya:

[Visual Basic]

Dts.Events.FireError(0, "Event Snippet", _ ex.Message & ControlChars.CrLf & ex.StackTrace, _ "", 0)

[C#]

Dts.Events.FireError(0, "Event Snippet", ex.Message + "\r" + ex.StackTrace, "", 0);
Komponen Skrip menimbulkan kesalahan, peringatan, dan pesan informasi dengan menggunakan metode antarmuka yang IDTSComponentMetaData100 dikembalikan oleh ComponentMetaData properti . Contohnya:

[Visual Basic]

Dim myMetadata as IDTSComponentMetaData100 myMetaData = Me.ComponentMetaData myMetaData.FireError(...)
Pembuatan Log Tugas Skrip menggunakan Log metode objek Dts untuk mencatat informasi ke penyedia log yang diaktifkan. Contohnya:

[Visual Basic]

Dim bt(0) As Byte Dts.Log("Test Log Event", _ 0, _ bt)

[C#]

byte[] bt = new byte[0];
Dts.Log("Test Log Event", 0, bt);
Komponen Skrip menggunakan Log metode kelas dasar yang dibuat secara otomatis untuk mencatat informasi ke penyedia log yang diaktifkan. Contohnya:

[Visual Basic]

Dim bt(0) As Byte

Me.Log("Test Log Event", _

0, _

bt)

[C#]

byte[] bt = new byte[0]; this.Log("Test Log Event", 0, bt);
Mengembalikan hasil Tugas Skrip menggunakan TaskResult properti dan properti opsional ExecutionValue objek Dts untuk memberi tahu runtime hasilnya. Komponen Skrip berjalan sebagai bagian dari tugas Aliran Data dan tidak melaporkan hasil menggunakan salah satu properti ini.

Lihat juga

Memperluas Paket dengan Tugas Skrip
Memperluas Aliran Data dengan Komponen Skrip