Perilaku dan format kolom tanggal dan waktu

Dalam itu Microsoft Dataverse, Anda dapat menentukan bagaimana nilai tanggal dan waktu ditampilkan kepada pengguna dan bagaimana nilai tersebut disesuaikan untuk zona waktu.

Dua opsi tersedia untuk kolom tanggal dan waktu.

  • Perilaku: Apakah akan menyesuaikan nilai untuk zona waktu.
  • Format: Apakah akan menampilkan bagian waktu dari nilai.

Perilaku

Dataverse menyimpan semua nilai tanggal dan waktu dalam zona waktu UTC. Saat aplikasi Anda menampilkan nilai atau nilai pemrosesan yang dimasukkan oleh pengguna, Dataverse dan aplikasi berdasarkan model dapat menyesuaikan zona waktu pengguna dengan opsi Perilaku ini .

  • Lokal pengguna: Sesuaikan nilai untuk zona waktu pengguna. Ini adalah perilaku default. Anda dapat mengubahnya sekali ke perilaku lain.
  • Zona waktu independen: Tidak ada konversi zona waktu.
  • Hanya tanggal: Tidak ada konversi zona waktu. Tidak seperti Zona waktu independen, bagian waktu tidak disimpan.

Zona waktu pengguna diatur dalam opsi pribadi, bukan zona waktu sistem di Windows,, Android, iOS atau macOS. Namun, zona waktu sistem dapat memengaruhi skrip klien yang bekerja dengan Tanggal JavaScript.

Format

Semua kolom tanggal dan waktu memiliki bagian waktu kecuali perilakunya Hanya Tanggal. Format menentukan apakah akan menampilkan bagian waktu dari nilai.

  • Tanggal dan waktu: Menampilkan tanggal dan waktu nilai.
  • Hanya tanggal: Menampilkan bagian tanggal dari nilai saja.

Catatan

Pengguna masih dapat mengubah bagian waktu jika Formatnya adalah Hanya Tanggal. Misalnya, dengan panggilan API Web atau dengan menggunakan kontrol yang memiliki bagian waktu. Ini berbeda dengan Perilaku Tanggal saja, di mana bagian waktu tidak disimpan sama sekali.

Panduan penggunaan

Gunakan perilaku independen zona waktu saat informasi zona waktu tidak diperlukan, seperti waktu check-in hotel. Dengan pilihan ini, pengguna di semua zona waktu melihat nilai tanggal dan waktu yang sama.

Gunakan perilaku Tanggal saja saat informasi tentang waktu dan zona waktu tidak diperlukan, seperti ulang tahun atau hari jadi. Dengan pilihan ini, pengguna di semua zona waktu melihat nilai tanggal yang sama persis.

Perilaku independen zona waktu dengan format Tanggal saja praktis sama dengan perilaku Tanggal saja . Gunakan yang pertama jika Anda tidak yakin apakah Anda memerlukan bagian waktu di masa depan.

Penting

Hindari format Tanggal saja dengan perilaku lokal Pengguna. Pengguna di zona waktu yang berbeda mungkin melihat tanggal yang berbeda, yang tidak dimaksudkan dalam sebagian besar skenario. Saat pengguna menetapkan tanggal dalam aplikasi berdasarkan model, bagian waktu akan secara otomatis diatur ke tengah malam zona waktu mereka. Hal ini dapat menyebabkan tanggal muncul sehari lebih awal atau lebih lambat untuk pengguna lain.

Contoh

Nilai tampilan

Dataverse store 2023-10-15T07:30:00Z (atau untuk 2023-10-15 perilaku hanya tanggal). Pengguna di zona waktu UTC-8 melihat ini di aplikasi berdasarkan model atau dengan permintaan API Web untuk nilai yang diformat:

Perilaku Format Tampilkan nilai
Lokal pengguna Tanggal dan waktu Oktober 14th, 2023, 11: 30 pm
Lokal pengguna Hanya tanggal Oktober 14th, 2023
Zona waktu Independen Tanggal dan waktu 15 Oktober 2023, 7: 30 am
Zona waktu Independen Hanya tanggal Oktober 15th, 2023
Hanya tanggal - Oktober 15th, 2023

Memasukkan nilai di aplikasi

