Share via


Arbeide med formelkolonner

Formelkolonner er kolonner som viser en beregnet verdi i en Microsoft Dataverse-tabell. Formler bruker Power Fx, et avansert, men menneskevennlig programmeringsspråk. Du bygger en formel i en Dataverse-formelkolonne på samme måte som du ville bygge en formel i Microsoft Excel. Etter hvert som du skriver, foreslår Intellisense funksjoner og syntaks og hjelper deg også med å rette opp feil.

Legg til en formelkolonne

  1. Logg på Power Apps på https://make.powerapps.com.

  2. Velg Tabeller, og velg deretter tabellen der du vil legge til en formelkolonne. Hvis elementet ikke finnes i sideruten, velger du ...Mer og deretter elementet du vil ha.

  3. Velg Kolonner-området, og velg deretter Ny kolonne.

  4. Angi følgende informasjon:

    • Visningsnavn for kolonnen.
    • Du kan også skrive inn en beskrivelse av kolonnen.
  5. For Datatype velger du fx-formel.

  6. Skriv inn formelen, eller bruk formelforslag:

    Skriv inn Power Fx-formelen i Formel-boksen. Mer informasjon: Skriv inn en formel


  1. Velg tilleggsegenskaper:
    • Velg Søkbar hvis du vil at denne kolonnen skal være tilgjengelig i visninger, diagrammer, instrumentbord og Avansert søk.
    • Avanserte alternativer:
      • Hvis formelen evalueres til en desimalverdi, utvider du Avanserte alternativer for å endre antall presisjonspunkter mellom 0 og 10. Standardverdien er 2.
  2. Velg Lagre.

Skriv inn en formel

Eksemplet nedenfor oppretter en formelkolonne kalt Totalpris. Kolonnen Antall enheter er en heltallsdatatype. Pris-kolonnen er en desimaldatatype.

Skjermbilde av en definisjon av en formelkolonne.

Formelkolonnen viser resultatet av Pris multiplisert med Antall enheter.

Skjermbilde av en oppføring med en formelkolonne.

Formelen du skriver inn, bestemmer kolonnetypen. Du kan ikke endre en kolonnetype etter at kolonnen er opprettet. Dette betyr at du bare kan endre kolonnen etter at du har opprettet den, hvis den ikke endrer kolonnetypen.

Formelen pris * rabatt oppretter for eksempel en kolonnetype med tall. Du kan endre pris * rabatt til pris * (rabatt + 10 %) fordi dette ikke endrer kolonnetypen. Du kan imidlertid ikke endre prisrabatt* til Tekst (prisrabatt)* fordi dette ville kreve endring av kolonnetypen til streng.

Få formelforslag (forhåndsversjon)

[Dette emnet inneholder dokumentasjon for forhåndsversjonen, og kan bli endret.]

Beskriv hva du vil at formelen skal gjøre, og hent KI-genererte resultater. Formelforslag kan ta imot inndata på naturlig språk for å tolke og foreslå en Power Fx-formel ved hjelp av en modell for kunstig intelligens som er basert på GPT.

Viktig

Dette er en evalueringsfunksjonalitet som bare er tilgjengelig i USA.

Forhåndsfunksjonene er ikke ment for produksjonsbruk og kan ha begrenset funksjonalitet. Disse funksjonene er tilgjengelige før en offisielle utgivelsen, slik at kunder kan få tidlig tilgang og gi tilbakemeldinger.

For øyeblikket støttes formelforslag som refererer til én enkelt tabell. Formelforslag som refererer til en kolonne i en relatert tabell, støttes ikke.

Forutsetning

For å kunne aktivere denne funksjonen må du aktivere miljøinnstillingen KI-forslag for formelkolonner. Mer informasjon: KI-forslag for formelkolonner

Eksempel på naturlig språkinndata

Tenk deg at det finnes en Kunderangering-kolonne som viser vurderingen etter forretningsforbindelse. Eksempel på kundeklassifiseringskolonne

I boksen Hent formelforslag angir du formelen på naturlig språk, for eksempel Hvis vurderingen i vurderingskolonnen er lik eller større enn 5, angir du som God, og hvis under 5, angir som Gjennomsnitt,og hvis verdien er tom eller null, vises Dårlig, og deretter velger du pilknappen (enter).

Deretter kopierer du Foreslått formel. Foreslått formel

Og lim den inn i boksen Skriv inn en formel. Velg Lagre. Lim inn formel i Skriv inn en formel-boksen.

Slik vises formelen når den limes inn.

Switch(
    ThisRecord.'Customer Rating',
    Blank(), "Bad",
    0, "Bad",
    1, "Average",
    2, "Average",
    3, "Average",
    4, "Average",
    5, "Good",
    6, "Good",
    7, "Good",
    8, "Good",
    9, "Good",
    10, "Good"
)

