שתף דרך


UpdateContext פונקציה

חל על: אפליקציות קנבס

יוצרת או מעדכנת משתני הקשר של המסך הנוכחי.

מבט כולל

השתמש בפונקציה UpdateContext כדי ליצור משתנה הקשר, המכיל באופן זמני פיסת מידע, כגון מספר הפעמים שהמשתמש בחר לחצן או תוצאה של פעולת נתונים.

הטווח של משתני הקשר מיועד למסך, כלומר לא ניתן לבנות נוסחה המפנה למשתנה הקשר במסך אחר. אם השתמשת בכלי תיכנות אחר, ניתן לחשוב על משתנה הקשר כמשהו הדומה למשתנה מקומי. השתמש בפונקציה Set כדי לעבוד עם משתנים כלליים הזמינים ביישום שלך.

Power Apps מבוססים על נוסחאות המבצעות חישוב מחדש באופן אוטומטי כאשר המשתמש מקיים אינטראקציה עם יישום. משתני הקשר אינם מספקים יתרון זה ויכולים להפוך את היישום שלך לקשה יותר ליצירה ולהבנה. לפני שתשתמש במשתנה הקשר, סקור את הנושא עבודה עם משתנים.

תיאור

כדי ליצור או לעדכן משתנה הקשר, העברת רשומה בודדת לפונקציה UpdateContext . בכל רשומה, ציין את שם העמודה, המגדירה או מתאימה לשם המשתנה, ואת הערך שאליו ברצונך להגדיר משתנה זה.

  • אם תציין שם של משתנה שהגדדרת בעבר, UpdateContext תגדיר את ערך המשתנה לערך שתציין.
  • אם תציין שם של משתנה שעדיין לא קיים, UpdateContext תיצור משתנה בשם זה ותגדיר את הערך של משתנה זה לערך שתציין.
  • אם הגדרת בעבר משתנה אך לא תציין אותו בנוסחה UpdateContext מסוימת זו, הערך שלו יישאר זהה.

משתני הקשר נוצרים באופן משתמע באמצעות הפונקציה UpdateContext או Navigate. אין צורך בהצהרה מפורשת. אם תסיר את כל ההפניות UpdateContextונווט למשתנה הקשר, משתנה הקשר זה יפסיק להתקיים. כדי לנקות משתנה, הגדר את ערכו לתוצאה של הפונקציה Blank.

באפשרותך לראות את ערכי המשתנים, את ההגדרות ואת השימושים עם התצוגה 'משתנים' תחת התפריט 'קובץ' בסביבת העריכה.

עליך להפנות למשתנה הקשר בנוסחה באמצעות שם העמודה של המשתנה. לדוגמה, UpdateContext( { ShowLogo: true } ) יוצר משתנה הקשר בשם ShowLogo ומגדיר את הערך שלו ל- True. באפשרותך להשתמש לאחר מכן במשתנה הקשר זה באמצעות השם ShowLogo בנוסחה. באפשרותך לכתוב את ShowLogo כנוסחה עבור המאפיין Visible‎ של פקד תמונה ולהציג או להסתיר פקד זה בהתבסס על העובדה שערך משתנה ההקשר הוא true או false.

כפי שהדוגמאות בהמשך הנושא מציגות, משתני הקשר יכולים לשמור מספר סוגים של מידע, לרבות הסוגים הבאים:

  • ערך יחיד
  • רשומה
  • טבלה
  • הפניה לאובייקט
  • כל תוצאה מנוסחה

משתנה הקשר שומר על הערך שלו עד שהיישום נסגר. אם תגדיר משתנה הקשר ותגדיר את ערכו במסך מסוים, מידע זה יישאר ללא שינוי גם אם המשתמש יעבור למסך אחר. לאחר סגירת היישום, ערך משתנה ההקשר יאבד ויש ליצור אותו מחדש כאשר היישום ייטען שוב.

הטווח של כל משתנה הקשר מיועד למסך. אם ברצונך להגדיר משתנה הקשר במסך אחד ולשנות משתנה זה ממסך אחר, עליך לבנות נוסחה המבוססת על הפונקציה Navigate. לחלופין, השתמש במשתנה כללי.

UpdateContext אין ערך החזרה, ובאפשרותך להשתמש בו רק בתוך נוסחת אופן פעולה.

תחביר

