Memahami rekaman referensi dan pencarian polimorfik di aplikasi kanvas

Bila Anda menulis makalah penelitian di sekolah, Anda mungkin diberikan daftar referensi Anda di akhir. Anda tidak menyertakan salinan materi latar belakang aktual yang digunakan, melainkan tautan web, judul buku, dan penulis, atau informasi lain agar seseorang dapat melacak sumber asli. Anda mencampur berbagai jenis sumber dalam satu daftar, artikel surat kabar di samping rekaman audio, masing-masing dengan rincian spesifik mereka sendiri untuk kutipan yang tepat. Misalnya, artikel Wikipedia sering mencakup Daftar panjang referensi.

Dalam aplikasi kanvas, Anda sering menggunakan salinan rekaman yang diunduh dari sumber data. Anda menggunakan fungsi Pencarian dan Filter dan kontrol Galeri properti Terpilih untuk mengidentifikasi data tertentu yang Anda inginkan. Semua rekaman dari Filter atau Dipilih akan memiliki jenis tabel yang sama, sehingga Anda dapat menggunakan bidang dengan sederhana. Notasi bidang. Salinan ini sering mencakup informasi referensi sehingga Anda dapat menggunakan fungsi Patch untuk memperbarui sumber asli.

Aplikasi kanvas juga mendukung referensi data. Sama seperti referensi makalah penelitian, referensi data merujuk ke data tanpa menyertakan salinan lengkap. Referensi tersebut dapat merujuk ke rekaman dalam tabel apa pun. Juga seperti referensi kertas riset, Anda dapat mencampur rekaman dari tabel yang berbeda di satu kolom.

Banyak operasi pada referensi data identik dengan bekerja dengan data. Anda dapat membandingkan referensi data satu sama lain dan dengan data lengkap. Anda dapat mengatur nilai referensi data dengan fungsi Patch sama seperti pencarian dengan data lengkap.

Ada satu perbedaan penggunaan yang penting: Anda tidak dapat secara langsung mengakses bidang referensi rekaman tanpa menetapkan terlebih dulu ke tabel yang dirujuk. Hal ini dikarenakan aplikasi kanvas mengharuskan semua jenis untuk diketahui saat Anda menulis rumus. Karena Anda tidak mengetahui jenis data referensi hingga aplikasi berjalan, Anda tidak dapat menggunakan notasi .Bidang yang sederhana secara langsung. Anda harus terlebih dulu secara dinamis menentukan jenis tabel dengan fungsi IsType dan kemudian menggunakan . Notasi bidang pada hasil fungsi AsType.

Jenis tabel mengacu pada skema tiap rekaman dalam tabel. Setiap tabel memiliki kumpulan bidang unik dengan nama dan jenis data yang berbeda. Setiap rekaman tabel mewarisi struktur tersebut; dua rekaman memiliki jenis tabel yang sama jika berasal dari tabel yang sama.

Catatan

Anda dapat memilih dari berbagai konektor untuk terhubung ke berbagai jenis sumber data untuk aplikasi kanvas. Namun, bila bekerja dengan aplikasi kanvas di dalam Power Apps Studio, kolom di Microsoft Dataverse disebut sebagai bidang yang mirip dengan semua sumber data lainnya. Kolom hanya digunakan bila merujuk ke kolom di dalam Dataverse. Informasi lebih lanjut: Pembaruan terminologi Dataverse

Pencarian polimorfik

Microsoft Dataverse mendukung relasi antar data. Setiap rekaman di Tabel Akun memiliki kolom pencarian Kontak Utama pada rekaman di tabel Kontak. Pencarian hanya dapat merujuk ke rekaman dalam Kontak dan tidak dapat merujuk ke rekaman dalam tabel Tim. Detail terakhir tersebut penting karena Anda selalu mengetahui kolom yang akan tersedia untuk pencarian.

Dataverse juga mendukung pencarian polimorfik, yang dapat merujuk ke rekaman dari tabel mana pun dalam satu rangkaian. Misalnya, bidang Pemilik dapat merujuk pada rekaman dalam tabel Pengguna atau tabel Tim. Kolom pencarian yang sama di rekaman yang berbeda dapat merujuk ke rekaman dalam tabel yang berbeda. Dalam kasus ini, Anda tidak selalu mengetahui kolom yang akan tersedia.