Kontroller den beregnede formelkolonnen Vurderingsbeskrivelse, som vises slik.

Kontrollere resultatene for formelkolonnen

Ansvarlig kunstig intelligens

Hvis du vil ha informasjon om ansvarlig KI, kan du gå til disse ressursene:

Operatorer

Du kan bruke følgende operatorer i en formelkolonne:
+, -, *, /, %, in, exactin, &

Hvis du vil ha mer informasjon, kan du gå til Operatorer i Power Apps.

Datatyper

Du kan vise følgende datatyper i en formelkolonne:

  • Tekstmelding
  • Desimaltall
  • Valg, Ja/Nei (boolsk)
  • Datetime

Valuta-, heltalls- og valgdatatypene (tidligere alternativsett) støttes ikke for øyeblikket.

Funksjonstyper

Du kan bruke følgende funksjonstyper i en formelkolonne:

  • Desimal
  • Streng
  • Boolsk
  • Alternativsett
  • DateTime (TZI)
  • DateTime (brukerlokal) (begrenset til sammenligninger med andre brukerlokalverdier DateAdd- og DateDiff-funksjoner)
  • DateTime (Bare dato) (begrenset til sammenligninger med andre Bare dato-verdier, DateAdd- og DateDiff-funksjoner)
  • Valuta
  • Heltall, forfremmet til desimal

Funksjoner

Du kan bruke følgende skalarfunksjoner i en formelkolonne:

Abs

And

Day

Value *

If

Int

Len

Max

Mid

Min

Mod

Not

Or

Sum

Text *

* Funksjonene Text og Value fungerer bare med heltall der desimalskilletegn ikke er involvert. Desimalskilletegnet varierer på tvers av nasjonale innstillinger. Siden formelkolonner evalueres uten kunnskap om nasjonale data, kan du ikke tolke eller generere desimalskilletegnet på riktig måte.

* StartOfWeek-argument støttes ikke for funksjonene WeekNum og Weekday i formelkolonner.

Funksjonseksempel

Description Eksempel
Hent en datoverdi. DateAdd(UTCNow(),-1,TimeUnit.Years)

Retningslinjer og begrensninger

Denne delen beskriver retningslinjer og kjente begrensninger for formelkolonner i Dataverse.

Bruksvalideringer for valutafelt

  • Formelkolonner støtter ikke bruk av en relatert tabellvalutakolonne i formelen, for eksempel i dette eksemplet. Formelkolonne med formel som ikke støttes, Account.Annual Revenue
  • Direkte bruk av valutakolonner og valutakurs i formelen støttes ikke for øyeblikket. Bruk av valuta- og valutakurskolonner oppnås ved hjelp av Decimal-funksjonen, for eksempel Decimal(currency column) eller Decimal(exchange rate). Funksjonen Decimal kontrollerer at utdataene er innenfor det tillatte området. Hvis kolonneverdien for valutaen eller valutakursen overskrider det tillatte området, returnerer formelen null.
  • Standardvalutakolonner støttes ikke i formelkolonneuttrykkene, fordi de er systemkolonner som brukes til rapporteringsformål. Hvis du ønsker et lignende resultat, kan du bruke en valutakolonnetype sammen med en kombinasjon av valutakurskolonner som CurrencyField_Base = (CurrencyField / ExchangeRate).

Bruksvalideringer for dato/klokkeslett-kolonner

  • Virkemåten til formelkolonner for dato og klokkeslett kan bare oppdateres når den ikke brukes i en annen formelkolonne.
  • For formelkolonner for dato/klokkeslett når funksjonen DateDiff brukes, kontrollerer du følgende:
    • Kolonne for brukerlokal virkemåte kan ikke sammenlignes eller brukes med en DateTime(TZI)/DateOnly-virkemåtekolonne.
    • Kolonner for brukerlokal virkemåte kan bare sammenlignes eller brukes med en annen kolonne for brukerlokal virkemåte.
    • DateTime(TZI)-virkemåtekolonne kan sammenlignes eller brukes i DateDiff-funksjoner med en annen DateTime(TZI)/DateOnly-virkemåtekolonne.
    • DateOnly-virkemåtekolonner kan sammenlignes eller brukes i DateDiff-funksjonen med en annen DateTime(TZI)/DateOnly-virkemåtekolonne. Konfigurasjon av dato/klokkeslett som ikke støttes med en formelkolonne
  • Dato/klokkeslett-kolonner og dato/klokkeslett-funksjonene UTCNow(), Now() kan ikke sendes som en parameter til strengfunksjoner. Formelkolonne med dato/klokkeslett-parameter som ikke støttes, sendt i formel

