Kelakuan dan format lajur tarikh dan masa
Dalam Microsoft Dataverse, anda boleh menentukan cara nilai tarikh dan masa ditunjukkan kepada pengguna dan cara ia diselaraskan untuk zon masa.
Dua opsyen tersedia untuk lajur tarikh dan masa.
- Kelakuan: Sama ada untuk melaraskan nilai untuk zon masa.
- Format: Sama ada untuk memaparkan bahagian masa nilai.
Tingkah Laku
Dataverse menyimpan semua nilai tarikh dan masa dalam zon waktu UTC. Apabila apl anda memaparkan nilai atau nilai pemprosesan yang dimasukkan oleh pengguna Dataverse dan aplikasi dipacu model boleh dilaraskan untuk zon waktu pengguna dengan opsyen Kelakuan ini .
- Setempat pengguna: Laraskan nilai untuk zon waktu pengguna. Ini ialah tingkah laku lazim. Anda boleh mengubahnya sekali kepada tingkah laku lain.
- Zon waktu bebas: Tiada penukaran zon waktu.
- Tarikh sahaja: Tiada penukaran zon waktu. Tidak seperti zon waktu bebas, bahagian masa tidak disimpan.
Zon waktu pengguna ditetapkan dalam pilihan peribadi, bukan zon waktu sistem dalam Windows, Android, iOS, atau macOS. Walau bagaimanapun, zon waktu sistem mungkin menjejaskan skrip klien yang berfungsi dengan Tarikh JavaScript.
Format
Semua lajur tarikh dan masa mempunyai bahagian masa melainkan tingkah lakunya ialah Date Only. Format menentukan sama ada untuk memaparkan bahagian masa nilai.
- Tarikh dan masa: Memaparkan tarikh dan masa nilai.
- Tarikh sahaja: Memaparkan bahagian tarikh bagi nilai sahaja.
Nota
Pengguna masih boleh mengubah bahagian masa jika Format adalah Tarikh Sahaja. Contohnya, dengan panggilan API Web atau menggunakan kawalan yang mempunyai bahagian masa. Ini berbeza daripada Kelakuan Tarikh sahaja, di mana bahagian masa tidak disimpan sama sekali.
Garis panduan penggunaan
Gunakan tingkah laku bebas zon waktu apabila maklumat zon waktu tidak diperlukan, seperti masa daftar masuk hotel. Dengan pemilihan ini, pengguna dalam semua zon masa melihat nilai tarikh dan masa yang sama.
Gunakan tingkah laku Tarikh sahaja apabila maklumat tentang masa hari dan zon waktu tidak diperlukan, seperti hari lahir atau ulang tahun. Dengan pemilihan ini, pengguna dalam semua zon masa melihat nilai tarikh yang sama.
Tingkah laku bebas zon waktu dengan format Tarikh sahaja boleh dikatakan sama dengan tingkah laku Tarikh sahaja . Gunakan bekas jika anda tidak pasti sama ada anda memerlukan bahagian masa pada masa hadapan.
Penting
Elakkan format Tarikh sahaja dengan Kelakuan setempat pengguna. Pengguna dalam zon waktu yang berbeza mungkin melihat tarikh yang berbeza, yang tidak dimaksudkan dalam kebanyakan senario. Apabila pengguna menetapkan tarikh dalam apl berpandukan model, bahagian masa akan ditetapkan secara automatik kepada tengah malam zon waktu mereka. Ini mungkin menyebabkan tarikh muncul sehari lebih awal atau lebih baru untuk pengguna lain.
Contoh
Paparkan nilai
Dataverse menyimpan 2023-10-15T07:30:00Z
(atau 2023-10-15
untuk tingkah laku Tarikh sahaja). Pengguna dalam zon waktu UTC-8 melihat ini dalam aplikasi berpandukan model atau dengan permintaan API Web untuk nilai yang diformatkan:
Tingkah Laku | Format | Nilai paparan |
---|---|---|
Tempatan pengguna | Tarikh dan masa | Oktober 14th, 2023, 11: 30 pm |
Tempatan pengguna | Tarikh sahaja | Oktober 14th, 2023 |
Bebas zon waktu | Tarikh dan masa | Oktober 15th, 2023, 7:30 am |
Bebas zon waktu | Tarikh sahaja | Oktober 15th, 2023 |
Tarikh sahaja | - | Oktober 15th, 2023 |
Masukkan nilai dalam aplikasi
Pengguna dalam zon waktu UTC-8 masukkan October 14th, 2023, 11:30 pm
dalam aplikasi berpandukan model. Nilai disimpan sebagai Dataverse :
Tingkah Laku | Format | Nilai yang disimpan dalam Dataverse |
---|---|---|
Tempatan pengguna | Tarikh dan masa | 2023-10-15T07:30:00Z |
Tempatan pengguna | Tarikh sahaja | 2023-10-15T07:30:00Z |
Bebas zon waktu | Tarikh dan masa | 2023-10-14T23:30:00Z |
Bebas zon waktu | Tarikh sahaja | 2023-10-14T23:30:00Z |
Tarikh sahaja | - | 2023-10-14 |
Jika pengguna memasukkan tarikh October 14th, 2023
sahaja, bahagian masa dianggap sebagai 12:00 AM.
Tingkah Laku | Format | Nilai yang disimpan dalam Dataverse |
---|---|---|
Tempatan pengguna | Tarikh sahaja | 2023-10-14T08:00:00Z |
Bebas zon waktu | Tarikh sahaja | 2023-10-14T00:00:00Z |
Tarikh sahaja | - | 2023-10-14 |
Masukkan nilai tidak sah dalam aplikasi
Pelanggan yang berbeza mempunyai cara yang berbeza untuk mengendalikan input tidak sah. Sebagai contoh, di zon waktu Pasifik, penjimatan siang bermula pada 12 Mac 2023 pada 2:00 AM, menggerakkan masa ke hadapan satu jam hingga 3:00 pagi. Masa antara 2:00 AM dan 3:00 pada hari itu tidak wujud. Apabila pengguna cuba memasukkan nilai dalam julat masa tersebut, apl mungkin melakukan salah satu perkara berikut:
- Tukar kepada masa sah sebelum atau seterusnya.
- Kembali kepada nilai terakhir yang diketahui.
- Tunjukkan mesej ralat.
- Jangan tunjukkan masa antara 2:00 AM dan 3:00 AM dalam pemilih masa, supaya pengguna tidak boleh memilih mereka terlebih dahulu.
Begitu juga, pelanggan yang berbeza mempunyai cara yang berbeza untuk mengendalikan julat masa berulang. Sebagai contoh, di zon waktu Pasifik, penjimatan siang berakhir pada 5 November 2023 pada 2:00 AM, menggerakkan masa ke belakang satu jam hingga 1:00 pagi. Masa antara 1:00 AM dan 2:00 AM pada hari itu diulang dua kali. Masa seperti 1:30 AM boleh merujuk kepada mana-mana zon waktu. Sekiranya anda perlu menunjukkan atau memasukkan masa dalam julat tersebut dengan jelas, sebaiknya beralih ke zon waktu yang tidak menggunakan penjimatan siang hari buat sementara waktu.
Dapatkan nilai mentah dengan API Web
Dataverse menyimpan 2023-10-15T07:30:00Z
(atau 2023-10-15
untuk tingkah laku Tarikh sahaja). Pengguna dalam semua zon masa mendapatkan ini dengan permintaan API Web untuk nilai:
Tingkah Laku | Format | Nilai mentah |
---|---|---|
Tempatan pengguna | Tarikh dan masa | 2023-10-15T07:30:00Z |
Tempatan pengguna | Tarikh sahaja | 2023-10-15T07:30:00Z |
Bebas zon waktu | Tarikh dan masa | 2023-10-15T07:30:00Z |
Bebas zon waktu | Tarikh sahaja | 2023-10-15T07:30:00Z |
Tarikh sahaja | - | 2023-10-15 |
Dapatkan nilai dengan API Pelanggan
Pengguna dalam zon waktu UTC-8 masukkan October 14th, 2023, 11:30 pm
dalam aplikasi berpandukan model. Fungsi API pelanggan seperti formContext.getAttribute(<column name>).getValue()
mengembalikan nilai dengan pelarasan zon masa digunakan:
Tingkah Laku | Format | Javascript dateValue.toUTCString() |
---|---|---|
Tempatan pengguna | Tarikh dan masa | 2023-10-15 07:30 (UTC) |
Tempatan pengguna | Tarikh sahaja | 2023-10-15 07:30 (UTC) |
Untuk kelakuan bebas zon waktu, nilai Tarikh JavaScript berada dalam zon waktu pelayar:
Tingkah Laku | Format | Javascript dateValue.toString() |
---|---|---|
Bebas zon waktu | Tarikh dan masa | 2023-10-14 23:30 (zon waktu pelayar) |
Bebas zon waktu | Tarikh sahaja | 2023-10-14 23:30 (zon waktu pelayar) |
Nilai tarikh JavaScript sentiasa mempunyai komponen masa. Itulah sebabnya Kelakuan tarikh sahaja mempunyai komponen masa 12:00 AM:
Tingkah Laku | Format | Javascript dateValue.toString() |
---|---|---|
Tarikh sahaja | - | 2023-10-15 00:00 (zon waktu pelayar) |
Nota
Nilai tarikh JavaScript dipengaruhi oleh zon waktu pelayar, yang berasal dari tetapan sistem pengendalian peranti.
Untuk tingkah laku setempat Pengguna, hasil API Pelanggan harus ditafsirkan sebagai nilai UTC. Gunakan Date.getUTCDate()
, Date.getUTCHours()
dan lain-lain untuk bekerja dengannya. Untuk mendapatkan apa yang dilihat oleh pengguna, gunakan getTimeZoneOffsetMinutes. Jangan gunakan Date.getDate()
, Date.getHours()
dan lain-lain kerana ini akan menunjukkan nilai dalam zon waktu penyemak imbas.
Untuk tingkah laku bebas zon masa dan Tarikh sahaja, hasil API Pelanggan harus ditafsirkan sebagai nilai dalam zon waktu pelayar. Gunakan Date.getDate()
, Date.getHours()
dan lain-lain untuk bekerja dengannya. Jangan gunakan Date.getUTCDate()
, Date.getUTCHours()
dan sebagainya kerana anda tidak perlu menyesuaikan diri untuk sebarang zon waktu.
Mengubah kelakuan setempat pengguna
Melainkan penerbit penyelesaian terurus menghalangnya, anda boleh mengubah kelakuan lajur tarikh tersuai sedia ada daripada Pengguna setempat kepada Tarikh sahaja atau Zon masa bebas. Ini adalah perubahan sekali sahaja.
Mengubah tingkah laku lajur mempengaruhi nilai lajur yang ditambah atau diubah suai selepas tingkah laku lajur tersebut ditukar. Nilai lajur yang sedia ada kekal dalam pangkalan data dalam format zon waktu UTC. Untuk mengubah kelakuan nilai lajur sedia ada daripada UTC kepada Tarikh sahaja, anda mungkin memerlukan bantuan pembangun untuk menukar kelakuan nilai tarikh dan masa sedia ada dalam pangkalan data.
Amaran
Sebelum mengubah tingkah laku lajur tarikh dan masa sedia ada, anda perlu menyemak semua kebergantungan lajur, seperti peraturan perniagaan, aliran kerja, lajur yang dikira atau lajur gulung atas, untuk memastikan tiada isu disebabkan oleh perubahan tingkah laku. Selepas mengubah kelakuan lajur tarikh dan masa, buka setiap peraturan perniagaan, aliran kerja, lajur terhitung dan lajur gulung bergantung pada lajur yang anda ubah, semak semula maklumat dan simpannya untuk memastikan kelakuan dan nilai lajur tarikh dan masa terkini digunakan.
Ubah tingkah laku semasa import penyelesaian
Apabila anda mengimport penyelesaian yang mengandungi lajur Tarikh dengan kelakuan setempat Pengguna, anda boleh mengubah kelakuan kepada Tarikh sahaja atau Zon masa bebas.
Nota
Anda hanya boleh mengubah kelakuan lajur Tarikh terurus sahaja atau Tarikh dan masa sedia ada jika anda merupakan penerbit. Untuk membuat perubahan pada medan ini, naik taraf mesti dibuat kepada penyelesaian yang menambah lajur Tarikh sahaja atau Tarikh dan masa . Maklumat lanjut: Naik taraf atau kemaskinikan penyelesaian
Cegah daripada mengubah tingkah laku
Jika anda mengedarkan lajur tarikh tersuai dalam penyelesaian terurus, halang individu yang menggunakan penyelesaian anda daripada mengubah kelakuan dengan mengesetkan sifat terurus CanChangeDateTimeBehavior kepada False. Maklumat lanjut: Tetapkan sifat terurus untuk lajur
Operator pertanyaan tarikh dan masa tidak disokong untuk kelakuan Tarikh sahaja
Operator pertanyaan berkaitan tarikh dan masa berikut tidak sah untuk kelakuan Tarikh sahaja . Ralat pengecualian pengendali tidak sah berlaku apabila satu daripada pengendali ini digunakan dalam pertanyaan.
- Lebih Lama Daripada X Minit
- Lebih Lama Daripada X Jam
- X Jam Terakhir
- X Jam Berikutnya
Lihat juga
Menyelesaikan masalah isu tarikh dan masa dalam apl berpandukan model
Mencipta dan mengedit lajur
Mentakrifkan lajur terhitung untuk mengautomatikkan pengiraan manual
Sifat terurus lajur
Hartanah terurus
Blog: Bekerja dengan zon masa di Dataverse
Mengkonfigurasikan kelakuan dan format lajur tarikh dan masa menggunakan kod
Nota
Adakah anda boleh memberitahu kami tentang keutamaan bahasa dokumentasi anda? Jawab tinjauan pendek. (harap maklum bahawa tinjauan ini dalam bahasa Inggeris)
Tinjauan akan mengambil masa lebih kurang tujuh minit. Tiada data peribadi akan dikumpulkan (pernyataan privasi).
Maklum balas
https://aka.ms/ContentUserFeedback.
Akan datang: Sepanjang 2024, kami akan menghentikan secara berperingkat Isu GitHub sebagai kaedah maklum balas untuk kandungan dan menggantikannya dengan sistem maklum balas baharu. Untuk mendapatkan maklumat lanjut lihat:Kirim dan lihat maklum balas untuk