Share via


הפונקציה UpdateContext

חל על: יישומי בד ציור

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

מבט כולל

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

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

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

תיאור

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

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

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

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

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

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

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

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

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

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

תחביר

UpdateContext( UpdateRecord )

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

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

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

דוגמאות

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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