Bruk av formelkolonner i felt for beregnet verdi

  • En enkel formelkolonne er der formelen bruker kolonner fra samme oppføring eller hardkodede verdier. For kolonner for beregnet verdi må formelkolonner være enkle formelkolonner, for eksempel denne kolonnen for beregnet verdi. Eksempel på enkel formelkolonne for en kolonne for beregnet verdi Eksempel på konfigurasjon av kolonne for beregnet verdi
  • En formelkolonne som er avhengig av de tidsbundne funksjonene UTCNow() og UTCToday() kan ikke brukes i et felt for beregnet verdi.

Power Fx-tekstfunksjonsanbefalinger

  • Formelkolonner støtter ikke Text()-funksjoner med ett enkelt argument av typen Tall. Tall kan være heltall, desimaler eller valutaer. Formelkolonne med tekstfunksjon som ikke støttes, med et tallargument

  • Formelkolonner støtter ikke bruk av tall i følgende konfigurasjoner:

    • I strengfunksjoner: Dette er strengfunksjoner som plasseres der et tekstargument forventes: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute og Replace.
    • I implisitte formler, for eksempel 12 & "foo" eller 12 & 34 eller "foo" & 12.
    • Internt tall-til-tekst-konvertering støttes ikke. Vi anbefaler at du bruker Text(Number, Format) til å konvertere et tall til tekst. I tilfellet der et String-argument sendes i en Text-funksjon, støttes ikke Format-argumentet.
    • Her er et eksempel på hvordan du bruker Text-funksjonen til å konvertere et tall til tekst og føye til en streng i den:
    Concatenate(Text(123,"#"),"ab")
    Text(123,"#") & "foo"
    
  • Spesifikke formateringstokener for nasjonal innstilling som «.» og «,» støttes ikke i formelkolonner. Utstøttet formateringstoken spesifikt for nasjonal innstilling sendt som parameter til tekstfunksjonen i formel

Områdevalideringer for formelkolonner

  • Du kan ikke angi egenskapene Minimumsverdi eller Maksimumsverdi for en formelkolonne.
  • Alle interne beregninger må være innenfor Dataverse-området for formelkolonner av desimaltypen (-100000000000 til 100000000000).
  • En hardkodet litteralverdi som er angitt på formellinjen, må være innenfor Dataverse-området.
  • Hvis det finnes en numerisk kolonne som er null, regnes den som 0 i den midlertidige operasjonen. For eksempel a+b+c and If a = null, b=2, c=3 gir formelkolonnen 0 + 2 + 3 = 5.
    • Denne virkemåten er forskjellig fra beregnede kolonner i dette tilfellet fordi beregnede kolonner gir null + 2 + 3 = null.

Generelle valideringer for formelkolonner

  • Formelkolonner kan referere til andre formelkolonner, men en formelkolonne kan ikke referere til seg selv.
  • Formelkolonner støtter ikke sykliske kjeder, for eksempel F1 = F2 + 10, F2 = F1 * 2.
  • Maksimal lengde på formeluttrykk i formelkolonner er 1000 tegn.
  • Maksimal dybde som er tillatt i formelkolonner, er 10. Dybde defineres som kjeden av formelkolonner som refererer til andre kolonner for formel eller beregnet verdi.
    • Eksempel: table E1, F1 = 1*2, table E2, F2 - E1*2. I dette eksemplet er dybden F2 1.
  • I modelldrevne apper er sortering deaktivert etter:
    • En formel som inneholder en kolonne fra en relatert tabell.
    • En formelkolonne som inneholder en logisk kolonne (for eksempel adressekolonnen).
    • En formelkolonne som inneholder en annen beregnet kolonne eller formelkolonne.
    • En formelkolonne som bruker tidsbundet funksjon UTCNow().
  • Kolonner av typen Heltall med formatet Språk, Varighet, Tidssone støttes ikke i formelkolonner.
  • Kolonner av typen Streng med formatet E-post, Tekstområde, Ticker-kode, Nettadresse støttes ikke i formelkolonner.
  • Formelkolonner viser ikke verdier når appen er i Mobile offline-modus.
  • Du kan ikke utløse arbeidsflyter eller programtillegg i formelkolonner.
  • Vi anbefaler ikke å bruke beregnede kolonner i formelkolonner, og omvendt.
  • Duplikatregistreringsregler utløses ikke for formelkolonner.
  • Now-funksjonen kan brukes med formelkolonner. Now() har brukerlokal virkemåte og UTCNow() har tidssoneuavhengig funksjonalitet.
  • Du kan angi presisjonsegenskapen for desimalkolonner.

Power Fx-funksjoner som ikke støttes for øyeblikket

  • Power
  • Sqrt
  • Exp
  • Ln
  • ^ (operator)

Formelkolonner med datatyper som ikke kan lages

  • Heltall
  • Valg (unntatt Ja/Nei-valg)
  • Valuta

Se også

Typer kolonner

Oversikt over Microsoft Power Fx

Formel- og beregnede kolonner og kolonner for beregnet verdi ved hjelp av kode