Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik: Vászonalapú alkalmazások
Copilot Studio
Desktop folyamatok
Dataverse képletoszlopok
Modellalapú alkalmazások
Power Platform CLI
Dataverse-függvények
Power Pages
Meghatározza, hogy egy halmaz bármely feltétele igaz (If) vagy egy képlet eredménye megfelel-e a készlet (Switch) bármely értékének, majd visszaad egy eredményt, vagy végrehajt egy műveletet.
Ismertetés
A If függvény egy vagy több feltételt tesztel, amíg valódi eredményt nem talál. If ilyen eredmény található, a rendszer egy megfelelő értéket ad vissza. If nem található ilyen eredmény, a rendszer egy alapértelmezett értéket ad vissza. A visszaadott érték mindkét esetben lehet egy megjelenítendő sztring, egy kiértékelendő képlet vagy egyéb formájú eredmény.
A Switch függvény kiértékel egy képletet, és meghatározza, hogy az eredmény megfelel-e a megadott sorozat bármely értékének. If a rendszer egyezést talál, egy megfelelő értéket ad vissza. If nem található egyezés, a rendszer egy alapértelmezett értéket ad vissza. A visszaadott érték mindkét esetben lehet egy megjelenítendő sztring, egy kiértékelendő képlet vagy egyéb formájú eredmény.
If és Switch nagyon hasonlóak, de a helyzethez a legjobb függvényt kell használnia:
- Egyetlen feltétel kiértékelésére használható If . A függvény Ifleggyakoribb szintaxisa a ( Condition, ThenResult, DefaultResult ), amely a közös "ha ... akkor... Más ..." más programozási eszközökben látható minta.
- Több egymástól független feltétel kiértékelésére használható If . A Power Appsben (a Microsoft Exceltől eltérően) több feltételt is megadhat képletek beágyazása If nélkül.
- Egyetlen Switch feltétel kiértékelése több lehetséges egyezéssel. Ebben az esetben is használhatja If , de minden lehetséges egyezéshez meg kell ismételnie a képletet.
Mindkét függvényt használhatja viselkedési képletekben két vagy több művelet közötti elágaztatáshoz. Csak egy ág vált ki műveletet. A feltételek és egyezések kiértékelése sorrendben történik, és leáll, ha egy feltétel igaz értékű, vagy ha a rendszer egyezést talál.
A rendszer üres értéket ad vissza, ha egyik feltétel sem igaz, nem található egyezés, és nem ad meg alapértelmezett eredményt.
Szintaxis
If( Condition, ThenResult [, DefaultResult ] )
If( Condition1, ThenResult1 [, Condition2, ThenResult2, ... [ , DefaultResult ] ] )
- Feltételek - Kötelező. A igaz érték tesztelésére szolgáló képlet(ek). Ezek a képletek gyakran tartalmaznak összehasonlító operátorokat (például <, > vagy =) és tesztelési függvényeket, például IsBlank vagy IsEmpty.
- ThenResults - Kötelező. A feltétel igaz értékkel történő kiértékelése esetén visszaadandó megfelelő érték.
- DefaultResult – Nem kötelező. A visszatérési érték, ha nincs igaz feltétel. If nem adja meg ezt az argumentumot, a függvény üres értéket ad vissza.
Switch( Formula, Match1, Result1 [, Match2, Result2, ... [, DefaultResult ] ] )
- Képlet - kötelező. Az egyezések kiértékeléséhez használandó képlet. A képlet csak egyszer lesz kiértékelve.
- Egyezések – kötelező. A képlet által visszaadott eredménnyel összehasonlítandó értékek. If a rendszer pontos egyezést talál, a megfelelő eredményt adja vissza.
- Eredmények - Kötelező. A megfelelő visszatérési érték, amikor a rendszer pontos egyezést talál.
- DefaultResult – Nem kötelező. If pontos egyezés nem található, ez az érték lesz visszaadva. If nem adja meg ezt az argumentumot, a függvény üres értéket ad vissza.
Példák
Értékek a képletekben
A következő példákban egy Csúszka vezérlő (a Slider1) értéke 25.
| Képlet | Ismertetés | Result |
|---|---|---|
| If( Slider1.Value = 25, "Result1" ) | A feltétel igaz, és a függvény az ennek megfelelő eredményt adja vissza. | "Eredmény1" |
| If( Slider1.Value = 25, "Result1", "Result2" ) | A feltétel igaz, és a függvény az ennek megfelelő eredményt adja vissza. | "Eredmény1" |
| If( Slider1.Value > 1000, "Result1" ) | A feltétel hamis, és nem lett megadva AlapértelmezettEredmény. | üres |
| If( Slider1.Value > 1000, "Result1", "Result2" ) | A feltétel hamis, az AlapértelmezettEredmény meg lett adva, és a rendszer vissza is adta. | "Eredmény2" |
| If( Slider1.Value = 25, "Result1", Slider1.Value > 0, "Result2" ) | Az első feltétel igaz, és a függvény ennek megfelelő eredményt ad vissza. A második feltétel is igaz, de a rendszer nem értékeli ki, mert az argumentumlistában később szerepel, mint egy feltétel igaz kiértékelésű feltétel. | "Eredmény1" |
| If( IsBlank( Slider1.Value ), "Result1", IsNumeric( Slider1.Value ), "Result2" ) | Az első feltétel hamis mert a csúszka nem üres. A második feltétel igaz, mert a csúszka értéke szám, és a rendszer ennek megfelelő eredményt ad vissza. | "Eredmény2" |
| If( Slider1.Value > 1000, "Result1", Slider1.Value > 50, "Result2", "Result3") | Az első és második feltétel hamis, meg lett adva AlapértelmezettEredmény lett megadva, és a rendszer ezt adja vissza. | "Eredmény3" |
| Switch( Slider1.Value, 25, "Result1" ) | A csúszka értéke megegyezik az első ellenőrizendő értékkel, és a rendszer ennek megfelelő eredményt ad vissza. | "Eredmény1" |
| Switch( Slider1.Value, 20, "Result1", 25, "Result2", 30, "Result3" ) | A csúszka értéke megegyezik a második ellenőrizendő értékkel, és a rendszer ennek megfelelő eredményt ad vissza. | "Eredmény2" |
| Switch( Slider1.Value, 20, "Result1", 10, "Result2", 0, "Result3", "DefaultResult" ) | A csúszka értéke nem egyezik egy ellenőrizendő értékkel sem. Az AlapértelmezettEredmény meg lett adva, ezért a rendszer ezt adja vissza. | "AlapértelmezettEredmény" |
Elágazás viselkedési képletekben
Ezekben a példákban a Keresztnév nevű szövegbeviteli vezérlőelembe beírt érték „János”.
| Képlet | Ismertetés | Result |
|---|---|---|
| If( ! IsBlank( FirstName.Text ), Navigate( Screen1, ScreenTransition.None ) ) | A feltétel igaz, ezért lefut a Navigate függvény. Használhatja az IsBlank függvényt annak megállapítására, hogy a kötelező űrlapmező ki van-e töltve. If A FirstNameüres volt, ennek a képletnek nincs hatása. |
igaz A megjelenítés a Screen1 képernyőre vált. |
| If( IsBlank( FirstName.Text ), Navigate( Screen1, ScreenTransition.None ), Back() ) | A ! operátor nélkül a feltétel hamis, így a Navigate függvény nem fut le. A Back függvény lett megadva mint AlapértelmezettEredmény, így ez a függvény lefut. |
igaz A megjelenítés visszatér arra képernyőre, amely korábban volt látható. |
| Switch( FirstName.Text, "Carlos", Navigate( Screen1, ScreenTransition.None ), "Kirstin", Navigate( Screen2, ScreenTransition.None ), "John", Navigate( Screen3, ScreenTransition.None ) | A Keresztnév.Text értékét a rendszer összehasonlítja a „Károly”, a „Krisztina” és a „János” értékkel, ebben a sorrendben. A program egyezést talált a „János” értékkel, így az alkalmazás a Screen3 képernyőre navigál. |
igaz A megjelenítés a Screen3 képernyőre vált. |
Lépésről lépésre
Adjon hozzá egy Szövegbevitel vezérlőelemet, és névként adja meg a Text1 nevet (nem ez a neve alapértelmezés szerint).
A Text1 vezérlőben írja be az 30 értéket.
Adjon hozzá egy Label vezérlőelemet, és a Szöveg tulajdonságát állítsa a következő képletre:
If( Value(Text1.Text) < 20, "Order MANY more!", Value(Text1.Text) < 40, "Order more!", Text1.Text )A Címke vezérlő a Többet rendelni! szöveget jeleníti meg, mivel a Szöveg1 értéke nagyobb mint 20, de kisebb mint 40.
A Text1 vezérlőben írja be a 15 értéket.
A Címke vezérlő a SOKKAL többet rendelni! szöveget jeleníti meg, mivel a Szöveg1 értéke kisebb mint 20.
A Text1 vezérlőben írja be a 50 értéket.
A Címke vezérlő a beírt értéket jeleníti meg, mert az nagyobb, mint 40.