مشاركة عبر


AddColumns RenameColumnsالدالات DropColumnsو ShowColumns

ينطبق على: تعمل تطبيقات Canvas Copilot Studio Desktop على تدفقات التطبيقات المستندة إلى النموذج لوظائف Power Platform CLI Dataverse

تشكل جدولا أو سجلا بإضافة أعمدةها وإسقاطها وإعادة تسميتها وتحديدها.

يمكن أيضا استخدام الدالة ForAll لتشكيل جدول، عن طريق إرجاع جدول من السجلات الجديدة التي تم إنشاؤها من الأعمدة الموجودة.

نظرة عامة‬

تشكل هذه الدالات جدولا أو سجلا عن طريق ضبط أعمدةه:

  • قم بتقليل جدول أو سجل يحتوي على أعمدة متعددة وصولا إلى عمود واحد للاستخدام مع دالات العمود الواحد، مثل Lower أو Sqrt.
  • أضف عمودا محسوبا إلى جدول أو سجل (على سبيل المثال، عمود السعر الإجمالي الذي يعرض نتائج ضرب الكمية في سعر الوحدة).
  • قم باعاده تسميه أحد الاعمده إلى اسم أكثر أفاده ، ليتم عرضه للمستخدمين أو للاستخدام في الصيغ.

جدول عبارة عن قيمة في Power Apps، تمامًا مثل سلسلة أو رقم. يمكنك تحديد جدول كوسيطة لصيغة، ويمكن أن ترجع الوظائف جدول نتيجة لذلك.

‏‫ملاحظة‬

لا تعدل الوظائف التي يقوم موضوع تصف الجدول الأصلي. وبدلا من ذلك ، فانهم ياخذون هذا الجدول كوسيط ويرجع جدول جديد مع تطبيق التحويل. لمزيد من المعلومات، راجع التعامل مع الجداول

لا يمكنك تعديل أعمدة مصدر البيانات وذلك باستخدام هاتين الوظيفتين. يجب تعديل البيانات الموجودة في مصدرها. يمكنك أضافه أعمدة إلى مجموعة باستخدام وظيفة Collect. لمزيد من المعلومات، راجع التعامل مع مصادر البيانات

