Share via


Virkemåte og format for kolonnen Dato og klokkeslett

I Microsoft Dataverse kan du angi hvordan dato- og klokkeslettverdier skal vises til brukere, og hvordan de justeres for tidssoner.

To alternativer er tilgjengelige for dato- og klokkeslettkolonner.

  • Virkemåte: Om verdier for tidssoner skal justeres.
  • Format: Angir om klokkeslettdelen av verdien skal vises.

Virkemåte

Dataverse lagrer alle dato- og klokkeslettverdier i UTC-tidssonen. Når appen viser verdier eller behandler verdier som er angitt av brukere, kan Dataverse og modelldrevne apper justere etter brukerens tidssone med disse Virkemåte-alternativene.

  • Brukerlokal: Justerer verdier for brukerens tidssone. Dette er standard virkemåte. Du kan endre dette én gang til en annen virkemåte.
  • Tidssoneuavhengig: Ingen tidssonekonvertering.
  • Bare dato: Ingen tidssonekonvertering. I motsetning til Tidssoneuavhengig, lagres ikke klokkeslettdelen.

Brukerens tidssone angis i personlige alternativer, ikke i systemtidssonen i Windows, Android iOS eller macOS. Imidlertid kan systemtidssonen påvirke klientskript som fungerer med JavaScript-datoer.

Format

Alle dato- og klokkeslettkolonner har en klokkeslettdel med mindre funksjonaliteten er Bare dato. Format: angir om klokkeslettdelen av verdien skal vises.

  • Dato og klokkeslett: Viser datoen og klokkeslettet for verdien.
  • Bare dato: Viser bare datodelen av verdien.

Obs!

Brukere kan fremdeles endre klokkeslettdelen hvis Format er Bare dato. For eksempel med web-API-kall eller ved å bruke en kontroll som har klokkeslettdelen. Dette er forskjellig fra Bare dato Virkemåte, der klokkeslettdelen ikke lagres i det hele tatt.

Retningslinjer for bruk

Bruk Tidssoneuavhengig virkemåte når tidssoneinformasjon ikke er nødvendig, for eksempel innsjekkingstider på hotell. Med dette valget vil brukere i alle tidssoner se samme dato og klokkeslett-verdi.

Virkemåten Bare dato når opplysninger om klokkeslett og tidssone ikke er nødvendig, for eksempel fødselsdager eller merkedager. Med dette valget vil brukere i alle tidssoner se nøyaktig samme datoverdi.

Tidssoneuavhengig virkemåte med Bare dato-format er omtrent det samme som virkemåten Bare dato. Bruk det forrige hvis du ikke er sikker på om du trenger tidsdelen senere.

Eksempler

Vise verdier

Dataverse lagrer 2023-10-15T07:30:00Z (eller 2023-10-15 for Bare dato-virkemåten). Brukere i tidssonen UTC-8 ser disse i den modelldrevne appen eller med en web-API-forespørsel for den formaterte verdien:

Virkemåte Format Vise verdi
Brukerlokal Dato og klokkeslett 14. oktober 2023 kl. 23:30
Brukerlokal Bare dato 14. oktober 2023
Tidssoneuavhengig Dato og klokkeslett 15. oktober 2023, 07:30
Tidssoneuavhengig Bare dato 15. oktober 2023
Bare dato - 15. oktober 2023

Angi verdier i en app

Brukere i tidssonen UTC-8 angir October 14th, 2023, 11:30 pm i en modelldrevet app. Denne verdien er lagret i Dataverse som:

Virkemåte Format Verdi lagret i Dataverse
Brukerlokal Dato og klokkeslett 2023-10-15T07:30:00Z
Brukerlokal Bare dato 2023-10-15T07:30:00Z
Tidssoneuavhengig Dato og klokkeslett 2023-10-14T23:30:00Z
Tidssoneuavhengig Bare dato 2023-10-14T23:30:00Z
Bare dato - 2023-10-14

