Cara Menggunakan Kontrol SharePoint MultipleLookupField: Panduan Langkah-demi-Langkah

Saat bekerja dengan SharePoint, Anda mungkin menemui skenario di mana Anda perlu mengaitkan beberapa item dari satu daftar dengan item di daftar lain. Salah satu kontrol yang berguna untuk mencapai ini adalah MultipleLookupField. Dalam posting ini, kami akan memandu Anda melalui cara menggunakan kontrol MultipleLookupField secara langkah-demi-langkah, memastikan Anda memahami cara menampilkan dan mengelola beberapa nilai lookup dalam web part Anda.

Masalah: Menghubungkan Dua Daftar

Tantangan utama adalah mengintegrasikan kontrol MultipleLookupField ke dalam halaman web yang berjalan dalam konteks SharePoint. Anda mungkin ingin menghubungkan dua koleksi field SharePoint, seperti tugas dan dokumen. Ini memerlukan beberapa pengaturan dasar serta pemahaman tentang bagaimana memanipulasi kontrol tersebut secara efektif.

Memulai dengan MultipleLookupField

Langkah 1: Buat Lingkungan SharePoint Anda

  1. Siapkan Situs Tim: Mulailah dengan membuat situs tim baru di SharePoint.
  2. Tambahkan Tugas: Masuk ke daftar Tugas dan buat beberapa tugas.
  3. Buat Dokumen: Unggah dokumen ke perpustakaan Dokumen Bersama.
  4. Buat Kolom Lookup:
    • Di perpustakaan Dokumen Bersama, buat kolom baru bernama “Terkait”.
    • Atur kolom ini menjadi field Lookup yang mereferensikan field “Judul” dari daftar Tugas.
    • Pastikan untuk mengizinkan beberapa nilai untuk kolom ini.

Langkah 2: Membuat Web Part

Untuk mulai menggunakan MultipleLookupField, Anda perlu membuat sebuah web part. Berikut adalah contoh sederhana untuk membimbing Anda melalui proses ini.

Struktur Dasar Web Part Anda

Label l;
MultipleLookupField mlf;

protected override void CreateChildControls()
{
    base.CreateChildControls();
    SPList list = SPContext.Current.Web.Lists["Shared Documents"];
    if (list != null && list.Items.Count > 0)
    {
        LiteralControl lit = new LiteralControl("Kaitkan tugas ke " + list.Items[0].Name);
        this.Controls.Add(lit);

        mlf = new MultipleLookupField();
        mlf.ControlMode = SPControlMode.Edit;
        mlf.FieldName = "Terkait";
        mlf.ItemId = list.Items[0].ID;
        mlf.ListId = list.ID;
        mlf.ID = "Terkait";
        this.Controls.Add(mlf);

        Button b = new Button();
        b.Text = "Ubah";
        b.Click += new EventHandler(bClick);
        this.Controls.Add(b);

        l = new Label();
        this.Controls.Add(l);
    }
}

void bClick(object sender, EventArgs e)
{
    l.Text = "";
    foreach (SPFieldLookupValue val in (SPFieldLookupValueCollection)mlf.Value)
    {
        l.Text += val.LookupValue.ToString() + " ";
    }

    SPListItem listitem = mlf.List.Items[0];
    listitem["Terkait"] = mlf.Value;
    listitem.Update();
    mlf.Value = listitem["Terkait"];
}

protected override void OnInit(EventArgs e)
{
    base.OnInit(e);
    EnsureChildControls();
}

Langkah 3: Menyebarkan Web Part Anda

  1. Bangun dan Sebarkan: Kompilasi kode Anda dan sebarluaskan web part ke lingkungan SharePoint Anda.
  2. Tambahkan Web Part ke Situs Anda: Buka halaman utama situs tim Anda dan tambahkan sebuah instance dari web part baru Anda.

Memahami Penangan Click

Penangan acara click bClick sangat penting untuk memperbarui antarmuka pengguna.

  • Mengambil Nilai: Ini dimulai dengan mengambil semua nilai yang dipilih dari MultipleLookupField dan menampilkannya.
  • Memperbarui Item Daftar: Ini memperbarui field “Terkait” dalam daftar dokumen dengan tugas yang dipilih, memastikan sinkronisasi antara antarmuka pengguna dan item daftar.

Catatan Tambahan

  • Contoh yang diberikan cukup dasar: penting untuk dicatat bahwa ini kurang mengandung penanganan kesalahan yang komprehensif dan tidak dimaksudkan untuk penggunaan produksi. Pertimbangkan untuk memperluasnya untuk penggunaan yang lebih baik.
  • Anda mungkin menemukan bahwa jika Anda mengomentari baris mlf.Value = listitem["Terkait"];, antarmuka pengguna mungkin tidak tersinkronisasi dengan benar dengan data yang mendasarinya, sehingga menjadikan baris ini diperlukan untuk fungsi yang tepat.

Kesimpulan

Dengan mengikuti langkah-langkah yang diuraikan di atas, Anda dapat berhasil mengintegrasikan kontrol MultipleLookupField ke dalam situs SharePoint Anda. Ini memungkinkan manajemen yang efisien dari item terkait dari daftar yang berbeda, meningkatkan pengalaman SharePoint Anda secara keseluruhan. Dengan sedikit latihan dan penyempurnaan, Anda dapat mengubah prinsip dasar ini menjadi solusi yang kuat yang disesuaikan dengan kebutuhan spesifik Anda.

Jangan ragu untuk menghubungi dengan pertanyaan atau membagikan pengalaman Anda menggunakan kontrol MultipleLookupField di SharePoint!