Pengguna di zona waktu UTC-8 masuk October 14th, 2023, 11:30 pm ke aplikasi berdasarkan model. Nilai disimpan sebagai Dataverse :

Perilaku Format Nilai yang disimpan di Dataverse
Lokal pengguna Tanggal dan waktu 2023-10-15T07:30:00Z
Lokal pengguna Hanya tanggal 2023-10-15T07:30:00Z
Zona waktu Independen Tanggal dan waktu 2023-10-14T23:30:00Z
Zona waktu Independen Hanya tanggal 2023-10-14T23:30:00Z
Hanya tanggal - 2023-10-14

Jika pengguna hanya memasukkan tanggal October 14th, 2023, bagian waktu diasumsikan pukul 12:00.

Perilaku Format Nilai yang disimpan di Dataverse
Lokal pengguna Hanya tanggal 2023-10-14T08:00:00Z
Zona waktu Independen Hanya tanggal 2023-10-14T00:00:00Z
Hanya tanggal - 2023-10-14

Masukkan nilai yang tidak valid di aplikasi

Klien yang berbeda memiliki cara yang berbeda untuk menangani input yang tidak valid. Misalnya, di zona waktu Pasifik, musim panas dimulai pada 12 Maret 2023 pukul 02.00, memindahkan waktu maju satu jam menjadi 03.00. Waktu antara 02:00 dan 03:00 pada hari itu tidak ada. Saat pengguna mencoba memasukkan nilai dalam rentang waktu tersebut, aplikasi dapat melakukan salah satu hal berikut:

  • Ubah ke waktu valid sebelumnya atau berikutnya.
  • Kembalikan ke nilai terakhir yang diketahui.
  • Tampilkan pesan kesalahan.
  • Jangan tampilkan waktu antara pukul 02.00 dan 03.00 di pemilih waktu, sehingga pengguna tidak dapat memilihnya sejak awal.

Demikian pula, klien yang berbeda memiliki cara yang berbeda untuk menangani rentang waktu berulang. Misalnya, di zona waktu Pasifik, musim panas berakhir pada 5 November 2023 pukul 02.00, memindahkan waktu mundur satu jam menjadi 01.00. Waktu antara pukul 01.00 dan 02.00 pada hari itu diulang dua kali. Waktu seperti 1:30 AM dapat merujuk pada zona waktu mana pun. Jika Anda perlu menampilkan atau memasukkan waktu dalam rentang tersebut dengan jelas, sebaiknya beralih sementara ke zona waktu yang tidak menggunakan musim panas.

Mendapatkan nilai mentah dengan Web API

Dataverse store 2023-10-15T07:30:00Z (atau untuk 2023-10-15 perilaku hanya tanggal). Pengguna di semua zona waktu mendapatkannya dengan permintaan API Web untuk nilai:

Perilaku Format Nilai mentah
Lokal pengguna Tanggal dan waktu 2023-10-15T07:30:00Z
Lokal pengguna Hanya tanggal 2023-10-15T07:30:00Z
Zona waktu Independen Tanggal dan waktu 2023-10-15T07:30:00Z
Zona waktu Independen Hanya tanggal 2023-10-15T07:30:00Z
Hanya tanggal - 2023-10-15

Mendapatkan nilai dengan API Klien

Pengguna di zona waktu UTC-8 masuk October 14th, 2023, 11:30 pm ke aplikasi berdasarkan model. Fungsi API klien seperti formContext.getAttribute(<column name>).getValue() menampilkan nilai dengan penyesuaian zona waktu yang diterapkan:

Perilaku Format JavaScript dateValue.toUTCString()
Lokal pengguna Tanggal dan waktu 2023-10-15 07:30 (UTC)
Lokal pengguna Hanya tanggal 2023-10-15 07:30 (UTC)

Untuk perilaku independen zona waktu, nilai Tanggal JavaScript berada di zona waktu browser:

Perilaku Format JavaScript dateValue.toString()
Zona waktu Independen Tanggal dan waktu 2023-10-14 23:30 (zona waktu browser)
Zona waktu Independen Hanya tanggal 2023-10-14 23:30 (zona waktu browser)

Nilai tanggal JavaScript selalu memiliki komponen waktu. Itulah mengapa perilaku Hanya tanggal memiliki komponen waktu 12:00:

Perilaku Format JavaScript dateValue.toString()
Hanya tanggal - 2023-10-15 00:00 (zona waktu browser)

