> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Formulir terkait

> Pelajari cara menggunakan komponen formulir terkait di YiDA untuk menautkan data dari formulir lain, mengisi otomatis bidang, mengatur informasi utama dan sekunder, mode pilih banyak, aturan pengisian, serta filter data.

## 1. Formulir terkait

### 1.1 Apa itu formulir terkait

Komponen formulir terkait menautkan data dari formulir lain dan mengisi data tersebut ke komponen dalam formulir saat ini.

Komponen ini juga mendukung penyaringan saat mengambil data dari formulir terkait.

Komponen formulir terkait

**Catatan: Pada versi terbaru,** formulir terkait mendukung formulir lintas aplikasi.

#### 1.2 Kasus penggunaan

* Lihat data dari formulir lain di formulir saat ini dan buka dengan sekali klik.

## 2. Atribut asosiasi

### 2.1 Formulir terkait dan konten yang ditampilkan

* Tautkan ke formulir reguler dan formulir alur kerja lainnya.

Atribut asosiasi

Pengaturan tampilan

#### 2.1.1 Informasi yang ditampilkan pada formulir terkait (informasi utama dan sekunder)

Informasi utama dan sekunder digunakan untuk menampilkan dan mencari data di Daftar Dropdown komponen formulir terkait.

Atur informasi utama dan sekunder

* Informasi utama dapat digunakan untuk pencarian saat data dikirim. Saat ini hanya komponen input teks yang didukung (termasuk nomor seri). Informasi sekunder dapat berupa komponen formulir apa pun.
* Pengaturan tampilan wajib diisi saat data dikirim. Jika fitur nomor seri Diaktifkan, informasi utama menampilkan nomor seri secara Default. Ubah jika diperlukan.

**Catatan**: Jika fitur nomor seri Diaktifkan dan tidak ada nilai yang dimasukkan, nomor seri digunakan secara Default.

#### 2.1.2 Mode Pilih Banyak

Formulir terkait mendukung mode pilih tunggal dan Pilih Banyak. Pilih tunggal adalah default (mode Pilih Banyak nonaktif).

Mode Pilih Banyak

**Catatan**: Pengisian data hanya didukung pada mode pilih tunggal. Tidak didukung pada mode Pilih Banyak.

#### 2.1.3 Pengisian data

* Selain memilih data dari formulir lain, pengisian data menyalin bidang dari rekaman terkait yang dipilih ke bidang dalam formulir saat ini.

Pengisian data

* Saat Anda mengatur kondisi pengisian, tentukan beberapa Kondisi untuk bidang yang sama pada kotak dialog yang muncul.

Catatan: Jika formulir terkait digunakan bersama dengan subformulir, hanya keterkaitan data formula rekaman tunggal yang didukung. Mengisi subformulir dengan beberapa rekaman tidak didukung.

* Karena adanya perbedaan struktur data, batasan pemetaan bidang berlaku, seperti yang ditunjukkan pada tabel berikut:

**Pemetaan bidang untuk pengisian data**

| **Tipe bidang di formulir terkait**                                                | **Tipe bidang yang dapat dipilih di formulir saat ini**           |
| ---------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Pilih                                                                              | Pilih, Pilih Dropdown, Teks satu baris, Numerik                   |
| Pilih Dropdown                                                                     | Pilih, Pilih Dropdown, Teks satu baris, Numerik                   |
| Pilih Banyak                                                                       | Pilih Banyak, Pilih Banyak Dropdown, Numerik                      |
| Pilih Banyak Dropdown                                                              | Pilih Banyak, Pilih Banyak Dropdown, Numerik                      |
| Teks satu baris                                                                    | Pilih, Pilih Dropdown, Teks satu baris, Teks multi-baris, Numerik |
| Teks multi-baris                                                                   | Pilih, Pilih Dropdown, Teks satu baris, Teks multi-baris, Numerik |
| Tipe lain (seperti Alamat)                                                         | Hanya tipe yang sama (seperti Alamat)                             |
| \[Bidang sistem] ID Instance (saat ini hanya didukung untuk pengisian subformulir) | Teks satu baris                                                   |

#### 2.1.4 Izinkan pembuatan rekaman di formulir terkait

Komponen formulir terkait mengizinkan pembuatan rekaman secara default, yang berarti tombol buat muncul di dropdown pemilihan dan pada halaman manajemen.

Buat rekaman di formulir terkait

* Formulir alur kerja tidak mendukung pembuatan rekaman.

**① Halaman manajemen formulir terkait**

