הערה
גישה לעמוד זה דורשת אישור. אתה יכול לנסות להיכנס או לשנות תיקיות.
גישה לעמוד זה דורשת אישור. אתה יכול לנסות לשנות מדריכים.
חל על: אפליקציות Canvas
Studio Copilot Studio
זורמות
עמודות נוסחאות Dataverse
אפליקציות מונחות דגמים Power Platform CLI
Dataverse פונקציות
Power Pages
קובע אם תנאי כלשהו בערכה הוא True (If) או תוצאת נוסחה התואמת לערך כלשהו בערכה (Switch) ולאחר מכן מחזירה תוצאה או מבצעת פעולה.
תיאור
הפונקציה If בודקת תנאי אחד או יותר עד לתוצאה True . If תוצאה כזו נמצאת, מוחזר ערך תואם. If לא נמצאה תוצאה כזו, מוחזר ערך ברירת מחדל. בשני המקרים, הערך שמוחזר עשוי להיות מחרוזת להצגה, נוסחה להערכה או צורה אחרת של תוצאה.
הפונקציה Switch מעריכה נוסחה וקובעת אם התוצאה תואמת לערך כלשהו ברצף שאתה מציין. If נמצאה התאמה, מוחזר ערך מתאים. If לא נמצאה התאמה, מוחזר ערך ברירת מחדל. בשני המקרים, הערך שמוחזר עשוי להיות מחרוזת להצגה, נוסחה להערכה או צורה אחרת של תוצאה.
If ודומים Switch מאוד, אך עליך להשתמש בפונקציה הטובה ביותר עבור המצב שלך:
- השתמש If כדי להעריך תנאי יחיד. התחביר הנפוץ ביותר עבור פונקציה זו הוא If( תנאי, ThenResult, DefaultResult ), המספק את התחביר הנפוץ "if ... אז ... אז …" הנפוצה שרואים בכלי תיכנות אחרים.
- השתמש If כדי להעריך תנאים לא קשורים מרובים. ב- Power Apps (בניגוד ל- Microsoft Excel), באפשרותך לציין תנאים מרובים מבלי לקנן If נוסחאות.
- השתמש Switch כדי להעריך תנאי יחיד כנגד התאמות אפשריות מרובות. באפשרותך גם להשתמש במקרה If זה, אך תצטרך לחזור על הנוסחה עבור כל התאמה אפשרית.
באפשרותך להשתמש בשתי הפונקציות בנוסחאות של אופן פעולה כדי להסתעף בין שתי פעולות או יותר. רק הסתעפות אחת תגרום פעולה. התנאים וההתאמות מוערכים לפי הסדר, והם מפסיקים אם תנאי הוא true או אם נמצאת התאמה.
ריק מוחזר אם אין תנאים נכונים, לא נמצאו התאמות ואינך מציין תוצאת ברירת מחדל.
תחביר
If( תנאי, ThenResult [, DefaultResult ] )
If( Condition1, ThenResult1 [, Condition2, ThenResult2, ... [ , DefaultResult ] ] )
- תנאים - חובה. נוסחאות לבדיקה עבור תנאי שהוא true. נוסחאות כאלה מכילות בדרך כלל אופרטורים של השוואה (כגון <, >, ו- =) ופונקציות בדיקה כגון IsBlank ו- IsEmpty.
- ThenResults - חובה. הערך המתאים להחזרה עבור תנאי שמוערך כ- true.
- DefaultResult - אופציונלי. הערך שיש להחזיר אם שום תנאי אינו מוערך כ- true. If לא תציין ארגומנט זה, יוחזר ערך ריק.
Switch( Formula, Match1, Result1 [, Match2, Result2, ... [, DefaultResult ] ] )
- נוסחה - חובה. נוסחה שיש להעריך עבור התאמות. נוסחה זו מוערכת פעם אחת בלבד.
- התאמות - חובה. ערכים להשוואה עם התוצאה מנוסחה. If נמצאה התאמה מדויקת, התוצאה המתאימה מוחזרת.
- תוצאות - חובה. הערך המתאים להחזרה כאשר נמצאת התאמה מדויקת.
- DefaultResult - אופציונלי. If לא נמצאה התאמה מדויקת, ערך זה מוחזר. If לא תציין ארגומנט זה, יוחזר ערך ריק.
דוגמאות
ערכים בנוסחאות
בדוגמאות הבאות, פקד Slider (נקרא Slider1) הוא בעל ערך של 25.
| נוסחה | תיאור | תוצאה |
|---|---|---|
| If( Slider1.Value = 25, "Result1" ) | התנאי הוא true, והתוצאה התואמת מוחזרת. | "Result1" |
| If( Slider1.Value = 25, "Result1", "Result2" ) | התנאי הוא true, והתוצאה התואמת מוחזרת. | "Result1" |
| If( Slider1.Value > 1000, "Result1" ) | התנאי הוא false, ולא סופק DefaultResult. | רֵיק |
| If( Slider1.Value > 1000, "Result1", "Result2" ) | התנאי הוא false, סופק DefaultResult והוא מוחזר. | "Result2" |
| If( Slider1.Value = 25, "Result1", Slider1.Value > 0, "Result2" ) | התנאי הראשון הוא true, והתוצאה התואמת מוחזרת. התנאי השני גם הוא true, אבל הוא אינו מוערך משום שהוא מופיע מאוחר יותר ברשימת הארגומנטים לעומת תנאי המוערך ל- true. | "Result1" |
| If( IsBlank( Slider1.Value ), "Result1", IsNumeric( Slider1.Value ), "Result2" ) | התנאי הראשון הוא false משום שהמחוון אינו ריק. התנאי השני הוא true משום שערך המחוון הוא מספר, והתוצאה התואמת מוחזרת. | "Result2" |
| If( Slider1.Value > 1000, "Result1", Slider1.Value > 50, "Result2", "Result3") | הן התנאי הראשון והן התנאי השני הם false, סופק DefaultResult והוא מוחזר. | "Result3" |
| Switch( Slider1.Value, 25, "Result1" ) | ערך המחוון תואם לערך הראשון שיש לבדוק והתוצאה המתאימה מוחזרת. | "Result1" |
| Switch( Slider1.Value, 20, "Result1", 25, "Result2", 30, "Result3" ) | ערך המחוון תואם לערך השני שיש לבדוק והתוצאה המתאימה מוחזרת. | "Result2" |
| Switch( Slider1.Value, 20, "Result1", 10, "Result2", 0, "Result3", "DefaultResult" ) | ערך המחוון אינו תואם לערך כלשהו שיש לבדוק. סופק DefaultResult ולכן הוא מוחזר. | "DefaultResult" |
הסתעפות בנוסחאות של אופן פעולה
בדוגמאות אלה, פקד Text input בשם שם פרטי הוא בעל הערך "דוד" המוקלד בתוכו.
| נוסחה | תיאור | תוצאה |
|---|---|---|
| If( ! IsBlank( FirstName.Text ), נווט( Screen1, ScreenTransition.None ) | התנאי הוא true, ולכן הפונקציה Navigate פועלת. באפשרותך להשתמש בפונקציה IsBlank כדי לבדוק אם שדה טופס נדרש התמלא. If FirstName היה ריק, לנוסחה זו לא היתה כל השפעה. |
נָכוֹן התצוגה משתנה ל- Screen1. |
| If( IsBlank( FirstName.Text ), Navigate( Screen1, ScreenTransition.None ), Back() ) | ללא האופרטור !,התנאי הוא false, ולכן הפונקציה Navigate אינה פועלת. הפונקציה Back סופקה כ- DefaultResult, ולכן היא פועלת. |
נָכוֹן התצוגה חוזרת למסך שהוצג בעבר. |
| Switch( FirstName.Text, "Carlos", Navigate( Screen1, ScreenTransition.None ), "Kirstin", Navigate( Screen2, ScreenTransition.None ), "John", Navigate( Screen3, ScreenTransition.None ) | הערך של FirstName.Text מושווה ל"ינון", "דורית" ו"דוד", בסדר הזה. נמצאת התאמה ל"דוד", ולכן היישום מנווט אל Screen3. |
נָכוֹן התצוגה משתנה ל- Screen3. |
שלב אחר שלב
הוסף פקד Text input וקרא לו Text1 אם הוא לא נקרא כך כברירת מחדל.
ב- Text1, הקלד 30.
הוסף פקד Label והגדר את מאפיין Text שלו לנוסחה זו:
If( Value(Text1.Text) < 20, "Order MANY more!", Value(Text1.Text) < 40, "Order more!", Text1.Text )הפקד של התווית מציג הזמינו עוד! מכיוון שהערך של Text1 גדול מ- 20 אך קטן מ- 40.
ב- Text1, הקלד 15.
הפקד של התווית מציג הזמינו עוד הרבה! מכיוון שהערך של Text1 קטן מ- 20.
ב- Text1, הקלד 50.
הפקד Label מציג את הערך שהקלדת משום שהוא גדול מ- 40.