UpdateContext( UpdateRecord )

  • UpdateRecord – נדרש. רשומה המכילה את השם של עמודה אחת וערך אחד לפחות עבור עמודה זו. משתנה הקשר נוצר או מעודכן עבור כל עמודה וערך שאתה מציין.

UpdateContext( { ContextVariable1: Value1 [, ContextVariable2: Value2 [, ... ] ] } )

  • ContextVariable1 - חובה. שם משתנה הקשר ליצירה או עדכון.
  • ערך1 - חובה. הערך שיש להקצות למשתנה ההקשר.
  • ContextVariable2: Value2, ... - אופציונלי. משתני הקשר נוספים ליצירה או עדכון והערכים שלהם.

דוגמאות

נוסחה תיאור תוצאה
UpdateContext( { מונה: 1 } ) יוצר או משנה את משתנה ההקשר מונה, ומגדיר את ערכו ל- 1. למונה יש את הערך 1. באפשרותך להפנות למשתנה זה באמצעות השם מונה בנוסחה.
UpdateContext( { מונה: 2 } ) מגדיר את הערך של משתנה ההקשר מונה מהדוגמה הקודמת ל- 2. ל-Counter יש את הערך 2.
UpdateContext( { Name: "Lily", Score: 10 } ) יוצר או משנה את משתני ההקשר שם וניקוד, ומגדיר את הערכים שלהם לשירה ו- 10 בהתאמה. לשם יש את הערך לילי, ול ציון יש את הערך 10.
UpdateContext( { Person: { Name: "Milton", Address: "1 Main St" } } ) יוצר או משנה את משתנה ההקשר אדם, ומגדיר את ערכו לרשומה. הרשומה מכילה שתי עמודות בשם שם וכתובת. הערך של העמודה שם הוא איתי והערך של העמודה כתובת הוא רחוב צה"ל 1. לאדם יש את הערך של record { שם: "Milton", כתובת: "1 Main St" } }.

הפנה לרשומה זו בשלמותה עם השם אדם, או הפנה לעמודה בודדת של רשומה זו עם Person.Name או Person.Address.
UpdateContext( { Person: Patch( Person, {Address: "2 Main St" } ) } ) עובד עם הפונקציה Patch כדי לעדכן את משתנה ההקשר אדם על-ידי הגדרת הערך של העמודה כתובת לרחוב צה"ל 2. לאדם יש כעת את הערך של record { שם: "Milton", כתובת: "2 Main St" } }.

דוגמה שלב אחר שלב 1

  1. תן למסך ברירת המחדל את השם מקור, הוסף מסך נוסף וקרא לו יעד.

  2. במסך מקור, הוסף שני לחצנים, והגדר את מאפייני Text‎ שלהם כך שאחד יציין אנגלית והשני יציין ספרדית.

  3. הגדר את המאפיין OnSelect של לחצן אנגלית לביטוי זה:
    ניווט (Target, ScreenTransition.Fade, {שפה:"אנגלית"})

  4. הגדר את המאפיין OnSelect של לחצן ספרדית לביטוי זה:
    ניווט (Target, ScreenTransition.Fade, {שפה:"ספרדית"})

  5. במסך יעד, הוסף תווית והגדר את מאפיין Text‎ שלה לביטוי זה:
    If(Language="English", "Hello!", "Hola!")

  6. במסך יעד, בחר צורות בכרטיסיה הוספה ולאחר מכן בחר את החץ 'הקודם'.

  7. הגדר את המאפיין OnSelect של החץ 'הקודם' לנוסחה הבאה:
    ניווט (מקור, ScreenTransition.Fade)

  8. מהמסך מקור, הקש F5, ולאחר מכן בחר בלחצן עבור כל שפה.

    במסך יעד, התווית מופיעה בשפה המתאימה ללחצן שבחרת.

  9. בחר בחץ 'הקודם' כדי לחזור אל המסך מקור ולאחר מכן בחר בלחצן עבור השפה השנייה.

    במסך יעד, התווית מופיעה בשפה המתאימה ללחצן שבחרת.

  10. הקש Esc כדי לחזור לסביבת העבודה המוגדרת כברירת מחדל.

דוגמה שלב אחר שלב 2

  1. פתח את יישום בד הציור שבו ברצונך להשתמש בנוסחה זו.
  2. הוסף מסך ריק חדש על-ידי בחירת מסך חדש עבור סרגל הפקודות.
  3. הוסף לחצן, והגדר את מאפיין OnSelect שלו לנוסחה זו:
    UpdateContext( { Name: "Lily", Score: 10 } )