Catatan

Nilai tanggal JavaScript dipengaruhi oleh zona waktu browser, yang berasal dari setelan sistem operasi perangkat.

Untuk perilaku lokal pengguna, hasil API Klien harus ditafsirkan sebagai nilai UTC. Gunakan Date.getUTCDate(), Date.getUTCHours(), dll. untuk bekerja dengannya. Untuk mendapatkan apa yang dilihat pengguna, terapkan getTimeZoneOffsetMinutes. Jangan gunakan Date.getDate(), Date.getHours(), dll. karena ini akan menunjukkan nilai dalam zona waktu browser.

Untuk perilaku Independen zona waktu dan Hanya tanggal, hasil API Klien harus ditafsirkan sebagai nilai dalam zona waktu browser. Gunakan Date.getDate(), Date.getHours(), dll. untuk bekerja dengannya. Jangan gunakan Date.getUTCDate(),, Date.getUTCHours() dan sebagainya karena Anda tidak perlu menyesuaikan zona waktu apa pun.

Mengubah perilaku lokal pengguna

Kecuali penerbit solusi terkelola mencegah hal ini, Anda dapat mengubah perilaku kolom tanggal kustom yang ada dari Pengguna lokal menjadi Hanya tanggal atau Zona waktu independen. Ini adalah perubahan satu kali.

Mengubah perilaku kolom memengaruhi nilai kolom yang ditambahkan atau diubah setelah perilaku kolom diubah. Nilai kolom yang ada tetap ada dalam basis dara dengan format zona waktu UTC. Untuk mengubah perilaku nilai kolom yang ada dari UTC ke Tanggal saja, Anda mungkin memerlukan bantuan pengembang untuk mengonversi perilaku nilai tanggal dan waktu yang ada dalam database.

Peringatan

Sebelum mengubah perilaku kolom tanggal dan waktu yang ada, Anda harus mengulas semua dependensi kolom, seperti aturan bisnis, alur kerja, kolom hitung, atau kolom rollup, untuk memastikan tidak akan terjadi masalah akibat mengubah perilaku. Setelah mengubah perilaku kolom tanggal dan waktu, buka setiap aturan bisnis, alur kerja, kolom terhitung, dan kolom rollup tergantung pada kolom yang Anda ubah, tinjau informasi, dan simpan, untuk memastikan bahwa perilaku dan nilai kolom tanggal dan waktu terbaru digunakan.

Mengubah perilaku selama impor solusi

Saat Anda mengimpor solusi yang berisi kolom Tanggal dengan Perilaku lokal pengguna, Anda dapat mengubah perilaku menjadi Hanya tanggal atau Zona waktu independen.

Catatan

Anda hanya dapat mengubah perilaku kolom Hanya tanggal atau Tanggal dan waktu yang dikelola yang ada jika Anda adalah penayang. Untuk membuat perubahan pada bidang ini, peningkatan harus dilakukan pada solusi yang menambahkan kolom Tanggal saja atau Tanggal dan waktu . Informasi lebih lanjut: Meningkatkan atau memperbarui solusi

Mencegah mengubah perilaku

Jika Anda mendistribusikan kolom tanggal kustom dalam solusi terkelola, cegah orang yang menggunakan solusi Anda mengubah perilaku dengan mengatur properti terkelola CanChangeDateTimeBehavior ke False. Informasi lebih lanjut: Atur properti yang dikelola untuk kolom

Operator kueri tanggal dan waktu tidak didukung untuk perilaku Tanggal saja

Operator kueri terkait tanggal dan waktu berikut tidak valid untuk perilaku Tanggal saja . Kesalahan pengecualian operator tidak valid dibuang ketika salah satu operator ini digunakan dalam kueri.

  • Lebih dari X Menit
  • Lebih Lama dari X Jam
  • X Jam Terakhir
  • X Jam Berikutnya

Baca juga

Memecahkan masalah tanggal dan waktu di aplikasi berdasarkan model
Membuat dan mengedit kolom
Tentukan kolom terhitung untuk mengotomatiskan perhitungan manual
Properti yang dikelola kolom
Properti yang dikelola
Blog: Bekerja dengan zona waktu di Dataverse
Mengonfigurasi perilaku dan format kolom tanggal dan waktu menggunakan kode

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