الوصف

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 بهذه الطريقة، يجب أن تقوم عامل التصفية بإجراء مكالمات منفصلة إلى مصدر البيانات لكل من هذه السجلات الأولى في RealEstateAgents، مما يؤدي إلى الكثير من الدردشة على الشبكة. في حالة [dbo](.[AllListings] صغير بما يكفي ولا يتغير كثيرا. يمكنك استدعاء وظيفة " تجميع" في OnStart مصدر البيانات التطبيق عند بدء تشغيل التطبيق. وكبديل لذلك، يمكنك أعاده هيكله تطبيقك بحيث تقوم بالسحب في السجلات المرتبطة فقط عند قيام المستخدم بالسؤال عنها.

‏‫ملاحظة‬

قبل Power Apps الإصدار 3.24042، كانت أسماء الأعمدة محددة بسلسلة نصية باستخدام علامات اقتباس مزدوجة، وإذا كانت مرتبطة مصدر البيانات فهي تحتاج أيضا إلى أسماء منطقية. على سبيل المثال، استخدم الاسم المنطقي "cr43e_name"مع علامات اقتباس مزدوجة بدلا من اسم العرض Name بدون عروض أسعار. بالنسبة SharePoint لمصادر بيانات Excel التي تحتوي على أسماء أعمدة ذات المسافات، يتم تحديد كل مسافة باستخدام "_x0020_"، على سبيل المثال، "اسم العمود" Column_x0020_Name". بعد هذا الإصدار، يتم تحديث كافة التطبيقات تلقائيًا إلى الجملة الجديدة الموضحة في هذه المقالة.

بناء الجملة

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

  • TableOrRecord - مطلوب. جدول أو سجل للعمل عليه.
  • أسماء الأعمدة- مطلوب. أسماء الأعمدة المراد إضافتها.
  • الصيغ - مطلوب. الصيغ التي سيتم تقييمها لكل سجل. تتم أضافه النتيجة كقيمه العمود الجديد المقابل. يمكنك الرجوع إلى أعمدة أخرى من الجدول أو السجل في هذه الصيغة.

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

  • TableOrRecord - مطلوب. جدول أو سجل للعمل عليه.
  • أسماء الأعمدة- مطلوب. أسماء الأعمدة المراد إسقاطها.

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

  • TableOrRecord - مطلوب. جدول أو سجل للعمل عليه.
  • أسماء الأعمدة القديمة- مطلوب. أسماء الأعمدة المراد إعادة تسميتها من الجدول أو السجل الأصلي. يظهر هذا العنصر أولا في زوج الوسيطات (أو أول في كل زوج وسائط إذا كانت الصيغة تتضمن أكثر من زوج واحد).
  • أسماء الأعمدة الجديدة- مطلوب. أسماء بديلة. يظهر هذا العنصر أخيرًا في زوج الوسيطات (أو أخيرًا في كل زوج وسائط إذا كانت الصيغة تتضمن أكثر من زوج واحد).

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

  • TableOrRecord - مطلوب. جدول أو سجل للعمل عليه.
  • أسماء الأعمدة- مطلوب. أسماء الأعمدة المراد تضمينها.

الأمثلة

تستخدم الأمثلة الواردة في القسم مصدر بيانات IceCreamSales، الذي يحتوي على البيانات في هذا الجدول:

مثال الآيس كريم.

لا يمكن لأي من هذه الامثله تعديل مصدر بيانات IceCreamSales. تعمل كل وظيفة علي تحويل قيمه المصدر البيانات كجدول وترجع هذه القيمة كنتيجة.

الصيغة الوصف نتيجة
AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) إضافة عمود الإيراد إلى النتيجة. بالنسبة لكل سجل، يتم تقييم UnitPrice * QuantitySold، ويتم وضع النتيجة في العمود الجديد. ينتج مع الفراولة والشوكولاتة والفانيليا.
DropColumns( IceCreamSales, UnitPrice ) استبعاد عمود UnitPrice من النتيجة. استخدم هذه الدالة لاستبعاد الأعمدة، واستخدم ShowColumns لتضمينها. النتيجة مع الفراولة والشوكولاتة والفانيليا التي تحتوي فقط على عمود الكمية المباعة.
ShowColumns( IceCreamSales, Flavor ) تضمين فقط عمود Flavor في النتيجة. استخدم هذه الدالة تتضمن أعمدة، واستخدم DropColumns لاستبعادها. فقط عمود النكهة.
RenameColumns(IceCreamSales, UnitPrice, Price) إعادة تسمية عمود UnitPrice في النتيجة. ينتج عن النكهة والسعر والإيرادات.
RenameColumns( IceCreamSales, UnitPrice, Price, QuantitySold, Number) إعادة تسمية عمودي UnitPrice وQuantitySold في النتيجة. النتيجة مع 3 آيس كريم وأعمدة مثل النكهة والسعر والإيرادات.
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, Revenue,
UnitPrice * QuantitySold )،
سعر الوحدة، السعر)،
"الكمية" )
تنفيذ عمليات التحويل الخاصة بالجدول التالية بالترتيب، بدءًا من داخل الصيغة:
  1. إضافة عمود Revenue استناداً إلى حساب كل سجل لـ UnitPrice * Quantity.
  2. إعادة تسمية سعر الوحدة إلى السعر.
  3. استبعاد عمود الكمية.
الترتيب مهم، على سبيل المثال لا يمكننا الحساب به UnitPrice بعد إعادة تسميته.
مثال آيس كريم لسعر الوحدة.

خطوة بخطوة

لنجرب بعض الامثله السابقة في هذا الموضوع.

  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 كوسيطة للقراءة فقط؛ لم تقم الدالة بتعديل الجدول الذي تشير إليه هذه الوسيطة.

    عارض المجموعة يظهر ثلاثه سجلات لمجموعه إيس كريم المبيعات التي لا تحتوي علي عمود

  5. حدد FirstExample.

    ونظرا لان هذا الرسم يظهر ، ترجع الصيغة الثانية جدولا جديدا بالعمود المضاف. التقطت وظيفة ClearCollect الجدول الجديد في مجموعة FirstExample، مع أضافه شيء إلى الجدول الأصلي كما هو موضح من خلال الوظيفة دون تعديل المصدر:

    عارض المجموعة يظهر ثلاثه سجلات لمجموعه المثال الأول التي تتضمن عمود إيراد جديد.

تعيين الأعمدة في مكون

راجع تعيين الأعمدة.