Filter dan Cari data di formulir terkait. Halaman ini berfungsi sebagai halaman manajemen data untuk formulir tersebut.

#### 2.1.5 Penyaringan data

Penyaringan data berarti menetapkan Filter terlebih dahulu untuk membatasi rentang data yang terlihat saat pengiriman data.

Penyaringan data

**① Atur Filter**

* Tersedia dua tipe: nilai dan bidang.

Nilai: nilai tetap. Masukkan atau Pilih nilai di kotak input atau kontrol di sebelah kanan.

Bidang: Kondisi berubah secara dinamis berdasarkan nilai bidang pada halaman saat ini, yang memengaruhi Daftar Dropdown dan Hasil pencarian.

**Catatan:**

* Data terkait yang sudah Dipilih tidak terpengaruh oleh perubahan Kondisi, dan tidak dihapus meskipun Kondisi tidak lagi terpenuhi.
* Setiap bidang hanya mendukung satu set Filter. Beberapa Komponen, seperti rentang tanggal, mendukung Kondisi rentang terpisah.

**② Batasan bidang untuk Filter**

Karena batasan sistem, tidak semua bidang mendukung pencarian atau dapat digunakan sebagai Filter bidang.

Tabel berikut mencantumkan Komponen yang tidak mendukung pencarian dan pemetaan bidang untuk tipe filter bidang.

**Komponen yang tidak mendukung pencarian**

<table>
  <tr>
    <td>**Nama komponen**</td>
    <td>**Pengidentifikasi komponen**</td>
  </tr>

  <tr>
    <td>Subformulir</td>
    <td>TableField</td>
  </tr>

  <tr>
    <td>Teks Kaya</td>
    <td>EditorField</td>
  </tr>

  <tr>
    <td>Formulir terkait</td>
    <td>AssociationFormField</td>
  </tr>

  <tr>
    <td colSpan={2}>Bidang lain yang dikecualikan dari pencarian di pengaturan halaman</td>
  </tr>
</table>

**Pemetaan bidang untuk kondisi tipe bidang**

| **Tipe bidang di formulir terkait** | **Tipe bidang yang dapat dipilih di formulir saat ini**           |
| ----------------------------------- | ----------------------------------------------------------------- |
| Pilih                               | Pilih, Pilih Dropdown, Teks satu baris, Numerik                   |
| Pilih Dropdown                      | Pilih, Pilih Dropdown, Teks satu baris, Numerik                   |
| Pilih Banyak                        | Pilih Banyak, Pilih Banyak Dropdown                               |
| Pilih Banyak Dropdown               | Pilih Banyak, Pilih Banyak Dropdown                               |
| Teks satu baris                     | Pilih, Pilih Dropdown, Teks satu baris, Teks multi-baris, Numerik |
| Teks multi-baris                    | Pilih, Pilih Dropdown, Teks satu baris, Teks multi-baris, Numerik |
| Tipe lain (seperti Alamat)          | Hanya tipe yang sama (seperti Alamat)                             |

**Catatan**: Bidang dengan Filter tidak lagi muncul di daftar bidang pencarian yang tersedia.

## 3. Mengirim data formulir terkait dan melihat detail

Perhatikan hal berikut saat Anda mengirim halaman yang berisi komponen formulir terkait setelah mengisinya sesuai dengan penyaringan data dan kondisi pengisian yang dikonfigurasi:

1. Jika halaman terkait adalah halaman formulir, semua data yang dikirim tersedia untuk dipilih.

2. Jika halaman terkait adalah halaman alur kerja, data yang dikirim tersedia untuk dipilih hanya setelah Persetujuan Selesai.

Setelah pengiriman di PC

1. Pada halaman detail, klik bidang formulir terkait untuk membuka halaman detail dari instance terkait.

**Catatan**: Jika bidang informasi utama pada formulir terkait tidak memiliki data, ID FINST dari instance data tersebut ditampilkan sebagai gantinya. ID tersebut juga muncul sebagai hyperlink biru yang membuka halaman detail.

Setelah pengiriman di perangkat seluler:

1. Pada halaman detail seluler, ikon panah di sebelah kanan komponen formulir terkait menunjukkan bahwa rekaman dapat dibuka.

