Bagikan melalui


Informasi referensi tentang template layar email pada aplikasi kanvas

Untuk aplikasi kanvas di Power Apps, pahami bagaimana tiap kontrol signifikan dalam templat layar-email berkontribusi pada fungsi layar keseluruhan. Pendalaman ini menghadirkan rumus perilaku dan nilai properti lainnya yang menentukan bagaimana kontrol merespon kepada input pengguna. Untuk mengikuti diskusi tingkat tinggi mengenai fungsi layar default ini, lihat ikhtisar layar-email.

Topik ini menyorot beberapa kontrol yang penting dan menjelaskan ekspresi atau formula yang dimana properti beragam (seperti Benda dan OnSelect) ari kontrol ini dipasang:

Prasyarat

Pengenalan dengan bagaimana cara menambah dan mengatur layar dan kontrol lainnya saat Anda membuat aplikasi dalam Power Apps.

Kotak pencarian teks

Kontrol TextSearchBox.

Beberapa kontrol lain di layar memiliki ketergantungan pada kontrol Kotak pencarian teks:

  • Jika pengguna mulai mengetik teks apa pun, PeopleBrowseGallery akan muncul.
  • Jika pengguna mengetik alamat email yang valid, AddIcon akan muncul.
  • Saat pengguna memilih orang dalam PeopleBrowseGallery, konten pencarian akan diatur ulang.

Ikon tambah

Kontrol AddIcon.

Kontrol Ikon tambah memungkinkan pengguna untuk menambahkan orang yang tidak ada dalam organisasi mereka ke daftar penerima email yang sedang dibuat.

  • Properti: Terlihat
    Nilai: logika untuk menampilkan kontrol hanya bila pengguna mengetik alamat email yang valid ke dalam kotak pencarian:

    !IsBlank( TextSearchBox.Text ) &&
        IsMatch( TextSearchBox.Text, Match.Email ) &&
        Not( Trim( TextSearchBox.Text ) in MyPeople.UserPrincipalName )
    

    Baris demi baris, blok kode yang mendahului ini mengatakan bahwa kontrol Ikon tambah terlihat hanya akan terlihat jika:

    • TextSearchBox berisi teks.
    • Teks dalam TextSearchBox adalah alamat email yang valid.
    • Teks dalam TextSearchBox tidak langsung tersedia dalam koleksi MyPeople.
  • Properti: OnSelect
    Nilai: memilih ini akan menambahkan alamat email yang valid ke koleksi MyPeople. Koleksi ini digunakan oleh layar sebagai daftar penerima:

    Collect( MyPeople,
        { 
            DisplayName: TextSearchBox.Text, 
            UserPrincipalName: TextSearchBox.Text, 
            Mail: TextSearchBox.Text
        }
    );
    Reset( TextSearchBox )
    

    Blok kode ini menambahkan baris ke koleksi MyPeople dan mengisi tiga bidang dengan teks dalam TextSearchBox. Ketiga bidang ini adalah DisplayName, UserPrincipalName, dan Mail. Konten TextSearchBox kemudian akan direset.

Galeri telusuri orang

Kontrol PeopleBrowseGallery.

  • Properti: Items
    Nilai: 15 hasil pencarian teks teratas dari teks pencarian yang diketikkan ke dalam kontrol TextSearchBox:

    If( !IsBlank( Trim(TextSearchBox.Text ) ), 
        'Office365Users'.SearchUser( {searchTerm: Trim( TextSearchBox.Text ), top: 15} )
    )
    

    Benda dari galeri ini berisi dengan hasil pencarian dari operasi Office365.SearchUser. Operasi mengambil teks dalam Trim(TextSearchBox) karena istilah pencarian dan kembali ke hasil 15 terbaik berdasarkan dari pencarian itu.

    TextSearchBox terbungkus dalam fungsi Trim() karena pencarian ruang pengguna tidak berlaku. Operasi Office365Users.SearchUser diselesaikan dalam fungsi If(!IsBlank(Trim(TextSearchBox.Text)) ... ), yang berarti bahwa operasi hanya dilakukan jika kotak pencarian berisi teks yang dimasukkan oleh pengguna. Ini memperbaiki kinerja.

Kontrol Judul galeri penelusuran orang