Hvis brukeren bare angir datoen October 14th, 2023, antas det at klokkeslettdelen er 12:00.

Virkemåte Format Verdi lagret i Dataverse
Brukerlokal Bare dato 2023-10-14T08:00:00Z
Tidssoneuavhengig Bare dato 2023-10-14T00:00:00Z
Bare dato - 2023-10-14

Angi ugyldige verdier i en app

Forskjellige klienter kan håndtere ugyldige inndata på forskjellige måter. I tidssonen Stillehavskysten startet for eksempel sommertid 12. mars 2023 kl. 02:00, slik at klokken ble stilt en time frem til 03:00. Klokkeslettet mellom 02:00 og 03:00 den dagen finnes ikke. Når brukere prøver å angi en verdi i det tidsintervallet, kan apper gjøre ett av følgende:

  • Endre til forrige eller neste gyldige klokkeslett.
  • Gå tilbake til den sist kjente verdien.
  • Vis en feilmelding.
  • Ikke vis klokkeslett mellom 02:00 og 03:00 i klokkeslettvelgeren, slik at brukerne ikke kan velge dem i utgangspunktet.

Ulike klienter har likeledes ulike måter å håndtere gjentatte tidsintervaller på. I tidssonen Stillehavskysten sluttet for eksempel sommertid 5. november 2023 kl. 02:00, slik at klokken ble stilt en time tilbake til 01:00. Klokkeslettet mellom 01:00 og 02:00 den dagen gjentas to ganger. Et tidspunkt som 01:30 kan henvise til enhver av tidssonene. Hvis du utvetydig må vise eller angi klokkeslett i dette intervallet, er det best å bytte midlertidig til en tidssone som ikke bruker sommertid.

Hente råverdier med web-API

Dataverse lagrer 2023-10-15T07:30:00Z (eller 2023-10-15 for Bare dato-virkemåten). Brukere i alle tidssoner får disse med en web-API-forespørsel om verdien:

Virkemåte Format Råverdi
Brukerlokal Dato og klokkeslett 2023-10-15T07:30:00Z
Brukerlokal Bare dato 2023-10-15T07:30:00Z
Tidssoneuavhengig Dato og klokkeslett 2023-10-15T07:30:00Z
Tidssoneuavhengig Bare dato 2023-10-15T07:30:00Z
Bare dato - 2023-10-15

Få verdier med klient-API

Brukere i tidssonen UTC-8 angir October 14th, 2023, 11:30 pm i en modelldrevet app. Klient-API-funksjoner som formContext.getAttribute(<column name>).getValue() returnerer verdien med tidssonejusteringer:

Virkemåte Format JavaScript dateValue.toUTCString()
Brukerlokal Dato og klokkeslett 2023-10-15 07:30 (UTC)
Brukerlokal Bare dato 2023-10-15 07:30 (UTC)

For Tidssoneuavhengig virkemåte finnes JavaScript-datoverdien i webleserens tidssone:

Virkemåte Format JavaScript dateValue.toString()
Tidssoneuavhengig Dato og klokkeslett 2023-10-14 23:30 (tidssone for nettleser)
Tidssoneuavhengig Bare dato 2023-10-14 23:30 (tidssone for nettleser)

JavaScript-datoverdier har alltid en tidskomponent. Derfor har virkemåten Bare dato en klokkeslettkomponent på 12:00:

Virkemåte Format JavaScript dateValue.toString()
Bare dato - 2023-10-15 00:00 (tidssone for nettleser)

Obs!

JavaScript-datoverdier påvirkes av webleserens tidssone, som kommer fra innstillingene for operativsystemet på enheten.

For Brukerlokal-virkemåten må resultatet av klient-API tolkes som en UTC-verdi. Bruk Date.getUTCDate(), Date.getUTCHours() osv. for å arbeide med den. For å få det brukeren ser, bruk getTimeZoneOffsetMinutes. Ikke bruk Date.getDate(), Date.getHours()osv, fordi disse vil vise verdien i webleserens tidssone.