Referensi data kanvas dirancang untuk bekerja dengan pencarian polimorfik di Dataverse. Anda juga dapat menggunakan referensi data di luar konteks ini, yang merupakan bagaimana dua konsep tersebut berbeda.

Di bagian selanjutnya, Anda akan mulai menjelajahi konsep ini dengan bekerja dengan pencarian Pemilik.

Menampilkan kolom pemilik rekaman

Setiap tabel di Dataverse mencakup kolom Pemilik. Kolom ini tidak dapat dihilangkan, Anda tidak dapat menambahkan lainnya, dan selalu memerlukan nilai.

Untuk menampilkan kolom tersebut di tabel Akun:

  1. Masuk ke Power Apps.

  2. Di bilah panel navigasi kiri, pilih Data > tabel.

  3. Dalam daftar tabel, pilih Akun.

  4. Di sudut kanan atas, buka daftar filter (yang diatur ke Default secara default), lalu pilih Semua.

  5. Gulir ke bawah hingga kolom Pemilik muncul.

    Kolom pemilik pada tabel Akun.

Kolom pencarian ini dapat merujuk baik pada tabel Tim maupun Pengguna. Tidak setiap rekaman di tabel ini memiliki izin untuk menjadi Pemilik; periksa peran yang didukung jika Anda mengalami masalah.

Grafik ini menunjukkan galeri Akun sederhana, dengan tabel Akun telah ditambahkan ke aplikasi sebagai sumber data:

Akun yang ditunjukkan di kontrol Galeri.

Penting

Sepanjang topik ini, grafis menampilkan beberapa nama dan nilai lain yang bukan merupakan bagian dari data sampel yang dikirimkan dengan Dataverse. Langkah-langkah ini menunjukkan secara akurat cara mengkonfigurasi kontrol untuk hasil tertentu, namun pengalaman Anda akan bervariasi berdasarkan pada data untuk organisasi Anda.

Untuk menampilkan pemilik setiap akun di galeri, Anda mungkin tergoda untuk menggunakan rumus ThisItem.Owner.Name. Namun, bidang nama di tabel Tim adalah Nama Tim dan bidang nama di tabel Pengguna adalah Nama Lengkap. Aplikasi ini tidak dapat mengetahui jenis pencarian yang sedang Anda kerjakan hingga Anda menjalankan aplikasi, dan dapat berbeda di antara rekaman dalam tabel Akun.

Anda memerlukan rumus yang dapat beradaptasi dengan varians ini. Anda juga harus menambahkan sumber data untuk jenis tabel yang mungkin adalah Pemilik (dalam kasus ini, Pengguna dan Tim). Tambahkan ketiga sumber data ini ke aplikasi Anda:

Tabel Akun, Tim, dan Pengguna di panel Data.

Dengan sumber data tersebut di tempatnya, gunakan rumus ini untuk menampilkan nama pengguna atau tim:

If( IsType( ThisItem.Owner, Teams ),
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Akun yang ditampilkan dalam kontrol Galeri dengan bidang Pemilik ditampilkan.

Dalam rumus ini, fungsi IsType menguji bidang Pemilik dengan tabel Tim. Jika dari jenis tabel tersebut, fungsi AsType akan dimasukkan ke rekaman Tim. Pada titik ini, Anda dapat mengakses semua bidang tabel Tim, termasuk Nama Tim, dengan menggunakan notasi .Field. Jika IsType menentukan bahwa Pemilik bukan rekaman dalam tabel Tim, bidang tersebut harus merupakan rekaman dalam tabel Pengguna karena bidang Pemilik diperlukan (tidak dapat kosong).

Untuk menggunakan bidang referensi rekaman, Anda harus terlebih dulu menggunakan fungsi AsType untuk memasukkan ke jenis tabel tertentu. Anda tidak dapat mengakses bidang secara langsung dari bidang Pemilik karena sistem tidak mengetahui jenis tabel yang akan digunakan.

Fungsi AsType menghasilkan kesalahan jika bidang Pemilik tidak sesuai dengan jenis tabel yang diminta, sehingga Anda dapat menggunakan fungsi IfError untuk menyederhanakan rumus ini. Pertama, Aktifkan fitur eksperimental Manajemen kesalahan rumus tingkat:

Tombol eksperimental untuk menyalakan manajemen kesalahan rumus tingkat.

Kemudian ganti rumus sebelumnya dengan yang satu ini:

IfError(
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Filter berdasarkan pemilik

Selamat-Anda telah menyelesaikan aspek tersulit bekerja dengan referensi data. Kasus penggunaan lainnya lebih mudah karena mereka tidak mengakses bidang dari data. Sebagai kasus di titik, ambil filter, yang akan Anda jelajahi di bagian ini.

Tambahkan kontrol Kotak kombo di atas galeri, dan atur properti kontrol baru:

  • Item: Users
  • SelectMultiple: false

Tambahkan kontrol kotak kombo atas galeri dengan properti Item diatur ke Pengguna.

Untuk memfilter galeri berdasarkan pengguna tertentu yang dipilih dari kotak kombo ini, atur properti Item galeri ke rumus ini:

Filter( Accounts, Owner = ComboBox1.Selected )

Galeri terfilter berdasarkan rangkian nilai yang diatur di kontrol kotak kombo.

Penting

Petunjuk dalam topik ini akurat jika Anda mengikuti langkah-langkahnya dengan tepat. Namun, rumus apapun yang mengacu pada kontrol berdasarkan namanya akan gagal jika kontrol memiliki nama yang berbeda. Jika Anda menghapus dan menambahkan kontrol dari jenis yang sama, maka nomor di akhir nama kontrol berubah. Untuk rumus yang menampilkan kesalahan, konfirmasikan bahwa berisi nama yang benar dari semua kontrol.

Anda tidak perlu menggunakan IsType atau AsType karena Anda membandingkan referensi data dengan referensi data lain atau ke data lengkap. Aplikasi ini mengetahui jenis tabel ComboBox1.Selected karena diambil dari tabel Pengguna. Akun yang pemiliknya adalah tim tidak akan sesuai dengan kriteria filter.

Anda dapat bergaya sedikit dengan mendukung pemfilteran baik oleh pengguna maupun tim.

  1. Buat beberapa ruang di dekat bagian atas layar dengan mengubah ukuran galeri dan memindahkan kotak kombo, masukkan kontrol Radio di atas galeri, lalu atur properti ini untuk kontrol baru:

    • Item: [ "All", "Users", "Teams" ]
    • Tata letak: Layout.Horizontal
  2. Untuk kontrol Kotak kombo, atur properti ini (jika kotak kombo menghilang, pilih Pengguna di kontrol radio):

    • Terlihat: Radio1.Selected.Value = "Users"
  3. Salin dan tempel kontrol Kotak kombo, Pindahkan salinan secara langsung di atas teks asli, lalu atur properti ini untuk salinannya:

    • Item: Teams
    • Terlihat: Radio1.Selected.Value = "Teams"

    Aplikasi hanya akan menampilkan satu kotak kombo pada satu waktu, tergantung pada status kontrol radio. Karena mereka secara langsung di atas satu sama lain, mereka akan tampak sebagai kontrol yang sama yang mengubah isinya.

  4. Akhirnya, atur properti Item dari kontrol Galeri ke rumus ini:

    Filter( Accounts,
        Radio1.Selected.Value = "All"
        Or (Radio1.Selected.Value = "Users" And Owner = ComboBox1.Selected)
        Or (Radio1.Selected.Value = "Teams" And Owner = ComboBox1_1.Selected)
    )
    

    Galeri terfilter menampilkan semua data atau pengguna atau tim tertentu.

Dengan perubahan ini, Anda dapat menampilkan semua data atau memfilter berdasarkan pengguna atau tim:

Animasi menampilkan hasil terfilter yang berbeda berdasarkan kontrol radio dan kotak kombo.

Rumusnya sepenuhnya dapat didelegasikan. Bagian yang membandingkan nilai tombol radio adalah konstan di seluruh data dan dievaluasi sebelum sisa filter dikirim ke Dataverse.

Jika Anda ingin memfilter jenis pemilik, Anda dapat menggunakan fungsi IsType, namun belum dapat didelegasikan.

Filter berdasarkan jenis pemilik dengan menggunakan IsType.

Memperbarui pemilik dengan menggunakan Patch

Anda dapat memperbarui bidang Pemilik dengan cara yang sama seperti pencarian lainnya. Untuk mengatur pemilik akun yang dipilih saat ini ke tim pertama:

Patch( Accounts, Gallery1.Selected, { Owner: First( Teams ) } )

Pendekatan ini tidak berbeda dari pencarian normal karena aplikasi mengetahui jenis First( Tim ). Jika Anda ingin pengguna pertama, ganti bagian tersebut dengan First( Pengguna ). Fungsi Patch mengetahui bahwa bidang Pemilik dapat diatur ke salah satu dari dua jenis tabel ini.

Untuk menambahkan kemampuan ini ke aplikasi:

  1. Pada panel Tampilan hierarki, pilih kontrol Radio dan dua kontrol Kotak kombo secara bersamaan.

  2. Pada menu elipsis, pilih Salin item berikut.

    Salinan beberapa kontrol menggunakan tampilan hierarki.

  3. Pada menu yang sama, pilih Tempel.

    Tempelan beberapa kontrol menggunakan tampilan hierarki.

  4. Pindahkan kontrol yang telah disalin ke kanan galeri.

    Salinan kontrol yang telah dipindahkan ke kanan galeri.

  5. Pilih kontrol Radio yang telah disalin, lalu ubah properti berikut:

    • Item: [ "Users", "Teams" ]
    • Default: If( IsType( Gallery1.Selected.Owner, Users ), "Users", "Teams" )

    Menghapus semua pilihan dari kontrol radio.

  6. Di kontrol Radio , pilih Pengguna sehingga kontrol Kotak kombo yang mencantumkan pengguna terlihat.

  7. Pilih kontrol Kotak kombo yang terlihat , lalu atur properti DefaultSelectedItems ke rumus ini:

    If( IsType( Gallery1.Selected.Owner, Users ),
        AsType( Gallery1.Selected.Owner, Users ),
        Blank()
    )
    

    Properti default diatur untuk kotak kombo Pengguna.

  8. Di kontrol Radio , pilih Tim sehingga kontrol Kotak kombo yang mencantumkan tim terlihat.

  9. Pilih kontrol Radio untuk mengambil pilihan dari kontrol Kotak kombo yang tidak terlihat untuk pengguna.

  10. Pilih kontrol Kotak kombo yang terlihat untuk tim, lalu atur properti DefaultSelectedItems ke rumus ini:

    If( IsType( Gallery1.Selected.Owner, Teams ),
        AsType( Gallery1.Selected.Owner, Teams ),
        Blank()
    )
    

    Properti default diatur untuk kotak kombo Tim.

  11. Masukkan kontrol Tombol, pindahkan ke bawah kontrol Kotak kombo , lalu atur properti Teks tombol ke "Patch Owner".

  12. Atur properti OnSelect dari tombolnya ke rumus ini:

    Patch( Accounts, Gallery1.Selected,
        { Owner: If( Radio1_1.Selected.Value = "Users",
                     ComboBox1_2.Selected,
                     ComboBox1_3.Selected ) } )
    

    Rumus diatur pada kontrol Tombol.

Kontrol Radio dan Kotak kombo yang telah disalin menampilkan pemilik untuk akun yang dipilih saat ini di galeri. Dengan kontrol yang sama, Anda dapat mengatur pemilik akun untuk setiap tim atau pengguna dengan memilih tombol:

Animasi menampilkan patch pemilik dengan baik Pengguna atau Tim.

Menampilkan pemilik dengan menggunakan formulir

Anda dapat menampilkan bidang Pemilik di dalam formulir dengan menambahkan kartu kustom. Per tulisan ini, Anda tidak dapat mengubah nilai bidang dengan kontrol formulir.

  1. Masukkan kontrol Edit formulir, lalu ubah ukuran dan pindahkan ke sudut kanan bawah.

  2. Pada tab Properti di dekat sisi kanan layar, buka daftar Sumber data, lalu pilih Akun.

    Kontrol formulir yang menampilkan bidang tambahan dengan nilai kosong.

  3. Atur properti Item formulir ke Gallery1.Selected.

    Kontrol formulir menampilkan bidang tambahan yang diisi dari item yang dipilih di galeri.

  4. Pada tab Properti dekat sisi kanan dari layar, pilih Edit bidang.

  5. Di panel Bidang, pilih elipsis, lalu pilih Tambahkan kartu kustom.

    Perintah untuk menambahkan kartu kustom.

    Kartu baru akan muncul di bagian bawah kontrol formulir.

  6. Ubah ukuran kartu seperlunya untuk menampilkan semua teks.

    Kartu kustom yang dimasukkan, kosong.

  7. Masukkan kontrol Label ke kartu kustom, lalu atur properti Teks label ke rumus yang Anda gunakan di galeri:

    If( IsType( ThisItem.Owner, Teams ),
        "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
        "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
    

    Kartu kustom menampilkan bidang Pemilik di kontrol label.

Untuk setiap pilihan di galeri, lebih banyak bidang akun, termasuk pemilik data, muncul dalam formulir. Jika Anda mengubah pemiliknya dengan menggunakan tombol Patch, kontrol formulir juga menunjukkan perubahan tersebut.

Animasi menampilkan kontrol formulir merespon terhadap perubahan di galeri.

Menampilkan kolom pelanggan

Dalam Dataverse, kolom pencarian Pelanggan adalah pencarian polimorfik lain yang sangat mirip dengan Pemilik.

Pemilik dibatasi ke satu per tabel, namun tabel dapat mencakup nol, satu, atau lebih kolom pencarian Pelanggan. Tabel sistem Kontak mencakup kolom Nama Perusahaan, yang merupakan kolom pencarian Pelanggan.

Tabel kontak yang menampilkan kolom Nama Perusahaan sebagai jenis data Pelanggan yang tidak diperlukan.

Anda dapat menambahkan lebih banyak kolom pencarian Pelanggan ke tabel dengan memilih jenis data Pelanggan untuk kolom baru.

Jenis data pelanggan dari daftar jenis data saat membuat kolom.

Kolom pencarian Pelanggan dapat merujuk baik pada tabel Akun maupun tabel Kontak. Anda akan menggunakan fungsi IsType dan AsType dengan tabel ini, jadi sekarang adalah waktu yang tepat untuk menambahkannya sebagai sumber data (Anda dapat membiarkan Tim dan Pengguna di tempatnya).

Tabel Akun, Tim, Pengguna, dan Kontak di panel Data.

Perlakuan terhadap bidang Pelanggan dan Pemilik sangatlah mirip sehingga Anda dapat secara harfiah menyalin aplikasi (File > Simpan sebagai, lalu tentukan nama lain) dan buat penggantian sederhana berikut:

Lokasi Sampel Pemilik Sampel Pelanggan
Sampai Pemilik 'Nama Pelanggan'
Sampai Pengguna Akun
Sampai Teams Kontak
Properti Item galeri Akun Kontak
Properti Item formulir Akun Kontak
Argumen pertama dari Patch
di properti OnSelect tombolnya
Akun Kontak
Memfilter properti Item radio [ "Semua", "Pengguna", "Tim" ] [ "Semua", "Akun", "Kontak" ]
Patch properti Item radio [ "Pengguna", "Tim" ] [ "Akun", "Kontak" ]
Properti Terlihat kotak kombo "Pengguna" dan "Tim" "Akun" dan "Kontak"

Misalnya, galeri baru harus memiliki properti Item ini:

Filter( Contacts,
    Radio1.Selected.Value = "All"
    Or (Radio1.Selected.Value = "Accounts" And 'Company Name' = ComboBox1.Selected)
    Or (Radio1.Selected.Value = "Contacts" And 'Company Name' = ComboBox1_1.Selected)
)

Aplikasi Pelanggan yang berasal dari aplikasi Pemilik dengan perubahan sederhana diterapkan.

Dua perbedaan penting antara Pelanggan dan Pemilik memerlukan pembaruan ke rumus di dalam galeri dan formulir:

  1. Relasi satu ke banyak antara Akun dan Kontak didahulukan bila Anda merujuk pada jenis tabel ini berdasarkan nama. Ketimbang Akun, gunakan [@Akun] ; ketimbang Kontak, gunakan [@Kontak]. Dengan menggunakan operator disambiguasi global, Anda memastikan bahwa Anda mengacu pada jenis tabel di IsType dan AsType. Masalah ini hanya ada dalam konteks data galeri dan formulir kontrol.

  2. Bidang Pemilik harus memiliki nilai, namun bidang Pelanggan dapat kosong. Untuk menampilkan hasil yang benar tanpa nama jenis, uji untuk kasus ini dengan fungsi IsBlank, dan tampilkan string teks kosong sebagai gantinya.

Kedua perubahan ini dalam rumus yang sama, yang muncul di kartu kustom di formulir, serta di properti Teks dari kontrol label galeri:

If( IsBlank( ThisItem.'Company Name' ), "",
    IsType( ThisItem.'Company Name', Accounts ),
        "Account: " & AsType( ThisItem.'Company Name', Accounts ).'Account Name',
    "Contact: " & AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)

Perbarui ke properti Teks dari kontrol label subjudul di galeri.

Dengan perubahan ini, Anda dapat melihat dan mengubah bidang Nama Perusahaan di tabel Kontak.

Animasi yang menunjukkan bagaimana memilih kontak akan mengubah kontrol lainnya dan formulir.

Memahami kolom pencarian Mengenai

Kolom pencarian Mengenai sedikit berbeda dengan kolom pencarian yang telah Anda lakukan dalam topik. Anda akan mulai dengan menerapkan pola yang topik ini jelaskan sebelumnya, lalu Anda akan mempelajari trik lain.

Anda dapat memulai secara sederhana dengan tabel Faks. Tabel ini memiliki kolom pencarian mengenai polimorfik, yang dapat merujuk ke Akun, Kontak, dan tabel lainnya. Anda dapat mengambil aplikasi untuk Pelanggan dan memodifikasinya untuk Faks.

Lokasi Sampel Pelanggan Sampel Faks
Sampai 'Nama Pelanggan' Mengenai
Properti Item galeri Kontak Faks
Properti Item formulir Kontak Faks
Argumen pertama dari Patch
di properti OnSelect tombolnya
Kontak Faks

Sekali lagi, Anda harus menambahkan sumber data: kali ini untuk Faks. Pada tab Tampilkan, pilih Sumber data:

Panel data yang menampilkan tabel Akun, Tim, Pengguna, Kontak, dan Faks.

Perbedaan penting untuk Mengenai adalah tidak terbatas pada Akun dan Kontak. Bahkan, daftar tabel dapat diperluas dengan tabel kustom. Sebagian besar aplikasi dapat mengakomodasi titik ini tanpa modifikasi, namun Anda harus memperbarui rumus untuk label di galeri dan formulir:

If( IsBlank( ThisItem.Regarding ), "",
    IsType( ThisItem.Regarding, Accounts ),
        "Account: " & AsType( ThisItem.Regarding, Accounts ).'Account Name',
    IsType( ThisItem.Regarding, Contacts ),
        "Contacts: " & AsType( ThisItem.Regarding, Contacts ).'Full Name',
    ""
)

Properti Teks yang telah diperbarui untuk kontrol subjudul untuk pencarian Mengenai.

Setelah Anda membuat perubahan ini, Anda bekerja dengan pencarian Mengenai sama seperti Anda melakukan pencarian Pemilik dan Pelanggan.

Animasi yang menunjukkan bagaimana memilih item di galeri akan mengubah kontrol lainnya dan formulir.

Memahami relasi Mengenai

Mengenai berbeda dari Pemilik dan Pelanggan karena yang sebelumnya melibatkan relasi banyak ke satu. Berdasarkan definisi, relasi satu ke banyak yang terbalik memungkinkan Anda untuk menulis First( Akun ).Faxes.

Mari kembali dan melihat definisi tabel. Dalam tabel Dataverse, seperti Faks, Tugas, Email, Catatan, Panggilan Telepon, Surat, dan Obrolan ditetapkan sebagai aktivitas. Anda juga dapat membuat tabel aktivitas kustom Anda sendiri. Bila Anda melihat atau membuat tabel aktivitas, pengaturannya akan muncul dalam Pengaturan lainnya.

Pengaturan tabel aktivitas saat membuat tabel.

Tabel lain dapat dikaitkan ke tabel aktivitas jika diaktifkan sebagai tugas aktivitas dalam pengaturan tabel. Akun, Kontak, dan banyak tabel standar lainnya tugas ditentukan (lagi, di dalam Pengaturan lainnya).

Pengaturan tugas aktivitas saat membuat tabel.

Semua tabel aktivitas dan tabel tugas aktivitas memiliki relasi tersirat. Jika Anda mengubah filter ke Semua di bagian atas layar, pilih tabel Faks, lalu pilih tab Relasi, semua tabel yang dapat menjadi target pencarian Mengenai akan muncul.

Relasi tabel Faks yang menampilkan Relasi banyak ke satu Mengenai.

Jika Anda menampilkan Relasi untuk tabel Akun, semua tabel yang dapat menjadi sumber bidang pencarian Mengenai akan muncul.

Relasi tabel Akun yang menampilkan Relasi satu ke banyak Mengenai.

Apa artinya?

  • Saat menulis rumus, Anda harus mempertimbangkan bahwa daftar tabel aktivitas tidak diperbaiki, dan Anda dapat membuatnya sendiri. Rumus harus menangani dengan baik tabel aktivitas yang tidak Anda perkirakan.
  • Tugas aktivitas dan aktivitas memiliki relasi satu-ke-banyak. Anda dapat dengan mudah meminta semua faks yang terkait dengan akun.

Untuk menjelajahi konsep ini di aplikasi:

  1. Tambahkan layar lainnya.

    Masukkan layar kosong.

  2. Masukkan kontrol galeri, ubah ukurannya, lalu pindahkan ke sisi kiri layar.

  3. Pada tab Properti di dekat sisi kanan layar, tetapkan properti Item galeri ke Akun.

    Mengatur Item ke Akun di panel properti.

  4. Atur tata letak galeri ke Judul, lalu atur bidang judul menjadi Nama Akun.

    Atur Tata Letak ke Judul untuk kontrol galeri di panel properti.

  5. Tambahkan galeri kedua, ubah ukurannya, lalu pindahkan ke sisi kanan layar.

  6. Atur properti Item galeri baru ke Gallery2.Selected.Faxes.

    Langkah ini mengembalikan daftar faks terfilter untuk akun tertentu.

    Atur properti Item dari galeri yang menunjukkan faks.

  7. Atur tata letak galeri ke Judul dan subjudul, lalu atur bidang judul untuk menampilkan bidang Subjek (yang mungkin subjek huruf kecil).

    Atur judul ke bidang Subjek.

Selagi Anda memilih item dalam daftar akun, daftar faks menunjukkan faks hanya untuk akun tersebut.

Animasi menunjukkan pilihan di galeri akun mengarahkan daftar faks.

Tabel aktivitas

Seperti dijelaskan dalam bagian sebelumnya, Anda dapat menampilkan semua faks untuk akun. Namun, Anda juga dapat menampilkan semua aktivitas untuk akun, termasuk faks, pesan email, panggilan telepon, dan interaksi lainnya.

Untuk skenario terakhir, Anda dapat menggunakan tabel Aktivitas. Anda dapat menampilkan tabel ini dengan mengaktifkan Semua di sudut kanan atas untuk menghilangkan filter dari daftar tabel.

Daftar tabel yang menampilkan tabel Aktivitas.

Tabel Aktivitas bersifat khusus. Setiap kali Anda menambahkan rekaman ke tabel Faks, sistem juga membuat rekaman dalam tabel Aktivitas dengan kolom yang umum di seluruh tabel aktivitas. Dari kolom tersebut, Subjek adalah salah satu yang paling menarik.

Anda dapat menampilkan semua aktivitas dengan mengubah hanya satu baris dalam contoh sebelumnya. Gantikan Gallery2.Selected.Faxes dengan Gallery2.Selected.Activities.

Mengubah properti Item untuk galeri kedua, berubah dari faks ke aktivitas.

Rekaman berasal dari tabel Aktivitas, namun Anda tetap dapat menggunakan fungsi IsType untuk mengidentifikasi jenis aktivitas tersebut. Sekali lagi, sebelum menggunakan IsType dengan jenis tabel, Anda harus menambahkan sumber data.

Panel data yang menampilkan semua tabel yang diperlukan untuk fungsi IsType.

Dengan menggunakan rumus ini, Anda dapat menampilkan jenis data di kontrol label dalam galeri:

If( IsType( ThisItem, Faxes] ), "Fax",
    IsType( ThisItem, 'Phone Calls' ), "Phone Call",
    IsType( ThisItem, 'Email Messages' ), "Email Message",
    IsType( ThisItem, Chats ), "Chat",
    "Unknown"
)

Atur properti teks menjadi rumus untuk menunjukkan informasi untuk faks, panggilan telepon, dan aktivitas lainnya.

Anda juga dapat menggunakan AsType untuk mengakses bidang jenis tertentu. Contohnya, rumus ini menentukan jenis setiap aktivitas dan, untuk panggilan telepon, menampilkan nomor telepon dan arahan panggilan dari tabel Nomor Telepon:

If( IsType( ThisItem, Faxes ), "Fax",
    IsType( ThisItem, 'Phone Calls' ),
       "Phone Call: " &
       AsType( ThisItem, 'Phone Calls' ).'Phone Number' &
       " (" & AsType( ThisItem, 'Phone Calls' ).Direction & ")",
    IsType( ThisItem, 'Email Messages' ), "Email Message",
    IsType( ThisItem, Chats ), "Chat",
    "Unknown"
)

Properti teks diperluas dengan informasi lebih lanjut untuk panggilan telepon.

Hasilnya, aplikasi menampilkan daftar lengkap aktivitas. Bidang Subjek muncul untuk semua jenis aktivitas, baik rumus yang memperhitungkan atau tidak. Untuk jenis aktivitas yang Anda ketahui, Anda dapat menampilkan nama jenis dan informasi spesifik jenis tentang setiap aktivitas.

Layar selesai menunjukkan informasi untuk berbagai jenis aktivitas.

Tabel catatan

Sejauh ini, semua contoh Mengenai telah didasarkan pada aktivitas, namun tabel Catatan menunjukkan kasus lain.

Saat membuat tabel, Anda dapat mengaktifkan lampiran.

Mengaktifkan lampiran dan catatan saat membuat tabel.

Jika Anda memilih kotak centang untuk mengaktifkan lampiran, Anda akan membuat relasi Mengenai dengan tabel Catatan, karena grafis ini menunjukkan untuk tabel Akun:

Tabel Akun yang menampilkan Relasi ke catatan melalui relasi satu ke banyak.

Selain perbedaan ini, Anda menggunakan pencarian Mengenai dengan cara yang sama di mana Anda menggunakan aktivitas. Tabel yang diaktifkan untuk lampiran memiliki relasi satu ke banyak ke Catatan, seperti dalam contoh ini:

First( Accounts ).Notes

Catatan

Pada penulisan ini, pencarian Mengenai tidak tersedia untuk tabel Catatan. Anda tidak dapat membaca atau memfilter berdasarkan kolom Mengenai, dan Anda tidak dapat mengatur kolom dengan menggunakan Patch.

Namun, relasi satu-ke-banyak Catatan yang terbalik tersedia, sehingga Anda dapat memfilter daftar catatan untuk data yang diaktifkan untuk lampiran. Anda juga dapat menggunakan fungsi Kaitkan untuk menambahkan catatan ke tabel Catatan data, namun catatan harus dibuat terlebih dahulu, seperti dalam contoh ini:

Relate( ThisItem.Notes, Patch( Notes, Defaults( Notes ), { Title: "A new note" } ) )

Pihak aktivitas

Per tulisan ini, aplikasi kanvas tidak mendukung pihak aktivitas.

Catatan

Apa bahasa dokumentasi yang Anda inginkan? Lakukan survei singkat. (perlu diketahui bahwa survei ini dalam bahasa Inggris)

Survei akan berlangsung kurang lebih selama tujuh menit. Tidak ada data pribadi yang dikumpulkan (pernyataan privasi).