## 4. Format data

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
[
  {
    appType: 'APP_XOXRQ4842LVM51RRJC7N',
    formType: 'receipt',
    formUuid: 'FORM-DFYJ319VV0ILV3BW1C8HHBHHJPXI3X095L5IK1',
    instanceId: 'FINST-DFYJ319VD4IL2SMEZH8Q63MY7UR3302NRL5IK1',
    subTitle: 'BB',
    title: 'AA',
  }
]
```

## 6. FAQ

<AccordionGroup>
  <Accordion id="q1" title="T: Apa perbedaan antara formulir terkait dan asosiasi data dari formulir lain?">
    Formulir terkait lebih powerful dan akan secara bertahap menggantikan fitur lama. Jangan terus menggunakan fitur yang menautkan data dari formulir lain.
  </Accordion>

  <Accordion id="q2" title="T: Mengapa formulir terkait tidak dapat mereferensikan komponen di dalam subformulir?">
    Fitur ini belum didukung.
  </Accordion>

  <Accordion id="q3" title="T: Dapatkah saya memilih komponen formulir terkait untuk keterkaitan data?">
    Fitur ini belum didukung.
  </Accordion>

  <Accordion id="q4" title="T: Bagaimana cara memberi nilai pada komponen formulir terkait dengan JS?">
    **Prosedur:**

    Salin kode berikut dan modifikasi sesuai kebutuhan:

    ```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
    this.$('associationFormComponentId').setValue(
    [
      {
        appType: 'APP_XOXRQ4842LVM51RRJC7N',  // Kode aplikasi
        formType: 'receipt',    // Tipe formulir yang terikat pada komponen formulir terkait: receipt atau process
        formUuid: 'FORM-DFYJ319VV0ILV3BW1C8HHBHHJPXI3X095L5IK1',  // ID unik formulir
        instanceId: 'FINST-DFYJ319VD4IL2SMEZH8Q63MY7UR3302NRL5IK1',  // ID instance data terkait
        subTitle: 'BB',  // Bidang informasi sekunder
        title: 'AA',  // Bidang informasi utama
      },
      {
        appType: 'APP_XOXRQ4842LVM51RRJC7N',  // Kode aplikasi
        formType: 'receipt',    // Tipe formulir yang terikat pada komponen formulir terkait: receipt atau process
        formUuid: 'FORM-DFYJ319VV0ILV3BW1C8HHBHHJPXI3X095L5IK2',  // ID unik formulir
        instanceId: 'FINST-DFYJ319VD4IL2SMEZH8Q63MY7UR3302NRL5IK2',  // ID instance data terkait
        subTitle: 'DD',  // Bidang informasi sekunder
        title: 'CC',  // Bidang informasi utama
      }
      ……
    ]
    )
    ```

    Hasil:
  </Accordion>

  <Accordion id="q5" title="T: Formulir terkait saya memiliki lebih dari 20 rekaman tetapi hanya 20 yang ditampilkan. Bagaimana cara mengakses sisanya?">
    Formulir terkait hanya menampilkan 20 rekaman secara default. Masukkan kata kunci untuk mencari konten lainnya.
  </Accordion>

  <Accordion id="q6" title="T: Apakah formulir terkait mendukung impor massal?">
    Ya. Untuk aturan impor, lihat [https://docs.aliwork.com/docs/yida\_updates/gddpov#k27QX](https://docs.aliwork.com/docs/yida_updates/gddpov#k27QX).
  </Accordion>

  <Accordion id="q7" title="T: Apakah formulir terkait mendukung pengaturan deduplikasi?">
    Belum. Sebagai solusi, gunakan aturan asosiasi bisnis untuk menyinkronkan data ke tabel perantara, jaga agar data di tabel tersebut tetap unik, dan atur tabel perantara sebagai Sumber Data dari formulir terkait.
  </Accordion>

  <Accordion id="q8" title="T: Bagaimana jika muncul Pesan error 'Data does not meet the filter conditions'?">
    Pesan error ini disebabkan oleh spasi pada data terkait. Hapus spasi dari data terkait.
  </Accordion>

  <Accordion id="q9" title="T: Mengapa bidang yang dipilih pada formulir terkait ditampilkan sebagai ID instance?">
    Periksa apakah bidang tersebut disembunyikan di grup izin tampilan (Izin Lihat) formulir terkait. Jika disembunyikan, bidang menampilkan -- saat Anda memilih data terkait, dan ID instance dari rekaman ditampilkan setelah pemilihan.
  </Accordion>

  <Accordion id="q10" title="T: Mengapa EQ(komponen formulir terkait, 'aaa') menampilkan error?">
    Komponen formulir terkait belum dapat digunakan sebagai Kondisi dalam aturan asosiasi bisnis, seperti formula UPSERT. Dalam kasus tersebut, gunakan komponen `Pilih Dropdown` atau `Pilih Banyak Dropdown` sebagai gantinya.
  </Accordion>
</AccordionGroup>
