שתף באמצעות


הפונקציות AddColumns‏, DropColumns‏, RenameColumns ו- ShowColumns

חל על: יישומי בד ציור זרימות שולחן עבודה יישומים מונחי-דגמים Power Platform CLI

מעצבת טבלה על-ידי הוספה, שחרור, שינוי שם ובחירה בעמודות שלה.

ניתן להשתמש בפונקציה **ForAll גם לעיצוב טבלה, על ידי החזרת טבלה של רשומות חדשות שנוצרו מעמודות קיימות.

מבט כולל

פונקציות אלה מעצבות טבלה על-ידי התאמת העמודות שלה:

  • צמצם טבלה המכילה עמודות מרובות לעמודה יחידה לשימוש עם פונקציות של עמודה יחידה, כגון Lower או Sqrt.
  • הוסף עמודה מחושבת לטבלה (לדוגמה, עמודת מחיר כולל המציגה את התוצאות של הכפלת כמות במחיר יחידה).
  • שנה שם עמודה לשם משמעותי יותר, לצורך הצגה למשתמשים או לשימוש בנוסחאות.

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

הערה

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

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

Description

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

הנוסחה מוערכת לכל רשומה בטבלה.

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

הפונקציה DropColumns אינה מכלילה עמודות מטבלה. כל העמודות האחרות נותרות ללא שינוי. DropColumns אינה כוללת עמודות ו- ShowColumns כוללת עמודות.

השתמש בפונקציה RenameColumns כדי לשנות שם של עמודה אחת או יותר בטבלה על-ידי מתן זוג ארגומנטים אחד לפחות המציין את שם העמודה אשר הטבלה מכילה (השם הישן, שברצונך להחליף) ואת שם העמודה שהטבלה אינה מכילה (השם החדש, שברצונך להשתמש בו). השם הישן מוכרח כבר להתקיים בטבלה, והשם החדש אינו יכול להתקיים. כל שם עמודה עשוי להופיע פעם אחת בלבד ברשימת הארגומנטים כשם עמודה ישן או כשם עמודה חדש. כדי לשנות שם של עמודה לשם עמודה קיים, שחרר תחילה את העמודה הקיימת עם DropColumns, או שנה את שם העמודה הקיימת שכבר נוצר על-ידי קינון פונקציית RenameColumns אחת בתוך פונקציה אחרת.

הפונקציה ShowColumns כוללת עמודות של טבלה ומשחררת את כל העמודות האחרות. באפשרותך להשתמש ב- ShowColumns כדי ליצור טבלה בעלת עמודה יחידה מתוך טבלה מרובת עמודות. ShowColumns כוללת עמודות ו- DropColumns אינה כוללת עמודות.

עבור כל הפונקציות הללו, התוצאה היא טבלה חדשה שיושם בה השינוי. הטבלה המקורית אינה משתנה. לא ניתן לשנות טבלה קיימת עם נוסחה. SharePoint,‏‏ Microsoft Dataverse,‏ SQL Server ומקורות נתונים אחרים מספקים כלים לשינוי העמודות של רשימות, טבלאות וטבלאות שלעתים מכונות בתור סכמה. הפונקציות במאמר זה משנות רק טבלת קלט, מבלי לשנות את הטבלה המקורית, לטבלת פלט לשימוש נוסף.

הארגומנטים לפונקציות אלה תומכים בהקצאה. לדוגמה, פונקציית Filter משמשת כארגומנט למשיכת חיפושים ברשומות קשורות בכל הרישומים, גם אם מקור הנתונים '[dbo].[AllListings]' מכיל מיליון שורות:

AddColumns( RealEstateAgents,
   Listings,
   Filter(  '[dbo].[AllListings]', ListingAgentName = AgentName )
)

עם זאת, הפלט של פונקציות אלה כפוף למגבלת רשומה שאינה מסוג הקצאה. בדוגמה זו מוחזרות רק 500 רשומות גם אם מקור הנתונים RealEstateAgents כולל 501 רשומות או יותר.

