Fungsi SaveData, LoadData dan ClearData
Digunakan untuk: Apl kanvas
Menyimpan dan memuat semula koleksi daripada storan hos apl.
Nota
Fungsi ini kini boleh digunakan apabila memainkan aplikasi dalam pelayar web sebagai ciri eksperimen. Ciri ini dinyahdaya secara lalai. Untuk mendayakan, navigasi ke Tetapan>Ciri akan datang>Percubaan>SaveData, LoadData, ClearData didayakan pada pemain web." dan hidupkan suis. Untuk menyerahkan maklum balas berkenaan ciri eksperimen ini, pergi ke Forum komuniti Power Apps.
Penerangan
Fungsi SaveData menyimpan pengumpulan untuk kegunaan kemudian di bawah nama.
Fungsi LoadData memuat semula pengumpulan dengan nama yang disimpan terdahulu dengan SaveData. Anda tidak boleh menggunakan fungsi ini untuk memuat pengumpulan daripada sumber yang lain.
Fungsi ClearData mengosongkan storan di bawah nama khusus atau mengosongkan semua storan yang berkaitan dengan aplikasi jika nama tidak diberikan.
Nota
- Nama yang dikongsi antara SaveData, LoadData dan ClearData ialah kunci, bukan nama fail. Ia tidak perlu kompleks kerana nama adalah unik untuk setiap aplikasi dan tiada bahaya bagi konflik nama. Nama mesti tidak mengandungi mana-mana karakter ini:
*".?:\<>|/
. - SaveData terhad pada 1 MB data untuk Power Apps yang berjalan dalam Teams dan dalam pelayar web. Tiada had tetap untuk Power Apps yang berjalan dalam pemain mudah alih tetapi terdapat had praktikal yang dibincangkan di bawah.
- Jangan gunakan SaveData untuk menyimpan data sensitif dalam web kerana ia akan disimpan dalam teks biasa.
Gunakan fungsi ini untuk meningkatkan prestasi permulaan aplikasi dengan:
- Data cache dalam formula App.OnStart pada jalanan pertama.
- Memuat semula cache setempat pada jalanan seterusnya.
Anda juga boleh menggunakan fungsi ini untuk menambah keupayaan luar talian yang mudah ke aplikasi anda.
Anda tidak boleh menggunakan fungsi ini dalam pelayar apabila:
- Mengarang aplikasi dalam Power Apps Studio.
Untuk menguji aplikasi anda, jalankannya dalam Power Apps Mudah Alih pada iPhone atau peranti Android.
Fungsi ini terhad dengan amaun memori aplikasi yang tersedia kerana ianya beroperasi pada pengumpulan dalam memori. Memori yang tersedia bergantung kepada faktor seperti:
- Peranti dan sistem pengoperasian.
- Memori yang digunakan oleh pemain Power Apps.
- Kerumitan aplikasi dengan skrin dan kawalan.
Uji aplikasi anda dengan senario yang dijangka pada jenis peranti yang anda harapkan aplikasi untuk jalankan semasa menyimpan data yang besar. Secara umumnya dijangka mempunyai memori tersedia antara 30 MB dan 70 MB.
Fungsi ini bergantung kepada pengumpulan yang ditakrifkan secara tersirat dengan Collect atau ClearCollect. Anda tidak perlu menelefon untuk memanggil Pengumpulan atau ClearCollect bagi memuat data ke dalam pengumpulan untuk menakrifkannya. Kes yang biasa ialah menggunakan LoadData selepas SaveData terdahulu. Apa yang diperlukan adalah kehadiran fungsi ini dalam formula untuk menakrikan struktur pengumpulan secara tersirat. Untuk maklumat lanjut, lihat mencipta dan mengalih keluar pemboleh ubah.
Daya yang dimuatkan akan ditambah ke pengumpulan. Gunakan fungsi Clear sebelum memanggil LoadData jika anda mahu mula dengan pengumpulan yang kosong.
Keselamatan data
Pertimbangkan dengan teliti pengasingan dan penyulitan data yang disimpan dengan SaveData dan tentukan sama ada ia sesuai untuk keperluan anda, terutamanya jika peranti dikongsi oleh berbilang pengguna.
Data yang disimpan dengan SaveData diasingkan daripada yang lain Power Apps oleh Power Apps pemain. Data disimpan berdasarkan ID Apl apl, secara automatik mengasingkan ruang nama SaveData antaranya Power Apps.
Sistem pengendalian dan penyemak imbas bertanggungjawab untuk mengasingkan data antara Power Apps dan apl lain pada peranti dan dengan tapak web. Sebagai contoh, sistem pengendalian bertanggungjawab untuk mengasingkan data yang disimpan daripada Microsoft Outlook data yang disimpan dalam Power Apps, dan juga mengasingkan data tersebut daripada tapak web seperti Bing.com atau PowerApps .com. Kemudahan kotak pasir aplikasi terbina dalam sistem pengendalian digunakan untuk penyimpanan SaveData yang biasanya tidak boleh diakses atau disembunyikan daripada pengguna.
Apabila menggunakan apl yang sama, sistem pengendalian dan penyemak imbas juga bertanggungjawab untuk mengasingkan data antara pengguna peringkat sistem pengendalian yang berbeza. Sebagai contoh, jika dua pengguna berbeza berkongsi komputer dan menggunakan dua kelayakan log masuk Windows yang berbeza, sistem pengendalian bertanggungjawab untuk mengasingkan data antara dua pengguna Windows.
Data mungkin atau mungkin tidak diasingkan antara pengguna yang berbeza Power Apps jika pengguna sistem pengendalian adalah sama. Tidak setiap Power Apps pemain melayan perkara ini dengan cara yang sama. Sebagai contoh, semasa log masuk sebagai pengguna Windows yang sama, dalam Power Apps pemain, pengguna log keluar Power Apps dan log masuk sebagai pengguna yang berbeza Power Apps . Data yang disimpan dalam apl sebelum pertukaran Power Apps pengguna, mungkin boleh diakses oleh pengguna kedua Power Apps dalam apl yang sama. Data juga boleh dialih keluar dan pengguna pertama Power Apps mungkin tidak lagi dapat mengaksesnya. Tingkah laku berbeza antara Power Apps pemain.
Sistem pengendalian juga boleh menyulitkan data atau anda boleh menggunakan alat pengurusan peranti mudah alih seperti Microsoft Intune. Data disimpan apabila memainkan aplikasi dalam pelayar web tidak disulitkan.
Sintaks
SaveData(Koleksi,Nama )
LoadData(Koleksi,Nama [, IgnoreNonexistentFile ])
- Pengumpulan - Diperlukan. Pengumpulan untuk disimpan atau dimuatkan.
- Nama - Diperlukan. Nama storan. Nama mesti sama untuk menyimpan dan memuatkan set data yang sama . Ruang nama tidak dikongsi dengan app lain. Nama mesti tidak mengandungi mana-mana karakter ini:
*".?:\<>|/
. - IgnoreNonexistentFile - Pilihan. Nilai Boolean menunjukkan apa yang perlu dilakukan jika fail tidak wujud. Gunakan palsu (lalai) untuk mengembalikan ralat dan benar untuk menyekat ralat.
ClearData( [Nama] )
- Nama - Pilihan. Nama storan yang disimpan sebelum ini dengan SaveData. Jika Nama tidak disediakan, semua storan yang berkaitan dengan aplikasi dikosongkan.
Contoh
Formula | Penerangan | Hasil |
---|---|---|
SaveData( LocalCache, "MyCache" ) | Simpan pengumpulan LocalCache ke peranti pengguna di bawah nama "MyCache", sesuai untuk LoadData mencapainya kemudian. | Data disimpan pada hos aplikasi di bawah nama "MyCache". |
LoadData( LocalCache, "MyCache" ) | Muatkan pengumpulan LocalCache daripada peranti pengguna di bawah nama "MyCache", yang disimpan sebelum ini dengan memanggil ke SaveData. | Data dimuat daripada hos aplikasi di bawah nama "MyCache". |
ClearData( "MyCache" ) | Mengosongkan storan di bawah nama "MyCache". Sebarang data yang disimpan di bawah nama ini tidak lagi akan tersedia melalui LoadData. | Data dialih keluar daripada hos aplikasi di bawah nama "MyCache". |
ClearData() | Kosongkan semua storan yang berkaitan dengan aplikasi ini. Data yang disimpan oleh aplikasi lain tidak terjejas. | Semua data dialih keluar daripada hos aplikasi. |
Contoh luar talian yang mudah
Mengikuti contoh mudah mengambil dan menyimpan nama dan gambar untuk item setiap hari semasa di luar talian. Ianya menyimpan maklumat dalam storan setempat peranti untuk kegunaan kemudian. Ini membenarkan aplikasi ditutup atau peranti bermula semula tanpa kehilangan data.
Nota
Contoh ini menggunakan kawalan kamera untuk menangkap imej. Oleh kerana SaveData terhad kepada 1 MB data apabila berjalan dalam Teams atau pelayar web, contoh ini tidak akan berfungsi dengan lebih daripada beberapa imej. Juga, bergantung pada kamera, ia mungkin tidak berfungsi walaupun dengan satu imej. Gunakan peranti untuk bekerja melalui contoh penuh ini atau keluarkan kawalan kamera dan gambar bahagian contoh ini untuk berjalan dalam Teams atau dalam pelayar web.
Cipta aplikasi kanvas kosong dengan tataletak tablet. Untuk butiran lanjut, baca mencipta aplikasi daripada templat dan pilih Tataletak tablet di bawah Aplikasi kosong.
Tambah kawalan Input teks dan kawalan Kamera dan susunkannya secara kasar seperti yang ditunjukkan:
Tambah kawalan Butang.
Klik dua kali kawalan butang untuk mengubah teks butang ke Tambah Item (atau ubah suai sifat Teks).
Tetapkan sifat OnSelect kawalan butang ke formula ini yang akan menambahkan item ke pengumpulan kami:
Collect( MyItems, { Item: TextInput1.Text, Picture: Camera1.Photo } )
Tambah kawalan Butang yang lain.
Klik dua kali kawalan butang untuk mengubah teks butang ke Simpan Data (atau ubah suai sifat Teks).
Tetapkan sifat OnSelect bagi kawalan butang ke formula ini untuk menyimpan pengumpulan kami ke peranti setempat:
SaveData( MyItems, "LocalSavedItems" )
Ianya menarik untuk menguji butang kerana ia tidak memberi kesan apa-apa. Tetapi anda hanya akan melihat ralat semasa anda mengarang dalam pelayar web. Simpan aplikasi pertama dan buka pada peranti sebelum anda mengikuti langkah seterusnya untuk menguji formula ini :
Tambah kawalan Butang ketiga.
Klik dua kali kawalan butang untuk mengubah teks butang ke Muat Data (atau ubah suai sifat Teks).
Tetapkan sifat OnSelect bagi kawalan butang ke formula ini untuk memuatkan pengumpulan kami daripada peranti setempat:
LoadData( MyItems, "LocalSavedItems" )
Tambah kawalan Galeri dengan tataletak Menegak termasuk gambar dan kawasan teks :
Apabila digesa, pilih pengumpulan MyItems sebagai sumber data untuk galeri ini. Ini akan menetapkan sifat Item untuk kawalan Galeri:
Kawalan imej dalam templat galeri hendaklah lalai sifat Imejnya kepada ThisItem.Picture dan kawalan label hendaklah kedua-duanya lalai sifat Teks mereka kepada ThisItem.Item. Semak formula ini jika selepas menambah item dalam langkah berikut anda tidak dapat melihat apa-apa dalam galeri.
Tempatkan kawalan ke sebelah kanan kawalan yang lain:
Simpan aplikasi. Jika ianya kali pertama disimpan, tiada keperluan untuk menerbitkannya. Jika ianya bukan kali pertama, terbitkan aplikasi selepas anda menyimpannya.
Buka aplikasi anda pada peranti seperti telefon atau tablet. SaveData dan LoadData tidak boleh digunakan dalam Studio atau dalam pelayar web. Segar semula senarai aplikasi anda jika anda tidak dapat melihatnya serta merta, aplikasi boleh mengambil beberapa saat untuk dipaparkan pada peranti anda. Mendaftar keluar dan kembali ke akaun anda juga dapat membantu.
Setelah apl anda dimuat turun, anda boleh memutuskan sambungan daripada rangkaian dan menjalankan apl di luar talian.
Masukkan nama dan ambil gambar item.
Pilih butang Tambah Item. Ulangi menambah item beberapa kali untuk memuat naik pengumpulan anda.
Pilih butang Simpan Data. Ini akan menyimpan data dalam pengumpulan anda ke peranti setempat.
Tutup aplikasi. Pengumpulan anda dalam memori akan hilang termasuk semua item nama dan gambar, tetapi ia masih ada dalam storan peranti.
Lancarkan semula aplikasi. Pengumpulan dalam memori sekali lagi akan ditunjukkan sebagai kosong dalam galeri.
Pilih butang Muat Data. Pengumpulan akan diisi semula daripada data yang disimpan pada peranti anda dan item anda akan kembali semula dalam galeri. Pengumpulan adalah kosong sebelum butang ini memanggil fungsi LoadData; tidak perlu untuk memanggil Collect atau ClearCollect sebelum memuat data daripada storan.
Pilih butang Muat Data sekali lagi. Data yang disimpan akan ditambah ke penghujung pengumpulan dan bar tatal akan dipaparkan pada galeri. Jika anda mahu mengganti berbanding menambah, gunakan fungsi Clear pertama sekali untuk mengosongkan pengumpulan sebelum memanggil fungsi LoadData.
Lebih banyak contoh luar talian lanjutan
Untuk contoh terperinci, lihat artikel tentang keupayaan luar talian mudah.