Kontrol Judul PeopleBrowseGallery.

  • Properti: Teks
    Nilai: ThisItem.DisplayName

    Menampilkan nama tampilan orang dari profil Office 365 mereka.

  • Properti: OnSelect
    Nilai: Kode untuk menambah pengguna menjadi koleksi tingkat app, lalu pilih pengguna:

    Concurrent(
        Set( _selectedUser, ThisItem ),
        Reset( TextSearchBox ),
        If( Not( ThisItem.UserPrincipalName in MyPeople.UserPrincipalName ), 
            Collect( MyPeople, ThisItem )
        )
    )
    

Memilih kontrol ini melakukan tiga hal saat ini:

  • Memasang variabel _selectedUser pada item yang terpilih.
  • Reset kalimat pencarian dalam TextSearchBox.
  • Menambahkan item yang dipilih ke koleksi MyPeople, kumpulan semua pengguna yang dipilih yang digunakan oleh layar email sebagai rangkaian penerima.

Galeri email orang

Kontrol EmailPeopleGallery.

  • Properti: Items
    Nilai: MyPeople

    Ini adalah koleksi orang yang dimasukkan atau ditambahkan dengan memilih kontrol Judul PeopleBrowseGallery.

  • Properti: Tinggi
    Nilai: Logika untuk mengatur tinggi, berdasarkan jumlah item saat ini di Galeri:

    Min( 
        ( EmailPeopleGallery.TemplateHeight + EmailPeopleGallery.TemplatePadding * 2) *
            RoundUp(CountRows(EmailPeopleGallery.AllItems) / 2, 0 ),
        304
    )
    

    Tinggi galeri ini disesuaikan dengan jumlah item di galeri, dengan ketinggian maksimum 304.

    Diperlukan TemplateHeight + TemplatePadding * 2 sebagai tinggi total satu baris EmailPeopleGallery, lalu kalikan dengan jumlah baris. Karena WrapCount = 2, jumlah baris benar adalah RoundUp(CountRows(EmailPeopleGallery.AllItems) / 2, 0).

  • Properti: ShowScrollbar
    Nilai: EmailPeopleGallery.Height >= 304

    Bila tinggi maksimum galeri mencapai 304, bilah gulir akan terlihat.

Kontrol Judul galeri email orang

Kontrol Judul EmailPeopleGallery.

  • Properti: OnSelect
    Nilai: Set(_selectedUser, ThisItem)

    Memasang variabel _selectedUser kepada benda yang dipilih dalam EmailPeopleGallery.

Kontrol iconRemove galeri email orang

Kontrol Judul MonthDayGallery.

  • Properti: OnSelect
    Nilai: Remove( MyPeople, LookUp( MyPeople, UserPrincipalName = ThisItem.UserPrincipalName ) )

    Mencari rekaman di koleksi MyPeople, di mana UserPrincipalName cocok dengan UserPrincipalName dari item yang dipilih, lalu menghapus rekaman dari koleksi.

Ikon surat

  • Properti: OnSelect
    Nilai: logika untuk mengirim pesan email pengguna:

    Set( _emailRecipientString, Concat( MyPeople, Mail & ";" ) );
    'Office365'.SendEmail( _emailRecipientString, 
        TextEmailSubject.Text,  
        TextEmailMessage.Text, 
        { Importance:"Normal" }
    );
    Reset( TextEmailSubject );
    Reset( TextEmailMessage );
    Clear( MyPeople )
    

    Mengirim pesan email memerlukan serangkaian alamat email yang dipisahkan dengan titik koma. Di kode sebelumnya:

    1. Baris pertama kode mengambil bidang Surat dari semua baris di koleksi MyPeople, menggabungkan semua menjadi satu string alamat email yang dipisahkan oleh titik koma, dan mengatur variabel emailRecipientString ke nilai string tersebut.

    2. Kemudian operasi Office365.SendEmail digunakan untuk mengirim email ke penerima. Operasi ini memiliki tiga parameter yang diperlukan, Ke, Subjek, dan Tubuh, serta satu parameter opsional--Penting. Pada kode sebelumnya, parameter ini secara berturut-turut adalah _emailRecipientString, TextEmailSubject.Teks, TextEmailMessage.Teks, dan Normal.

    3. Akhirnya, kontrol TextEmailSubject dan TextEmailMessage akan direset dan koleksi MyPeople akan dhapus.

  • Properti: DisplayMode
    Nilai: If( Len( Trim( TextEmailSubject.Text ) ) > 0 && !IsEmpty( MyPeople ), DisplayMode.Edit, DisplayMode.Disabled ) Untuk email yang akan dikirim, baris subjek email harus memiliki teks, dan koleksi Penerima (MyPeople) tidak boleh kosong.

Langkah berikutnya

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).