אם אתה משתמש ב- AddColumns בצורה כזאת, Filter צריך להפריד קריאות למקור הנתונים עבור כל אחת מהרשומות הראשונות הללו ב- RealEstateAgents, דבר שגורם להמולה ברשת. אם [dbo](.[AllListings] קטן מספיק ואינו משתנה לעתים קרובות. אתה יכול לקרוא לפונקציה Collect ב- OnStart כדי לשמור את מקור הנתונים באפליקציה שלך כאשר היא מתחילה. כאפשרות חלופית, אתה יכול לבנות מחדש את היישום שלך כך שתמשוך את הרשומות הקשורות רק כאשר המשתמש יבקש אותן.

הערה

ב- Power Apps לפני גרסה 3.24042, שמות העמודות צוינו עם מחרוזת טקסט באמצעות מרכאות כפולות, ואם מחוברים למקור נתונים הם גם צריכים להיות שמות לוגיים. לדוגמה, השם הלוגי "cr43e_name" עם מרכאות כפולות שימש במקום שם תצוגה שם ללא מרכאות. עבור מקורות נתונים של SharePoint ו-Excel המכילים שמות עמודות עם רווחים, כל רווח צוין עם "_x0020_", למשל "שם העמודה" כמו "Column_x0020_Name". אחרי גרסה זו, כל האפליקציות עודכנו אוטומטית לתחביר החדש המתואר במאמר זה.

תחביר

AddColumns( Table, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )

  • Table - נדרש. טבלה שיש לפעול בה.
  • ColumnName(s) - נדרש. שמות העמודות שיש להוסיף.
  • Formula(s)‎ - נדרש. הנוסחאות להערכה עבור כל רשומה. התוצאה מתווספת כערך העמודה החדשה המתאימה. באפשרותך להפנות לעמודות אחרות של הטבלה בנוסחה זו.

DropColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table - נדרש. טבלה שיש לפעול בה.
  • ColumnName(s) - נדרש. שמות העמודות שיש לשחרר.

RenameColumns( Table, OldColumnName1, NewColumnName1 [, OldColumnName2, NewColumnName2, ... ] )

  • Table - נדרש. טבלה שיש לפעול בה.
  • OldColumnName(s) - נדרש. שמות של עמודות לשינוי מהטבלה המקורית. רכיב זה מופיע ראשון בצמד הארגומנטים (או ראשון בכל צמד ארגומנטים אם הנוסחה כוללת יותר מצמד אחד).
  • NewColumnName - נדרש. שמות חלופיים. רכיב זה מופיע אחרון בצמד הארגומנטים (או אחרון בכל צמד ארגומנטים אם הנוסחה כוללת יותר מצמד אחד).

ShowColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table - נדרש. טבלה שיש לפעול בה.
  • ColumnName(s) - נדרש. שמות העמודות שיש לכלול.

דוגמאות

הדוגמאות במקטע זה משתמשות במקור הנתונים IceCreamSales, המכיל את הנתונים בטבלה זו:

דוגמה 'גלידה'.

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

נוסחה Description תוצאה
AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) מוסיפה עמודת הכנסות לתוצאה. עבור כל רשומה, מתבצעת הערכה של מחיר יחידה * כמות שנמכרה והתוצאה מוצבת בעמודה החדשה. תוצאה עם 'תות שדה', 'שוקולד' ו'וניל'.
DropColumns( IceCreamSales, UnitPrice ) לא כוללת את העמודה מחיר יחידה בתוצאה. השתמש בפונקציה זו כדי להוציא מהכלל עמודות, והשתמש ב- ShowColumns כדי לכלול אותן. תוצאה עם 'תות שדה', 'שוקולד' ו'וניל' בעלי עמודה QuantitySold בלבד.
ShowColumns( IceCreamSales, Flavor ) כוללת רק את העמודה טעם בתוצאה. השתמש בפונקציה זו כדי לכלול עמודות, והשתמש ב- DropColumns כדי להוציא אותן מהכלל. העמודה 'טעם' בלבד.
RenameColumns( IceCreamSales, UnitPrice, Price) משנה את שם העמודה מחיר יחידה בתוצאה. תוצאה עם 'טעם', 'מחיר' ו'הכנסות'.
RenameColumns( IceCreamSales, UnitPrice, Price, QuantitySold, Number) משנה את שם העמודות מחיר יחידה וכמות שנמכרה בתוצאה. תוצאה עם 3 IceCreams ועמודות בתור 'טעם', 'מחיר', 'הכנסות'.
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, Revenue,
UnitPrice * QuantitySold ),
UnitPrice, Price ),
Quantity )
מבצעת את השינויים הבאים בטבלה לפי הסדר, החל מהחלק הפנימי של הנוסחה:
  1. מוסיפה עמודת הכנסות לפי החישוב לכל רשומה של מחיר יחידה * כמות.
  2. משנה את שם מחיר יחידה למחיר.
  3. לא כוללת את העמודה כמות.
הסדר חשוב, לדוגמה, לא ניתן לחשב עם מחיר יחידה לאחר ששם העמודה השתנה.
דוגמה ל- IceCream למחיר יחידה.

שלב אחר שלב

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

  1. צור אוסף על-ידי הוספת פקד Button והגדרת מאפיין OnSelect שלו לנוסחה זו:

    ClearCollect( IceCreamSales,
       Table(
           { Flavor: "Strawberry", UnitPrice: 1.99, QuantitySold: 20 },
           { Flavor: "Chocolate", UnitPrice: 2.99, QuantitySold: 45 },
           { Flavor: "Vanilla", UnitPrice: 1.50, QuantitySold: 35 }
       )
    )
    
  2. הפעל את הנוסחה על-ידי בחירת הלחצן תוך כדי לחיצה על מקש Alt.

  3. הוסף פקד Button‎ שני, הגדר את מאפיין OnSelect שלו לנוסחה זו והפעל אותו:

    ClearCollect( FirstExample,
       AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold )
    )
    
  4. בתפריט קובץ, בחר אוספים ולאחר מכן בחר IceCreamSales כדי להציג את האוסף.

    כפי שמראה האיור, הנוסחה השנייה לא שינתה את האוסף. הפונקציה AddColumns השתמשה ב- IceCreamSales כארגומנט לקריאה בלבד; הפונקציה לא שינתה את הטבלה שאליה מתייחס הארגומנט.

    מציג אוסף המציג שלוש רשומות של האוסף Ice Cream Sales שאינו כולל עמודת 'הכנסות'.

  5. בחר דוגמה ראשונה.

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

    מציג אוסף מראה שלוש רשומות של האוסף First Example שאינו כולל עמודת 'הכנסות' חדשה.

מיפוי עמודות ברכיב

ראה מיפוי עמודות.