For virkemåten Tidssoneuavhengig og Bare dato skal resultatet av klient-API tolkes som en verdi i webleserens tidssone. Bruk Date.getDate(), Date.getHours() osv. for å arbeide med den. Ikke bruk Date.getUTCDate() Date.getUTCHours() og så videre, fordi du trenger ikke å justere for tidssoner.

Endre brukerlokal virkemåte

Med mindre utgiveren av en administrert løsning hindrer dette, kan du endre virkemåten for eksisterende egendefinerte datokolonner fra Brukerlokal til Bare dato eller Tidssoneuavhengig. Dette er en engangsendring.

Endringen av kolonnens virkemåte påvirker kolonneverdiene som er lagt til eller endret etter at kolonnens virkemåte ble endret. De eksisterende kolonneverdiene forblir i databasen i UTC-tidssoneformatet. Hvis du vil endre virkemåten for verdiene i de eksisterende kolonnene fra UTC til Bare dato, kan det hende at du trenger hjelp av en utvikler til å konvertere funksjonaliteten til eksisterende dato- og klokkeslettverdier i databasen.

Advarsel

Før du endrer virkemåten for en eksisterende dato og klokkeslett-kolonne, bør du gå gjennom alle avhengighetene for kolonnen, f.eks. forretningsregler, arbeidsflyt og beregnede kolonner eller kolonne for beregnet verdi, for å sørge for at det ikke oppstår problemer som følge av endringen av virkemåte. Når du har endret virkemåten til en kolonne for dato og klokkeslett, åpner du hver forretningsregel, arbeidsflyt, beregnet kolonne og kolonne for beregnet verdi som er avhengig av kolonnen du endret, se gjennom informasjonen, og lagre den for å sikre at det er den nyeste virkemåten og verdien for dato og klokkeslett-kolonne, som brukes.

Endre virkemåte under en løsningsimport

Når du importerer en løsning som inneholder en datokolonne med virkemåten Brukerlokal, kan du endre virkemåten til Bare dato eller Tidssoneuavhengig.

Obs!

Du kan bare endre funksjonaliteten til en eksisterende administrert Bare dato- Dato og klokkeslett-kolonne hvis du er utgiver. Hvis du vil gjøre en endring i disse feltene, må du utføre en oppgradering til løsningen som la til kolonnen Bare dato eller Dato og klokkeslett. Mer informasjon: Oppgradere eller oppdatere en løsning

Hindre endring av virkemåte

Hvis du distribuerer en egendefinert datokolonne i en administrert løsning, hindrer du personer som bruker løsningen, fra å endre virkemåten ved å sette den administrerte egenskapen CanChangeDateTimeBehavior til Usann. Mer informasjon: Angi forvaltede egenskaper for kolonner

Spørringsoperatorer for dato og klokkeslettet støttes ikke for virkemåten Bare dato

Følgende dato- og klokkeslettrelaterte spørringsoperatorer er ugyldige for virkemåten Bare dato. Det oppstår en feil med ugyldig operator når en av disse operatorene brukes i spørringen.

  • Eldre enn X minutter
  • Eldre enn X timer
  • Siste X timer
  • Neste X timer

Se også

Feilsøk dato- og klokkeslettproblemer i modelldrevne apper
Opprette og redigere kolonner
Definere beregnede kolonner for å automatisere manuelle beregninger
Kolonneadministrerte egenskaper
Forvaltede egenskaper
Blogg: Arbeide med tidssoner i Dataverse
Konfigurer virkemåte og format for kolonnen Dato og klokkeslett med kode

Obs!

Kan du fortelle oss om språkinnstillingene for dokumentasjonen? Ta en kort undersøkelse. (vær oppmerksom på at denne undersøkelsen er på engelsk)

Undersøkelsen tar rundt sju minutter. Det blir ikke samlet inn noen personopplysninger (personvernerklæring).