Mit Formularspalten arbeiten
Formelspalten sind Spalten, die einen berechneten Wert in einer Microsoft Dataverse-Tabelle anzeigen. Formeln verwenden Power Fx, eine leistungsstarke aber menschenfreundliche Programmiersprache. Erstellen Sie eine Formel in einer Dataverse-Formelspalte auf die gleiche Weise, wie Sie eine Formel in Microsoft Excel erstellen würden. Während Sie tippen, schlägt Intellisense Funktionen und Syntax vor und hilft Ihnen sogar, Fehler zu beheben.
Formelspalte hinzufügen
Melden Sie sich bei Power Apps unter https://make.powerapps.com an.
Wählen Sie Tabellen, und wählen Sie dann die Tabelle aus, in der Sie eine Formelspalte hinzufügen möchten. Wenn sich das Element nicht im linken Seitenbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.
Wählen Sie den Spalten-Bereich und dann Neue Spalte aus.
Geben Sie die folgenden Informationen ein:
- Ein Anzeigename für die Spalte.
- Geben Sie optional eine Beschreibung der Spalte ein.
Wählen Sie für Datentyp fx Formel aus.
Geben Sie die Formel ein oder verwenden Sie Formelvorschläge:
Geben Sie die Power Fx-Formel in das Feld Formel ein. Weitere Informationen: Eine Formel eingeben
- Zusätzliche Eigenschaften auswählen:
- Wählen Sie Durchsuchbar aus, wenn diese Spalte in Ansichten, Diagrammen, Dashboards und der erweiterten Suche verfügbar sein soll.
- Erweiterte Optionen:
- Wenn die Formel einen Dezimalwert ergibt, erweitern Sie Erweiterte Optionen, um die Anzahl der Genauigkeitspunkte zwischen 0 und 10 zu ändern. Der Standardwert ist 2.
- Wählen Sie Save (Speichern).
Formel eingeben
Im folgenden Beispiel wird eine Formelspalte mit dem Namen Gesamtpreis erstellt. Die Anzahl der Einheiten-Spalte ist ein ganzzahliger Datentyp. Die Preis-Spalte ist ein dezimaler Datentyp.
Die Formelspalte zeigt das Ergebnis von Preis multipliziert mit Anzahl der Einheiten.
Die Formel, die Sie eingeben, bestimmt den Spaltentyp. Sie können einen Spaltentyp nicht ändern, nachdem die Spalte erstellt wurde. Das bedeutete, dass Sie die Formel nach der Erstellung der Spalte nur ändern können, wenn der Spaltentyp dadurch nicht geändert wird.
Beispielsweise erstellt die Formel Preis * Rabatt eine Spalte vom Typ Zahl. Sie können Preis * Rabatt zu Preis * (Rabatt + 10 %) ändern, weil dadurch der Spaltentyp nicht geändert wird. Sie können Preis * Rabatt jedoch nicht zu Text(Preis * Rabatt) ändern, da dies eine Änderung des Spaltentyps in Zeichenfolge erfordern würde.
Formelvorschläge abrufen (Vorschauversion)
[Dieses Thema ist Teil der Dokumentation zur Vorabversion und kann geändert werden.]
Beschreiben Sie, was die Formel machen soll und rufen Sie KI generierte Ergebnisse ab. Formelvorschläge akzeptieren Ihre Eingaben in natürlicher Sprache, um mithilfe eines GPT-basierten KI-Modells eine Power Fx-Formel zu interpretieren und vorzuschlagen.
Wichtig
Dies ist eine Vorschaufunktion und nur in den US-Regionen verfügbar.
Die Vorschaufunktionen sind nicht für die Produktion vorgesehen und weisen möglicherweise eine eingeschränkte Funktionalität auf. Diese Funktionen stehen vor der offiziellen Version zur Verfügung, damit Kunden früher Zugriff darauf erhalten und Feedback geben können.
Derzeit werden Formelvorschläge unterstützt, die auf eine einzelne Tabelle verweisen. Formelvorschläge, die auf eine Spalte oder referenzierte Tabelle verweisen, werden nicht unterstützt.
Anforderungen
Um diese Funktion zu aktivieren, müssen Sie die Umgebungseinstellung KI-Vorschläge für Formelspalten aktivieren. Weitere Informationen: KI-Vorschläge für Formelspalten
Beispiel für Verwendung der natürliche Spracheingabe
Stellen Sie sich vor, es gibt eine Spalte Kundenbewertung, in der die Bewertung nach Konto angezeigt wird.
Geben Sie im Feld Formelvorschläge abrufen die Formel in natürlicher Sprache ein, z. B. Wenn die Bewertung in der Bewertungsspalte gleich oder größer als 5 ist, dann Geben Sie den Wert als Gut an, und wenn er kleiner als 5 ist, geben Sie ihn als Durchschnitt an. Wenn der Wert leer oder Null ist, wird er als Schlecht angezeigt. Wählen Sie dann die Pfeiltaste (Eingabetaste).
Kopieren Sie dann die vorgeschlagene Formel.
Und fügen Sie es in das Feld Formel eingeben ein. Wählen Sie Save (Speichern).
So sieht die Formel beim Einfügen aus.
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"
)
Überprüfen Sie die berechnete Formelspalte Bewertungsbeschreibung, die wie folgt aussieht.
Verantwortliche KI
Informationen zu verantwortungsvoller KI finden Sie in diesen Ressourcen:
- Häufig gestellte Fragen zum Erstellen von Apps und Tabellen aus Unterhaltungen
- FAQ zum verantwortungsvollen Umgang mit KI in Power Apps
Operators
Sie können die folgenden Operatoren in einer Formelspalte verwenden:
+, -, *, /, %, in, exactin, &
Weitere Informationen finden Sie unter Operatoren in Power Apps.
Data types
Sie können die folgenden Datentypen in einer Formelspalte anzeigen:
- Text
- Dezimalzahl
- Auswahl Ja/Nein (boolesch)
- Datum und Uhrzeit
- Ganze Zahl
Die Datentypen „Währung“ und „Auswahl“ (früher „Optionssätze“) werden derzeit nicht unterstützt.
Funktionstypen
Sie können die folgenden Funktionstypen in einer Formelspalte anzeigen:
- Decimal
- Zeichenfolge
- Boolesch
- Optionssatz
- DateTime (TZI)
- DateTime (lokaler Benutzer) (beschränkt auf Vergleiche mit anderen lokalen Werten des Benutzers und den DateAdd- und DateDiff-Funktionen)
- DateTime (Nur Datum) (beschränkt auf Vergleiche mit anderen Nur-Datum-Werten und den DateAdd- und DateDiff-Funktionen)
- Währungen
- Ganze Zahl, zu Dezimal hochgestuft
Funktionen
Informationen zu den Skalarfunktionen, die Sie in einer Formelspalte verwenden können, finden Sie unter Formelreferenz – Dataverse Formelspalten.
* Die Text und Value Funktionen funktionieren nur mit ganzen Zahlen, bei denen kein Dezimaltrennzeichen beteiligt ist. Das Dezimaltrennzeichen variiert je nach Gebietsschema. Da Formelspalten ohne Kenntnis des Gebietsschemas ausgewertet werden, gibt es keine Möglichkeit, das Dezimaltrennzeichen richtig zu interpretieren oder zu generieren.
* Das Argument StartOfWeek wird für die Funktionen WeekNum und Weekday in Formelspalten nicht unterstützt.
Funktionsbeispiel
Eigenschaft | Beispiel |
---|---|
Ruft einen Datumswert ab. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Erstellen einer Dezimalformelspalte
Erstellen Sie eine Formelspalte, die eine Dezimalzahl zurückgibt.
- Geben Sie beim Erstellen einer Spalte die folgenden Informationen ein:
- Ein Anzeigename für die Spalte.
- Geben Sie optional eine Beschreibung der Spalte ein.
- Wählen Sie für Datentyp fx Formel aus.
- Geben Sie in der Leiste Formel eine Formel ein, die einen numerischen Wert zurückgibt. In diesem Beispiel wird eine Formelspalte mit dem Namen Gesamtbetrag erstellt. Die Spalte Einzelpreis hat den Datentyp Dezimal.
- Erweitern Sie Erweiterte Optionen, Auswählen Dezimal als Formeldatentyp und legen Sie dann die erforderliche Anzahl von Dezimalstellen fest.
- Wählen Sie Save (Speichern).
Erstellen einer Formelspalte mit ganzen Zahlen
Erstellen Sie eine Formelspalte, die eine ganze Zahl zurückgibt.
- Geben Sie beim Erstellen einer Spalte die folgenden Informationen ein:
- Ein Anzeigename für die Spalte.
- Geben Sie optional eine Beschreibung der Spalte ein.
- Wählen Sie für Datentyp fx Formel aus.
- Geben Sie in der Leiste Formel eine Formel ein, die einen numerischen Wert zurückgibt. In diesem Beispiel wird eine Formelspalte mit dem Namen Anzahl der Einheiten erstellt. Die Spalten „Gesamtpreis“ und Einzelpreis haben den Datentyp Dezimal.
- Erweitern Sie Erweiterte Optionen und Auswählen Ganze Zahl als Formeldatentyp und legen Sie das erforderliche Format für die Spalte mit den ganzen Zahlen fest.
- Wählen Sie Save (Speichern).
Richtlinien und Einschränkungen
In diesem Abschnitt werden die Richtlinien und bekannten Einschränkungen mit Formelspalten in Dataverse beschrieben.
Validierungen der Verwendung von Währungsfeldern
- Formelspalten unterstützen nicht die Verwendung einer verwandten Tabellenwährungsspalte in der Formel, wie in diesem Beispiel.
- Die direkte Verwendung von Währungsspalten und Wechselkursen in der Formel wird derzeit nicht unterstützt. Die Verwendung von Währungs- und Wechselkursspalten wird durch die Funktion
Decimal
erreicht, z. B.Decimal(currency column)
oderDecimal(exchange rate)
. Die FunktionDecimal
stellt sicher, dass die Ausgabe innerhalb des akzeptierten Bereichs liegt. Wenn der Wert der Währungs- oder Wechselkursspalte den akzeptierten Bereich überschreitet, gibt die Formel Null zurück. - Basiswährungsspalten werden in den Formelspaltenausdrücken nicht unterstützt, da es sich um Systemspalten handelt, die für Berichtszwecke verwendet werden. Wenn Sie ein ähnliches Ergebnis erzielen möchten, können Sie einen Währungsspaltentyp zusammen mit einer Wechselkursspaltenkombination als
CurrencyField_Base = (CurrencyField / ExchangeRate)
verwenden.
Überprüfung der Verwendung von Datums-/Uhrzeitspalten
- Das Verhalten von Datum-Uhrzeit-Formelspalten kann nur aktualisiert werden, wenn es nicht in einer anderen Formelspalte verwendet wird.
- Stellen Sie bei der Verwendung der Funktion
DateDiff
bei Datums-/Uhrzeitformelspalten Folgendes sicher:- Die Verhaltensspalte „Ortszeit Benutzer“ kann nicht mit einer Verhaltensspalte
DateTime(TZI)/DateOnly
verglichen oder verwendet werden. - Verhaltensspalten „Ortszeit Benutzer“ können nur mit einer anderen Verhaltensspalte „Ortszeit Benutzer“ verglichen oder verwendet werden.
DateTime(TZI)
-Verhaltensspalten können inDateDiff
-Funktionen mit anderenDateTime(TZI)/DateOnly
-Verhaltensspalten verglichen oder verwendet werden.DateOnly
-Verhaltensspalten können in der DateDiff-Funktion mit einer anderenDateTime(TZI)/DateOnly
-Verhaltensspalte verglichen oder verwendet werden.
- Die Verhaltensspalte „Ortszeit Benutzer“ kann nicht mit einer Verhaltensspalte
- Datums-/Uhrzeitspalten und Datums-/Uhrzeitfunktionen
UTCNow()
,Now()
können nicht als Parameter an Zeichenfolgenfunktionen übergeben werden.
Verwendung von Formelspalten in Rollupfeldern
- In einer Spalte mit einfacher Formel verwendet die Formel Spalten aus demselben Datensatz oder hartcodierte Werte. Bei Rollup-Spalten müssen Formelspalten einfache Formelspalten sein, wie beispielsweise diese Beispiel-Rollup-Spalte.
- Eine Formelspalte, die von zeitgebundenen Funktionen
UTCNow()
undUTCToday()
abhängig ist, kann nicht in einem Rollupfeld verwendet werden.
Power Fx-Textfunktionsempfehlungen
Formelspalten unterstützen keine
Text()
-Funktionen mit einem einzelnen Argument vom Typ „Zahl“. Zahlen können ganze Zahlen, Dezimalzahlen und Währung sein.Formelspalten unterstützen die Verwendung von Zahlen in den folgenden Konfigurationen nicht:
- In Zeichenfolgen-Funktionen. Hierbei handelt es sich um Zeichenfolgenfunktionen, die überall dort platziert werden, wo ein Textargument erwartet wird: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute und Replacement.
- In den impliziten Formeln, wie zum Beispiel
12 & "foo"
oder12 & 34
oder"foo" & 12
. - Die interne Umwandlung von Zahl in Text wird nicht unterstützt. Wir empfehlen die Verwendung von
Text(Number, Format)
, um eine Zahl in Text zu konvertieren. In dem Fall, in dem einString
-Argument in einerText
-Funktion übergeben wird, wird dasFormat
-Argument nicht unterstützt. - Hier ist ein Beispiel für die Verwendung der Funktion
Text
, um eine Zahl in Text zu konvertieren und eine Zeichenfolge daran anzuhängen:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
Länderspezifische Formatierungstoken wie „.“ und „,“ werden in Formelspalten nicht unterstützt.
Bereichsvalidierungen für Formelspalten
- Sie können die Eigenschaften Minimalwert oder Maximalwert einer Formelspalte nicht festlegen.
- Alle internen Berechnungen sollten innerhalb des Dataverse-Bereichs für Formelspalten vom Typ „Dezimal“ (-100000000000 bis 100000000000) liegen.
- Ein in die Bearbeitungsleiste eingegebener hartcodierter Literalwert sollte innerhalb des Dataverse-Bereichs liegen.
- Wenn es eine numerische Spalte gibt, die NULL ist, wird sie in der Zwischenoperation als 0 betrachtet. Beispiel:
a+b+c and If a = null, b=2, c=3
, dann ergibt die Formelspalte0 + 2 + 3 = 5
.- Dieses Verhalten unterscheidet sich in diesem Fall von berechneten Spalten, da berechnete Spalten
null + 2 + 3 = null
ergeben.
- Dieses Verhalten unterscheidet sich in diesem Fall von berechneten Spalten, da berechnete Spalten
Allgemeine Validierungen für Formelspalten
- Formelspalten können auf andere Formelspalten verweisen, aber eine Formelspalte kann nicht auf sich selbst verweisen.
- Formelspalten unterstützen keine zyklischen Ketten, wie z. B.
F1 = F2 + 10, F2 = F1 * 2
. - Die maximale Länge eines Formelausdrucks in Formelspalten beträgt 1.000 Zeichen.
- Die maximal zulässige Tiefe in Formelspalten beträgt 10. Tiefe ist definiert als die Kette von Formelspalten, die sich auf andere Formel- oder Rollupspalten beziehen.
- Zum Beispiel:
table E1, F1 = 1*2, table E2, F2 - E1*2
. In diesem Beispiel ist die Tiefe von F2 gleich 1.
- Zum Beispiel:
- In modellgesteuerten Apps wird die Sortierung für Folgendes deaktiviert:
- Eine Formelspalte, die eine Spalte einer zugehörigen Tabelle enthält.
- Eine Formelspalte, die eine logische Spalte enthält (z. B. eine Adressspalte).
- Eine Formelspalte, die eine weitere berechnete oder Formelspalte enthält.
- Eine Formelspalte, die die zeitgebundene Funktion
UTCNow()
verwendet.
- Spalten vom Typ „Ganze Zahl“ mit dem Format „Sprache“, „Dauer“, „Zeitzone“ werden in Formelspalten nicht unterstützt.
- Spalten vom Typ „Zeichenfolge“ mit den Formaten „E-Mail“, „Textbereich“, „Tickersymbol“ und „URL“ werden in Formelspalten nicht unterstützt.
- Formelspalten zeigen keine Werte an, wenn die App sich im Mobile Offline-Modus befindet.
- Sie können keine Workflows oder Plug-Ins in Formelspalten auslösen.
- Wir raten davon ab, berechnete Spalten in Formelspalten zu verwenden und umgekehrt.
- Duplikaterkennungsregeln werden für Formelspalten nicht ausgelöst.
- Die
Now
-Funktion kann mit Formelspalten verwendet werden.Now()
hat das Verhalten „Ortszeit Benutzer“ undUTCNow()
hat zeitzonenunabhängiges Verhalten. - Sie können die Genauigkeitseigenschaft für Dezimalspalten festlegen.
- Für Formeln, die numerische Werte zurückgeben, ist der Standardwert des Formeldatentyps auf Dezimal eingestellt.
- Das Aktualisieren des Formats der Formelspalte mit ganzen Zahlen wird nicht unterstützt.
Aktuell nicht unterstützte Power Fx-Funktionen
- Power
- Sqrt
- Exp
- Ln
- ^ (Operator)
Formelspalten von Datentypen, die nicht erzeugt werden können
- Auswahlen (ausgenommen Ja/Nein-Auswahl)
- Währungen