إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: Azure Logic Apps (الاستهلاك + قياسي)
بالنسبة إلى تعريفات سير العمل في Azure Logic Apps وPower Automate، تحصل بعض التعبيرات على قيمها من إجراءات وقت التشغيل التي يمكن ألا تكون موجودة بعد عند بدء تشغيل سير العمل. للإشارة إلى القيم الموجودة في هذه التعبيرات أو معالجتها، يمكنك استخدام دالات التعبير التي توفرها لغة تعريف سير العمل.
Note
ينطبق هذا الدليل المرجعي على كل من Azure Logic Apps وPower Automate، ولكنه موجود في وثائق Azure Logic Apps. على الرغم من أن الدليل يشير بشكل خاص إلى مهام سير عمل التطبيق المنطقي، تعمل هذه الوظائف لكل من التدفقات في Power Automate ومهام سير العمل في Azure Logic Apps. لمزيد من المعلومات حول الوظائف والتعبيرات في Power Automate، راجع استخدام التعبيرات في الشروط.
على سبيل المثال، يمكنك حساب القيم باستخدام دالات رياضية، مثل الدالة add() عندما تريد المجموع من أعداد صحيحة أو حرة. فيما يلي أمثلة أخرى على المهام التي بإمكانك القيام بها باستخدام الدالات:
| Task | بناء جملة الدالة | Result |
|---|---|---|
| إرجاع سلسلة بتنسيق أحرف صغيرة. | toLower ('<نص>') على سبيل المثال: toLower('Hello') |
"hello" |
| قم بإرجاع معرّف فريد عمومي (GUID). | guid() | "c2ecc88d-88c8-4096-912c-d6f2e2b138ce" |
للعثور على الدالات استنادًا إلى الغرض العام منها، راجع الجداول الموضحة أدناه. أو، للحصول على معلومات مفصلة حول كل دالة، راجع القائمة الأبجدية.
الدالات في التعبيرات
لإظهار كيفية استخدام دالة في تعبير، يوضح هذا المثال كيف يمكنك الحصول على القيمة من المعلمة customerName وتعيين تلك القيمة إلى accountName الخاصية باستخدام الدالة parameters() في تعبير:
"accountName": "@parameters('customerName')"
فيما يلي بعض الطرق العامة الأخرى التي بإمكانك من خلالها استخدام الدالات في التعبيرات:
| Task | بناء جملة الدالة في تعبير |
|---|---|
| تطبيق العمل مع عنصر عن طريق تمرير هذا العنصر إلى دالة. | "@<functionName>(<item>)" |
1. احصل على قيمة parameterName باستخدام الدالة المتداخلة parameters() . 2. تنفيذ العمل مع النتيجة عن طريق تمرير تلك القيمة إلى functionName. |
"@<functionName>(parameters('<parameterName>'))" |
| 1. الحصول على النتيجة من الدالة الداخلية المتداخلة functionName. 2. مرر النتيجة إلى الدالة الخارجية functionName2. |
"@<functionName2>(<functionName>(<item>))" |
| 1. الحصول على النتيجة من functionName. 2. نظرا لأن النتيجة هي كائن مع خاصية propertyName، احصل على قيمة هذه الخاصية. |
"@<functionName>(<item>).<اسم الخاصية>" |
على سبيل المثال، من الممكن أن تأخذ الدالة concat() قيمتين أو أكثر من قيم السلسلة كمعلمات. تجمع هذه الدالة بين هذه السلاسل في سلسلة واحدة. يمكنك إما تمرير القيم الحرفية للسلسلة، على سبيل المثال، «Sophia» و«Owen» حتى تحصل على سلسلة مجمعة، «SophiaOwen»:
"customerName": "@concat('Sophia', 'Owen')"
أو بإمكانك الحصول على قيم سلسلة من المعلمات. يستخدم هذا المثال الدالة parameters() في كل معلمة concat() والمعلمات firstName وlastName. ثم تمرر السلاسل الناتجة إلى الدالة concat() بحيث تحصل على سلسلة مدمجة، على سبيل المثال، «SophiaOwen»:
"customerName": "@concat(parameters('firstName'), parameters('lastName'))"
في كلتا الحالتين، يعين كلا المثالين النتيجة إلى الخاصية customerName.
اعتبارات لاستخدام الدالات
لا يقوم المصمم بتقييم تعبيرات وقت التشغيل التي تستخدم كمعلمات دالة في وقت التصميم. يتطلب المصمم إمكانية تقييم جميع التعبيرات بشكل كامل في وقت التصميم.
يتم تقييم معلمات الدالة من اليسار إلى اليمين.
في بناء جملة تعريفات المعلمة، علامة الاستفهام (؟) التي تظهر بعد المعلمة تعني أن المعلمة اختيارية. على سبيل المثال، راجع getFutureTime().
تتطلب تعبيرات الدالات التي تظهر مضمنة مع نص عادي إحاطة أقواس متعرجة ({}) لاستخدام تنسيق التعبير المستوفي القيم بدلاً من ذلك. يساعد هذا التنسيق في تجنب مشاكل التحليل. في حالة عدم ظهور تعبير الدالة مضمنًا مع نص عادي، فلا يلزم وجود أقواس متعرجة.
يوضح المثال التالي بناء الجملة الصحيح وغير الصحيح:
صحيح:
"<text>/@{<function-name>('<parameter-name>')}/<text>"غير صحيح:
"<text>/@<function-name>('<parameter-name>')/<text>"موافق:
"@<function-name>('<parameter-name>')"
تنظم الأقسام التالية الدالات بناء على الغرض العام منها، أو يمكنك استعراض هذه الدالات بترتيب أبجدي.
دالات السلسلة
للعمل مع السلاسل، يمكنك استخدام دالات السلسلة هذه وكذلك بعض دالات المجموعة. تعمل دالات السلسلة فقط على السلاسل.
| دالة السلسلة | Task |
|---|---|
| chunk | تقسيم سلسلة أو مجموعة إلى مجموعات متساوية الطول. |
| concat | ضم سلسلتين أو أكثر، ثم إرجاع السلسلة المدمجة. |
| endsWith | التحقق مما إذا كانت سلسلة تنتهي بالسلسلة الفرعية المحددة. |
| formatNumber | إرجاع الرقم كسلسلة بناءً على التنسيق المحدد |
| guid | إنشاء معرف فريد عمومي (GUID) كسلسلة. |
| indexOf | إرجاع موضع البداية لسلسلة فرعية. |
| isFloat | إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة. |
| isInt | إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن عدد صحيح. |
| lastIndexOf | إرجاع موضع البداية لآخر تكرار لسلسة فرعية. |
| length | إرجاع عدد العناصر في سلسلة أو مصفوفة. |
| nthIndexOf | إرجاع موضع البداية أو قيمة الفهرس حيث يظهر التكرار nلسلسلة فرعية في سلسلة. |
| replace | استبدال سلسلة فرعية بالسلسلة المحددة، ثم إرجاع السلسلة المحدثة. |
| slice | أرجع سلسلة فرعية بتحديد موضع أو قيمة البداية والنهاية. راجع أيضا السلسلة الفرعية. |
| split | إرجاع مصفوفة تحتوي على سلاسل فرعية مفصولة بفاصلات من سلسلة أكبر استناداً إلى حرف محدد معين في السلسلة الأصلية. |
| startsWith | تحقق مما إذا كانت سلسلة تبدأ بسلسلة فرعية معينة. |
| substring | إرجاع أحرف من سلسلة، بدءاً من الموضع المحدد. انظر أيضا شريحة. |
| toLower | إرجاع سلسلة بتنسيق أحرف صغيرة. |
| toUpper | إرجاع سلسلة بتنسيق أحرف كبيرة. |
| trim | إزالة المسافة البيضاء البادئة والزائدة من سلسلة، ثم إرجاع السلسلة المحدثة. |
دالات التحصيل
للعمل مع المجموعات، والصفائف عموماً، والسلاسل، والقواميس أحياناً، يمكنك استخدام دالات الجمع هذه.
| دالة المجموعة | Task |
|---|---|
| chunk | تقسيم سلسلة أو مجموعة إلى مجموعات متساوية الطول. |
| contains | التحقق مما إذا كانت المجموعة تحتوي على عنصر معين. |
| empty | التحقق مما إذا كانت المجموعة فارغة أم لا. |
| first | إرجاع العنصر الأول من المجموعة. |
| intersection | إرجاع مجموعة تحتوي على العناصر الشائعة فقط عبر المجموعات المحددة. |
| item | في حالة ظهور هذه الدالة داخل إجراء متكرر في صفيف، فأرجع العنصر الحالي في الصفيف أثناء التكرار الحالي للإجراء. |
| join | إرجاع سلسلة تحتوي على كافة العناصر من صفيف، مفصولة بالحرف المحدد. |
| last | إرجاع العنصر الأخير من مجموعة. |
| length | إرجاع عدد العناصر في سلسلة أو مصفوفة. |
| reverse | عكس ترتيب العناصر في صفيف. |
| skip | إزالة العناصر من مقدمة المجموعة، وإعادة جميع العناصر الأخرى. |
| sort | فرز العناصر في مجموعة. |
| take | إرجاع العناصر من مقدمة المجموعة. |
| union | إرجاع مجموعة تحتوي على كافة العناصر من المجموعات المحددة. |
دالات المقارنة المنطقية
للعمل مع الشروط، ومقارنة القيم ونتائج التعبير، أو تقييم أنواع مختلفة من المنطق، يمكنك استخدام دالات المقارنة المنطقية هذه. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
Note
في حالة استخدامك دالات أو شروط منطقية لمقارنة القيم، تحول القيم الخالية إلى قيم سلسلة فارغة (""). يختلف سلوك الشروط عند المقارنة بسلسلة فارغة بدلاً من قيمة خالية. لمزيد من المعلومات، راجع الدالة string().
| دالة المقارنة المنطقية | Task |
|---|---|
| and | التحقق مما إذا كانت جميع التعبيرات صحيحة. |
| equals | التحقق مما إذا كانت كلتا القيمتين متساويتين. |
| greater | التحقق مما إذا كانت القيمة الأولى أكبر من القيمة الثانية. |
| greaterOrEquals | التحقق مما إذا كانت القيمة الأولى أكبر من أو مساوية للقيمة الثانية. |
| if | التحقق مما إذا كان التعبير صحيحاً أم خطأ. بناءً على النتيجة، قم بإرجاع قيمة محددة. |
| isFloat | إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة. |
| isInt | إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن عدد صحيح. |
| less | التحقق مما إذا كانت القيمة الأولى أقل من القيمة الثانية. |
| lessOrEquals | التحقق مما إذا كانت القيمة الأولى أقل من أو مساوية للقيمة الثانية. |
| not | التحقق مما إذا كان التعبير غير صحيح. |
| or | التحقق مما إذا كان هناك تعبير واحد على الأقل صحيح. |
دالات التحويل
لتغيير نوع القيمة أو تنسيقها، بإمكانك استخدام دالات التحويل هذه. على سبيل المثال، بإمكانك تغيير قيمة من قيمة منطقية إلى عدد صحيح. للمزيد من المعلومات عن كيفية تعامل Azure Logic Apps مع أنواع المحتويات أثناء التحويل، يرجى مراجعة معالجة أنواع المحتوى. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال في المصمم، فيمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة تحويلات نوع البيانات الضمنية.
| دالة التحويل | Task |
|---|---|
| array | إرجاع صفيف من إدخال واحد محدد. للحصول على مدخلات متعددة، راجع createArray. |
| base64 | إرجاع الإصدار المرمّز باستخدام base64 لإحدى السلاسل. |
| base64ToBinary | إرجاع الإصدار الثنائي لسلسلة مرمّزة باستخدام base64. |
| base64ToString | إرجاع إصدار السلسلة لسلسلة مرمّزة باستخدام base64. |
| binary | إرجاع الإصدار الثنائي لقيمة إدخال. |
| bool | إرجاع الإصدار المنطقي لقيمة إدخال. |
| createArray | إرجاع صفيف من مدخلات متعددة. |
| dataUri | إرجاع URI للبيانات لقيمة إدخال. |
| dataUriToBinary | إرجاع الإصدار الثنائي لـ URI للبيانات. |
| dataUriToString | إرجاع إصدار السلسلة لـ URI للبيانات. |
| decimal | قم بإعادة الرقم العشري لسلسلة عشرية. |
| decodeBase64 | إرجاع إصدار السلسلة لسلسلة مرمّزة باستخدام base64. |
| decodeDataUri | إرجاع الإصدار الثنائي لـ URI للبيانات. |
| decodeUriComponent | إرجاع سلسلة استبدال أحرف الإلغاء بإصدارات غير مرمزة. |
| encodeUriComponent | إرجاع سلسلة يستبدل أحرف URL غير الآمنة بأحرف الإلغاء. |
| float | إرجاع رقم فاصلة عائمة لقيمة إدخال. |
| int | إرجاع إصدار صحيح لسلسلة. |
| json | بإرجاع قيمة نوع JavaScript Object Notation (JSON) أو كائن لسلسلة أو XML. |
| string | إرجاع إصدار السلسلة لقيمة إدخال. |
| uriComponent | إرجاع إصدار URI المرمز لقيمة إدخال عن طريق استبدال أحرف URL غير الآمنة بأحرف إلغاء. |
| uriComponentToBinary | إرجاع الإصدار الثنائي لسلسلة URI المرمزة. |
| uriComponentToString | إرجاع إصدار السلسلة لسلسلة URI المرمزة. |
| xml | إرجاع إصدار XML لسلسلة. |
تحويلات نوع البيانات الضمنية
يحول Azure Logic Apps تلقائيًا أو ضمنيًا بين بعض أنواع البيانات، لذلك لا يجب عليك إجراء هذه التحويلات يدويًا. على سبيل المثال، إذا كنت تستخدم قيمًا غير سلسلة حيث من المتوقع أن تكون السلاسل إدخالات، فإن Azure Logic Apps يحول تلقائيًا القيم غير السلسلة إلى سلاسل.
على سبيل المثال، افترض أن المشغل يُرجع قيمة عددية كإخراج:
triggerBody()?['123']
في حالة كنت تستخدم هذا الإخراج الرقمي حيث يتوقع إدخال السلسلة، مثل عنوان URL، فإن Azure Logic Apps يحول القيمة تلقائيًا إلى سلسلة باستخدام رمز الأقواس المتعرجة ({}):
@{triggerBody()?['123']}
الترميز وفك الترميز الخاص بـ Base64
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يجب عليك إجراء هذه التحويلات يدويًا باستخدام الدالات المقابلة:
base64(<value>)base64ToBinary(<value>)base64ToString(<value>)base64(decodeDataUri(<value>))concat('data:;base64,',<value>)concat('data:,',encodeUriComponent(<value>))decodeDataUri(<value>)
Note
في حالة إضافة أي من هذه الدالات يدويًا أثناء استخدام المصمم، إما مباشرة إلى المشغل أو الإجراء أو باستخدام محرر التعبير، انتقل بعيدًا عن المصمم، ثم عد إلى المصمم، تختفي الوظيفة من المصمم، تاركة وراءها فقط قيم المعلمات. يحدث هذا السلوك أيضًا في حالة قيامك بتحديد مشغل أو إجراء يستخدم هذه الدالة دون تحرير قيم معلمات الدالة. تؤثر هذه النتيجة على رؤية الدالة فقط وليس التأثير. في طريقة عرض التعليمة البرمجية، لا تتأثر الدالة. ومع ذلك، إذا قمت بتحرير قيم معلمات الدالة، فستتم إزالة كل من الدالة وتأثيرها من عرض التعليمات البرمجية، تاركة وراءها قيم معلمات الدالة فقط.
دالات رياضيات
للعمل مع الأعداد الصحيحة والعشرية، يمكنك استخدام هذه الدالات الرياضية. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
| دالة رياضية | Task |
|---|---|
| add | إرجاع الناتج من إضافة رقمين. |
| div | إرجاع الناتج من قسمة رقمين. |
| max | إرجاع القيمة الأعلى من مجموعة من الأرقام أو صفيف. |
| min | إرجاع القيمة الأقل من مجموعة من الأرقام أو صفيف. |
| mod | إرجاع الباقي من قسمة رقمين. |
| mul | إرجاع الناتج من ضرب رقمين. |
| rand | إرجاع عدد صحيح عشوائي من نطاق محدد. |
| range | إرجاع صفيف عدد صحيح يبدأ من عدد صحيح محدد. |
| sub | إرجاع الناتج من طرح الرقم الثاني من الرقم الأول. |
دالات التاريخ والوقت
للعمل مع التواريخ والأوقات، بإمكانك استخدام دالات التاريخ والوقت هذه. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
| دالة التاريخ أو الوقت | Task |
|---|---|
| addDays | أضف أيام إلى طابع زمني. |
| addHours | أضف ساعات إلى طابع زمني. |
| addMinutes | أضف دقائق إلي طابع زمني. |
| addSeconds | أضف ثواني إلي طابع زمني. |
| addToTime | أضف وحدات زمنية محددة إلى طابع زمني. راجع أيضا getFutureTime. |
| convertFromUtc | تحويل طابع زمني من تنسيق التوقيت العالمي (UTC) إلى المنطقة الزمنية الهدف. |
| convertTimeZone | تحويل طابع زمني من المنطقة الزمنية المصدر إلى المنطقة الزمنية الهدف. |
| convertToUtc | تحويل طابع زمني من المنطقة الزمنية المصدر إلى تنسيق التوقيت العالمي (UTC). |
| dateDifference | إرجاع الفرق بين تاريخين كمدة زمنية. |
| dayOfMonth | إرجاع مكون أيام الشهر من الطابع زمني. |
| dayOfWeek | إرجاع مكون يوم الأسبوع من الطابع الزمني. |
| dayOfYear | إرجاع مكون أيام السنة من الطابع زمني. |
| formatDateTime | استعد التاريخ من الطابع الزمني. |
| getFutureTime | إرجاع الطابع الزمني الحالي بالإضافة إلى وحدات الوقت المحددة. راجع أيضا addToTime. |
| getPastTime | إرجاع الطابع الزمني الحالي مطروحاً منه الوحدات الزمنية المحددة. راجع أيضا طرحFromTime. |
| parseDateTime | استعد الطابع الزمني من سلسلة تحتوي على طابع زمني. |
| startOfDay | إرجاع بداية اليوم للحصول على طابع زمني. |
| startOfHour | إرجاع بداية الساعة للحصول على طابع زمني. |
| startOfMonth | إرجاع بداية الشهر للحصول على طابع زمني. |
| subtractFromTime | طرح عدد من وحدات الوقت من الطابع الزمني. راجع أيضا getPastTime. |
| ticks | إرجاع قيمة الخاصية ticks لطابع زمني محدد. |
| utcNow | إرجاع الطابع الزمني الحالي كسلسلة. |
وظائف سير العمل
من الممكن أن تساعدك دالات سير العمل هذه على:
- الحصول على تفاصيل عن مثيل سير العمل في وقت التشغيل.
- العمل مع الإدخالات المستخدمة لإنشاء مثيل خاص بتطبيقات المنطق أو التدفقات.
- الإشارة إلى الإخراجات من المشغلات والإجراءات.
على سبيل المثال، بإمكانك الرجوع إلى إخراجات إجراء واحد واستخدام تلك البيانات في إجراء لاحق. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
| دالة سير العمل | Task |
|---|---|
| action | استعد إخراج الإجراء الحالي في وقت التشغيل، أو القيم من أزواج اسم وقيمة JSON الأخرى. راجع أيضا الإجراءات. |
| actions | أرجع إخراج إجراء ما في وقت التشغيل، أو قيم من أزواج اسم وقيمة JSON أخرى. راجع أيضا الإجراء. |
| body | أرجع الإخراج الخاص بالإجراء body في وقت التشغيل. |
| formDataMultiValues | إنشاء صفيف بالقيم التي تطابق اسم مفتاح في بيانات النموذج أو مخرجات الإجراء المشفرة بالنموذج . |
| formDataValue | إرجاع قيمة واحدة تطابق اسم مفتاح في بيانات النموذج أو إخراج ترميز النموذج الخاص بالإجراء. |
| item | في حالة ظهور هذه الدالة داخل إجراء متكرر في صفيف، فأرجع العنصر الحالي في الصفيف أثناء التكرار الحالي للإجراء. |
| items | في حالة ظهور الدالة داخل تكرار Foreach أو Until، فأعد العنصر الحالي من التكرار الحلقي المحدد. |
| iterationIndexes | في حالة ظهور الدالة داخل تكرار Until، فأعد قيمة الفهرس للتكرار الحالي. يمكنك استخدام هذه الدالة داخل تكرار Until المتداخل. |
| listCallbackUrl | أعد «عنوان URL لرد الاتصال» الذي يستدعي مشغلاً أو إجراءً. |
| multipartBody | أعد النص الأساسي لجزء معين في إخراج إجراء يتكون من أجزاء متعددة. |
| outputs | أعد إخراج الإجراء في وقت التشغيل. |
| parameters | أعد قيمة المعلمة الموضحة في تعريف سير العمل الخاص بك. |
| result | أعد الإدخالات والإخراجات من إجراءات المستوى الأعلى داخل الإجراء ضمن النطاق المحدد، مثل For_each، وUntil، وScope. |
| trigger | أعد إخراج المشغل في وقت التشغيل، أو من أزواج اسم وقيمة JSON الأخرى. راجع أيضا triggerOutputs و triggerBody. |
| triggerBody | أعد إخراج المشغل body في وقت التشغيل. راجع المشغل. |
| triggerFormDataValue | إرجاع قيمة واحدة مطابقة لاسم مفتاح في بيانات النموذج أو مخرجات المشغل المشفرة بالنموذج . |
| triggerMultipartBody | أعد النص الأساسي لجزء معين في إخراج المشغل متعدد الأجزاء. |
| triggerFormDataMultiValues | إنشاء صفيف تتطابق قيمه مع اسم مفتاح في بيانات النموذج أو مخرجات المشغل المشفرة بالنموذج . |
| triggerOutputs | أعد إخراج المشغل في وقت التشغيل، أو القيم من أزواج اسم وقيمة JSON الأخرى. راجع المشغل. |
| variables | أعد قيمة متغير محدد. |
| workflow | أعد جميع التفاصيل حول سير العمل نفسه أثناء وقت التشغيل. |
دالات تحليل URI
للعمل مع معرفات الموارد المنتظمة (URI) والحصول على قيم خصائص مختلفة لعناوين URI هذه، يمكنك استخدام دالات تحليل URI هذه. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
| دالات تحليل URI | Task |
|---|---|
| uriHost | أعد قيمة host لمعرف الموارد المنتظم (URI). |
| uriPath | أعد قيمة path لمعرف الموارد المنتظم (URI). |
| uriPathAndQuery | أعد قيم path وquery لمعرف الموارد المنتظم (URI). |
| uriPort | أعد قيمة port لمعرف الموارد المنتظم (URI). |
| uriQuery | أعد قيمة query لمعرف الموارد المنتظم (URI). |
| uriScheme | أعد قيمة scheme لمعرف الموارد المنتظم (URI). |
دوال المعالجة: JSON وXML
للعمل مع عناصر JSON وعقد XML، يمكنك استخدام دالات المعالجة هذه. للحصول على المرجع الكامل حول كل دالة، راجع القائمة الأبجدية.
| دالة المعالجة | Task |
|---|---|
| addProperty | أضف خاصية وقيمتها، أو زوج الاسم-القيمة، إلى عنصر JSON، وأرجع العنصر المحدث. |
| coalesce | إرجاع القيمة غير الفارغة الأولى من معلمة واحدة أو أكثر. |
| removeProperty | أزل خاصية من عنصر JSON وأعد العنصر المحدث. |
| setProperty | عين قيمة لخاصية عنصر JSON وأعد العنصر المحدث. |
| xpath | التحقق من XML للعقد أو القيم التي تطابق تعبير XPath (لغة مسار XML)، ثم إرجاع العقد أو القيم المتطابقة. |
---------------------------------
جميع الدالات - قائمة أبجدية
يسرد هذا القسم جميع الدالات المتوفرة بالترتيب الأبجدي.
A
action
إرجاع إخراج الإجراء الحالي في وقت التشغيل، أو القيم من أزواج اسم وقيمة JSON الأخرى، والتي يمكنك تعيينها إلى تعبير. بشكل افتراضي، تشير هذه الدالة إلى عنصر الإجراء بأكمله، ولكن يمكنك اختياريًا تحديد خاصية تريد قيمتها. راجع أيضا actions().
بإمكانك استخدام الدالة action() فقط في هذه الأماكن:
- الخاصية
unsubscribeلإجراء إخطار على الويب حتى تتمكن من الوصول إلى النتيجة من الطلب الأصليsubscribe - الخاصية
trackedPropertiesالخاصة بإجراء - شرط التكرار الحلقي
do-untilالخاص بإجراء
action()
action().outputs.body.<property>
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مال> | No | String | اسم خاصية كائن الإجراء التي تريد قيمتها: الاسم و startTimeوendTimeوالمدخلاتوالمخرجاتوالحالةوالرمز و trackingId و clientTrackingId. في مدخل Microsoft Azure، بإمكانك العثور على هذه الخصائص من خلال مراجعة تفاصيل محفوظات تشغيل معينة. للمزيد من المعلومات، يرجى مراجعة واجهة برمجة تطبيقات REST - إجراءات تشغيل سير العمل. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < إخراج الإجراء> | Object | إخراج كائن JSON من الإجراء الحالي أو الخاصية الحالية |
actions
أعد إخراج إجراء ما في وقت التشغيل، أو قيم من أزواج اسم وقيمة JSON أخرى، والتي يمكنك تعيينها إلى تعبير. بشكل افتراضي، تشير الدالة إلى عنصر الإجراء بأكمله، ولكن يمكنك تحديد خاصية تريد قيمتها بشكل اختياري. للحصول على إصدارات مختصرة، راجع body(). للحصول على الإجراء الحالي، راجع action().
Note
في السابق، بإمكانك استخدام الدالة actions() أو العنصر conditions عند تحديد تشغيل إجراء استنادًا إلى الإخراج من إجراء آخر. ومع ذلك، للإعلان صراحة عن التبعيات بين الإجراءات، يلزم عليك الآن استخدام خاصية runAfter للإجراء التابع.
لمعرفة المزيد عن الخاصية runAfter، يرجى مراجعة اكتشاف الأخطاء والتعامل معها من خلال خاصية runAfter.
actions('<actionName>')
actions('<actionName>').outputs.body.<property>
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | اسم عنصر الإجراء الذي تريد إخراجه |
| < مال> | No | String | اسم خاصية كائن الإجراء التي تريد قيمتها: الاسم و startTimeوendTimeوالمدخلاتوالمخرجاتوالحالةوالرمز و trackingId و clientTrackingId. في مدخل Microsoft Azure، بإمكانك العثور على هذه الخصائص من خلال مراجعة تفاصيل محفوظات تشغيل معينة. للمزيد من المعلومات، يرجى مراجعة واجهة برمجة تطبيقات REST - إجراءات تشغيل سير العمل. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < إخراج الإجراء> | Object | إخراج كائن JSON من الإجراء أو الخاصية المحددة |
Example
يحصل هذا المثال على قيمة الخاصية status من الإجراء Get user X في وقت التشغيل:
actions('Get_user').outputs.body.status
وإرجاع هذه النتيجة: "Succeeded"
add
إرجاع الناتج من إضافة رقمين.
add(<summand_1>, <summand_2>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < >summand_1، <summand_2> | Yes | عدد صحيح أو عائم أو مختلط | الأرقام التي تجب إضافتها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < مجموع النتائج> | عدد صحيح أو عائم | نتيجة إضافة الأرقام المحددة |
Example
يضيف هذا المثال الأرقام المحددة:
add(1, 1.5)
وإرجاع هذه النتيجة: 2.5
addDays
أضف أيام إلى طابع زمني.
addDays('<timestamp>', <days>, '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < أيام> | Yes | Integer | العدد الموجب أو السالب للأيام الذي يجب إضافته |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني بالإضافة إلى عدد الأيام المحدد |
المثال 1
يضيف هذا المثال 10 أيام إلى الطابع الزمني المحدد:
addDays('2018-03-15T00:00:00Z', 10)
وإرجاع هذه النتيجة: "2018-03-25T00:00:00.0000000Z"
مثال 2
يطرح هذا المثال خمسة أيام من الطابع الزمني المحدد:
addDays('2018-03-15T00:00:00Z', -5)
وإرجاع هذه النتيجة: "2018-03-10T00:00:00.0000000Z"
addHours
أضف ساعات إلى طابع زمني.
addHours('<timestamp>', <hours>, '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < الساعات> | Yes | Integer | العدد الموجب أو السالب للساعات التي يجب إضافتها |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني بالإضافة إلى عدد الساعات المحددة |
المثال 1
يضيف هذا المثال 10 ساعات إلى الطابع الزمني المحدد:
addHours('2018-03-15T00:00:00Z', 10)
وإرجاع هذه النتيجة: "2018-03-15T10:00:00.0000000Z"
مثال 2
يطرح هذا المثال خمسة ساعات من الطابع الزمني المحدد:
addHours('2018-03-15T15:00:00Z', -5)
وإرجاع هذه النتيجة: "2018-03-15T10:00:00.0000000Z"
addMinutes
أضف دقائق إلي طابع زمني.
addMinutes('<timestamp>', <minutes>, '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < محضر> | Yes | Integer | العدد الموجب أو السالب للدقائق التي يجب إضافتها |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني بالإضافة إلى عدد الدقائق المحددة |
المثال 1
يضيف هذا المثال 10 دقائق إلى الطابع الزمني المحدد:
addMinutes('2018-03-15T00:10:00Z', 10)
وإرجاع هذه النتيجة: "2018-03-15T00:20:00.0000000Z"
مثال 2
يطرح هذا المثال خمس دقائق من الطابع الزمني المحدد:
addMinutes('2018-03-15T00:20:00Z', -5)
وإرجاع هذه النتيجة: "2018-03-15T00:15:00.0000000Z"
addProperty
أضف خاصية وقيمتها، أو زوج الاسم-القيمة، إلى عنصر JSON، وأرجع العنصر المحدث. إذا كانت الخاصية موجودة بالفعل في وقت التشغيل، فستفشل الدالة وتتسبب في حدوث خطأ.
addProperty(<object>, '<property>', <value>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON حيث تريد إضافة خاصية |
| < مال> | Yes | String | اسم الخاصية التي تريد إضافتها |
| < قيمة> | Yes | Any | قيمة الخاصية |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < كائن محدث> | Object | عنصر JSON المحدث بالخاصية المحددة |
لإضافة خاصية أصل إلى خاصية موجودة، استخدم الدالة setProperty()، وليس الدالة addProperty(). خلاف ذلك، ترجع الدالة العنصر التابع فقط كإخراج.
setProperty(<object>, '<parent-property>', addProperty(<object>['<parent-property>'], '<child-property>', <value>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON حيث تريد إضافة خاصية |
| < خاصية الأصل> | Yes | String | اسم الخاصية الأصل حيث تريد إضافة الخاصية التابعة |
| < خاصية تابعة> | Yes | String | اسم الخاصية الفرعية المراد إضافتها |
| < قيمة> | Yes | Any | القيمة المراد تعيينها للخاصية المحددة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < كائن محدث> | Object | عنصر JSON المحدث الذي تحدد خاصيته |
المثال 1
يضيف هذا المثال الخاصية middleName إلى كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON(). يشمل العنصر بالفعل الخاصيتين firstName وsurName. تقوم الدالة بتعيين القيمة المحددة للخاصية الجديدة وإرجاع العنصر المحدث:
addProperty(json('{ "firstName": "Sophia", "lastName": "Owen" }'), 'middleName', 'Anne')
إليك عنصر JSON الحالي:
{
"firstName": "Sophia",
"surName": "Owen"
}
إليك عنصر JSON المحدث:
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
مثال 2
يضيف هذا المثال الخاصية التابعة middleName إلى الخاصية الموجودة customerName في كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON(). تقوم الدالة بتعيين القيمة المحددة للخاصية الجديدة وإرجاع العنصر المحدث:
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', addProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'middleName', 'Anne'))
إليك عنصر JSON الحالي:
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
إليك عنصر JSON المحدث:
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
addSeconds
أضف ثواني إلي طابع زمني.
addSeconds('<timestamp>', <seconds>, '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < الثواني> | Yes | Integer | العدد الموجب أو السالب للثواني التي يجب إضافتها |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني بالإضافة إلى عدد الثواني المحددة |
المثال 1
يضيف هذا المثال 10 ثوانٍ إلى الطابع الزمني المحدد:
addSeconds('2018-03-15T00:00:00Z', 10)
وإرجاع هذه النتيجة: "2018-03-15T00:00:10.0000000Z"
مثال 2
يطرح هذا المثال خمس ثوانٍ من الطابع الزمني المحدد:
addSeconds('2018-03-15T00:00:30Z', -5)
وإرجاع هذه النتيجة: "2018-03-15T00:00:25.0000000Z"
addToTime
أضف الوحدات الزمنية المحددة إلى طابع زمني. راجع أيضا getFutureTime().
addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < فترة> | Yes | Integer | عدد الوحدات الزمنية المحددة المطلوب إضافتها |
| < وحدة زمنية> | Yes | String | وحدة الوقت التي يجب استخدامها مع الفاصل الزمني: "الثانية"، "الدقيقة"، "الساعة"، "اليوم"، "الأسبوع"، "الشهر"، "السنة" |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني بالإضافة إلى عدد الوحدات الزمنية |
المثال 1
يضيف هذا المثال يوم واحد إلى الطابع الزمني المحدد:
addToTime('2018-01-01T00:00:00Z', 1, 'Day')
وإرجاع هذه النتيجة: "2018-01-02T00:00:00.0000000Z"
مثال 2
يضيف هذا المثال يوم واحد إلى الطابع الزمني المحدد:
addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')
وإرجاع النتيجة باستخدام تنسيق "D" الاختياري: "Tuesday, January 2, 2018"
and
التحقق مما إذا كانت جميع التعبيرات صحيحة. أعد صحيح عندما تكون جميع التعبيرات صحيحة، أو أعد خطأ عندما يكون تعبير واحد على الأقل خطأ.
and(<expression1>, <expression2>, ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تعبير1>، <تعبير2>، ... | Yes | Boolean | التعبيرات التي يجب التحقق منها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | أعد صحيح عندما تكون جميع التعبيرات صحيحة. إرجاع false عندما يكون تعبير واحد على الأقل غير صحيح. |
المثال 1
تتحقق هذه الأمثلة مما إذا كانت جميع القيم المنطقية المحددة صحيحة أم لا:
and(true, true)
and(false, true)
and(false, false)
وإرجاع هذه النتائج:
- المثال الأول: كلا التعبيرين صحيحان، لذا يتم إرجاع
true. - المثال الثاني: أحد التعبيرين خطأ، لذا يتم إرجاع
false. - المثال الثالث: كلا التعبيرين خطأ، لذا يتم إرجاع
false.
مثال 2
تتحقق هذه الأمثلة مما إذا كانت جميع التعبيرات المحددة صحيحة أم لا:
and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))
وإرجاع هذه النتائج:
- المثال الأول: كلا التعبيرين صحيحان، لذا يتم إرجاع
true. - المثال الثاني: أحد التعبيرين خطأ، لذا يتم إرجاع
false. - المثال الثالث: كلا التعبيرين خطأ، لذا يتم إرجاع
false.
array
إرجاع صفيف من إدخال واحد محدد. للحصول على مدخلات متعددة، راجع createArray().
array('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة لإنشاء صفيف |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<قيمة>] | Array | صفيف يحتوي على إدخال واحد محدد |
Example
ينشئ هذا المثال صفيف من سلسلة "hello":
array('hello')
وإرجاع هذه النتيجة: ["hello"]
B
base64
إرجاع الإصدار المرمّز باستخدام base64 لإحدى السلاسل.
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال، يمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة ترميز Base64 وفك ترميزه.
base64('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | سلسلة الإدخال |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < سلسلة base64> | String | الإصدار المرمّز باستخدام base64 لسلسلة الإدخال |
Example
يحول هذا المثال سلسلة "hello" إلى سلسلة مرمزة باستخدام base64:
base64('hello')
وإرجاع هذه النتيجة: "aGVsbG8="
base64ToBinary
إرجاع الإصدار الثنائي لسلسلة مرمّزة باستخدام base64.
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال في المصمم، فيمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة ترميز Base64 وفك ترميزه.
base64ToBinary('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المرمزة باستخدام base64 لتحويل |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < ثنائي لسلسلة base64> | String | الإصدار الثنائي لسلسلة مرمزة باستخدام base64 |
Example
يحول هذا المثال السلسلة المرمزة باستخدام "aGVsbG8=" base64 إلى سلسلة ثنائية:
base64ToBinary('aGVsbG8=')
على سبيل المثال، افترض أنك تستخدم إجراء HTTP لكي ترسل طلبًا. بإمكانك استخدام base64ToBinary() لتحويل سلسلة مرمزة بـ base64 إلى بيانات ثنائية وإرسال تلك البيانات باستخدام نوع المحتوى application/octet-stream في الطلب.
base64ToString
إرجاع إصدار السلسلة للسلسلة المرمزة باستخدام base64، وفك ترميز السلسلة المرمزة باستخدام base64 على نحوٍ فعال. استخدم هذه الدالة بدلا من decodeBase64()، التي تم إهمالها.
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال في المصمم، فيمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة ترميز Base64 وفك ترميزه.
base64ToString('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المرمزة باستخدام base64 لفك الترميز |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < سلسلة تم فك ترميزها-base64> | String | إصدار السلسلة لسلسلة مرمّزة باستخدام base64 |
Example
يحول هذا المثال السلسلة المرمزة باستخدام "aGVsbG8=" base64 إلى سلسلة واحدة فقط:
base64ToString('aGVsbG8=')
وإرجاع هذه النتيجة: "hello"
binary
أعد الإصدار الثنائي المرمز بـ base64 من سلسلة.
binary('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المطلوب تحويلها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < ثنائي مقابل قيمة الإدخال> | String | الإصدار الثنائي المرمز بـ base64 للسلسلة المحددة |
Example
على سبيل المثال، أنت تستخدم إجراء HTTP يرجع ملف صورة أو ملف فيديو. بإمكانك استخدام binary() لتحويل القيمة إلى نموذج مغلف محتوى مرمز بـ base-64. بعد ذلك، بإمكانك إعادة استخدام مغلف المحتوى في إجراءات أخرى، مثل Compose.
يمكنك استخدام تعبير الدالة هذا لإرسال بايت سلسلة مع نوع المحتوى application/octet-stream في الطلب.
body
أرجع الإخراج الخاص بالإجراء body في وقت التشغيل. اختصار لـ actions('<actionName>').outputs.body. راجع actions().
body('<actionName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | اسم إخراج الإجراء body الذي تريده |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < مخرج الجسم-الفعل> | String | الإخراج body من الإجراء المحدد |
Example
يحصل هذا المثال على body الإخراج من Get user الإجراء X:
body('Get_user')
وإرجاع هذه النتيجة:
"body": {
"FullName": "Contoso Corporation",
"Location": "Generic Town, USA",
"Id": 283541717,
"UserName": "ContosoInc",
"FollowersCount": 172,
"Description": "Leading the way in transforming the digital workplace.",
"StatusesCount": 93,
"FriendsCount": 126,
"FavouritesCount": 46,
"ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
}
bool
أعد الإصدار المنطقي لقيمة.
bool(<value>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | Any | القيمة المطلوب تحويلها إلى منطقية. |
إذا كنت تستخدم bool() مع عنصر، يجب أن تكون قيمة العنصر سلسلة أو عدد صحيح يمكن تحويله إلى قيمة منطقية.
| قيمة الإرجاع | Type | Description |
|---|---|---|
true أو false |
Boolean | إصدار منطقي للقيمة المحددة. |
Outputs
توضح هذه الأمثلة الأنواع المختلفة المدعومة من الإدخال من أجل bool():
| قيمة الإدخال | Type | قيمة الإرجاع |
|---|---|---|
bool(1) |
Integer | true |
bool(0) |
Integer | false |
bool(-1) |
Integer | true |
bool('true') |
String | true |
bool('false') |
String | false |
C
chunk
تقسيم سلسلة أو صفيف إلى أجزاء متساوية الطول.
chunk('<collection>', '<length>')
chunk([<collection>], '<length>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف | المجموعة المراد تقسيمها |
| < طول> | Yes | طول كل جزء |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < مجموعة> | Array | صفيف من المجموعات ذات الطول المحدد |
المثال 1
يقسم هذا المثال سلسلة إلى أجزاء من الطول 10:
chunk('abcdefghijklmnopqrstuvwxyz', 10)
وإرجاع هذه النتيجة: ['abcdefghij', 'klmnopqrst', 'uvwxyz']
مثال 2
يقسم هذا المثال صفيفا إلى أجزاء من الطول 5.
chunk(createArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 5)
وإرجاع هذه النتيجة: [ [1,2,3,4,5], [6,7,8,9,10], [11,12] ]
coalesce
إرجاع القيمة غير الفارغة الأولى من معلمة واحدة أو أكثر. السلاسل، والمصفوفات، والعناصر الفارغة ليست خالية.
coalesce(<object_1>, <object_2>, ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < >object_1، <object_2>، ... | Yes | أي، يمكن خلط الأنواع | عنصر واحد أو أكثر للتحقق من كونه خالياً |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < العنصر الأول غير الفارغ> | Any | العنصر الأول أو القيمة ليست خالية. إذا كانت جميع المعلمات فارغة، يتم إرجاع هذه الدالة قيمة فارغة. |
Example
تُرجع هذه الأمثلة القيمة الأولى غير الفارغة من القيم المحددة، أو القيمة الفارغة عندما تكون جميع القيم فارغة:
coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)
وإرجاع هذه النتائج:
- المثال الأول:
true - المثال الثاني:
"hello" - المثال الثالث:
null
concat
ضم سلسلتين أو أكثر، ثم إرجاع السلسلة المدمجة.
concat('<text1>', '<text2>', ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص1>، <نص2>، ... | Yes | String | على الأقل سلسلتان للجمع |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < text1text2...> | String | السلسلة التي تم إنشاؤها من سلاسل الإدخال المدمجة. ملاحظة: يجب ألا يتجاوز طول النتيجة 104,857,600 حرف. |
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا عند استخدام الدالة concat() مع البيانات التي تحتاج إلى ترميز أو فك ترميز:
concat('data:;base64,',<value>)concat('data:,',encodeUriComponent(<value>))
ومع ذلك، إذا كنت تستخدم هذه الدالة على أي حال في المصمم، يمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالة فقط وليس التأثير إلا إذا حررت قيم معلمات الدالة، ما يزيل الدالة والتأثير من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، راجع ترميز Base64 وفك ترميزه.
Example
يجمع هذا المثال بين السلاسل "Hello" و"World":
concat('Hello', 'World')
وإرجاع هذه النتيجة: "HelloWorld"
contains
التحقق مما إذا كانت المجموعة تحتوي على عنصر معين. يتم إرجاع القيمة true عند العثور على العنصر أو إرجاع القيمة false عند عدم العثور عليه. هذه الدالة حساسة لحالة الأحرف.
contains('<collection>', '<value>')
contains([<collection>], '<value>')
وبوجه خاص، تعمل هذه الدالة على أنواع المجموعات هذه:
- سلسلة للعثور على سلسلة فرعية
- صفيف للبحث عن قيمة
- قاموس للبحث عن مفتاح
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف أو قاموس | المجموعة التي يجب التحقق منها |
| < قيمة> | Yes | سلسلة أو صفيف أو قاموس على التوالي | العنصر المطلوب العثور عليه |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عند العثور على العنصر. إرجاع القيمة false عند عدم العثور عليه. |
المثال 1
يتحقق هذا المثال من سلسلة "hello world" للسلسلة الفرعية "world" وإرجاع القيمة true:
contains('hello world', 'world')
مثال 2
يتحقق هذا المثال من سلسلة "hello world" للسلسلة الفرعية "universe" وإرجاع القيمة false:
contains('hello world', 'universe')
convertFromUtc
تحويل طابع زمني من تنسيق التوقيت العالمي (UTC) إلى المنطقة الزمنية الهدف.
convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < الوجهةTimeZone> | Yes | String | اسم المنطقة الزمنية الهدف. للحصول على أسماء المناطق الزمنية، يرجى مراجعة المناطق الزمنية الافتراضية لـ Microsoft Windows. |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحول> | String | الطابع الزمني المحول إلى المنطقة الزمنية المستهدفة بدون إزاحة المنطقة الزمنية بالتوقيت العالمي المتفق عليه. |
المثال 1
يحول هذا المثال طابعاً زمنياً إلى المنطقة الزمنية المحددة:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')
وإرجاع هذه النتيجة: "2018-01-01T00:00:00.0000000"
مثال 2
يحول هذا المثال طابعاً زمنياً إلى المنطقة الزمنية والتنسيق المحدد:
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')
وإرجاع هذه النتيجة: "Monday, January 1, 2018"
convertTimeZone
تحويل طابع زمني من المنطقة الزمنية المصدر إلى المنطقة الزمنية الهدف.
convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < مصدرTimeZone> | Yes | String | اسم المنطقة الزمنية المصدر. بالنسبة لأسماء المناطق الزمنية، يرجى مراجعة Microsoft Windows Default Time Zones، ولكن يمكن تضطر إلى إزالة أي علامات ترقيم من اسم المنطقة الزمنية. |
| < الوجهةTimeZone> | Yes | String | اسم المنطقة الزمنية الهدف. بالنسبة لأسماء المناطق الزمنية، يرجى مراجعة Microsoft Windows Default Time Zones، ولكن يمكن تضطر إلى إزالة أي علامات ترقيم من اسم المنطقة الزمنية. |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحول> | String | الطابع الزمني المحول إلى المنطقة الزمنية الهدف |
المثال 1
يحول هذا المثال المنطقة الزمنية المصدر إلى المنطقة الزمنية الهدف:
convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')
وإرجاع هذه النتيجة: "2018-01-01T00:00:00.0000000"
مثال 2
يحول هذا المثال منطقة زمنية إلى المنطقة الزمنية والتنسيق المحدد:
convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')
وإرجاع هذه النتيجة: "Monday, January 1, 2018"
convertToUtc
تحويل طابع زمني من المنطقة الزمنية المصدر إلى تنسيق التوقيت العالمي (UTC).
convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < مصدرTimeZone> | Yes | String | اسم المنطقة الزمنية المصدر. بالنسبة لأسماء المناطق الزمنية، يرجى مراجعة Microsoft Windows Default Time Zones، ولكن يمكن تضطر إلى إزالة أي علامات ترقيم من اسم المنطقة الزمنية. |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحول> | String | الطابع الزمني المحول إلى UTC |
المثال 1
يحول هذا المثال طابع زمني إلى UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')
وإرجاع هذه النتيجة: "2018-01-01T08:00:00.0000000Z"
مثال 2
يحول هذا المثال طابع زمني إلى UTC:
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')
وإرجاع هذه النتيجة: "Monday, January 1, 2018"
createArray
إرجاع صفيف من مدخلات متعددة. بالنسبة إلى صفائف الإدخال المفردة، راجع array().
createArray('<object1>', '<object2>', ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الشيء1>، <الشيء2>، ... | Yes | أي، ولكن ليست مختلطة | عنصران على الأقل لإنشاء الصفيف |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<object1>, <object2>, ...] | Array | الصفيف الذي تم إنشاؤه من جميع عناصر الإدخال |
Example
ينشئ هذا المثال صفيف من هذه الإدخالات:
createArray('h', 'e', 'l', 'l', 'o')
وإرجاع هذه النتيجة: ["h", "e", "l", "l", "o"]
D
dataUri
إرجاع معرف موارد منتظم للبيانات (URI) لسلسلة.
dataUri('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المطلوب تحويلها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < data-uri> | String | عنوان URI للبيانات الخاصة بسلسلة الإدخال |
Example
ينشئ هذا المثال عنوان URI للبيانات الخاصة بسلسلة "hello":
dataUri('hello')
وإرجاع هذه النتيجة: "data:text/plain;charset=utf-8;base64,aGVsbG8="
dataUriToBinary
إرجاع الإصدار الثنائي لمعرف موارد منتظم (URI) للبيانات.
استخدم هذه الدالة بدلا من فك ترميزDataUri().
على الرغم من أن كلتا الدالتين تعملان بنفس الطريقة، يفضل استخدام dataUriBinary().
dataUriToBinary('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | URI للبيانات من أجل تحويل |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < binary-for-data-uri> | String | الإصدار الثنائي لـ URI للبيانات |
Example
ينشئ هذا المثال الإصدار الثنائي لـ URI للبيانات:
dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')
وإرجاع هذه النتيجة:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
dataUriToString
إرجاع إصدار السلسلة لمعرف موارد منتظم (URI) للبيانات.
dataUriToString('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | URI للبيانات من أجل تحويل |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < string-for-data-uri> | String | إصدار السلسلة لـ URI للبيانات |
Example
ينشئ هذا المثال سلسلة لـ URI للبيانات:
dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')
وإرجاع هذه النتيجة: "hello"
dateDifference
إرجاع الفرق بين طابعين زمنيين كمدى زمني. تطرح هذه الدالة startDate من endDate، وترجع النتيجة كطوابع زمنية بتنسيق سلسلة.
dateDifference('<startDate>', '<endDate>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تاريخ البدء> | Yes | String | سلسلة تحتوي على طابع زمني |
| < تاريخ الانتهاء> | Yes | String | سلسلة تحتوي على طابع زمني |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الفترة الزمنية> | String | الفرق بين الطابعين الزمنيين، وهو طابع زمني بتنسيق سلسلة. إذا كان startDate أحدث من endDate، تكون النتيجة قيمة سالبة. |
Example
يطرح هذا المثال القيمة الأولى من القيمة الثانية:
dateDifference('2015-02-08', '2018-07-30')
وإرجاع هذه النتيجة: "1268.00:00:00"
dayOfMonth
إرجاع أيام الشهر من الطابع الزمني.
dayOfMonth('<timestamp>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < يوم من الشهر> | Integer | أيام الشهر من الطابع الزمني المحدد |
Example
يسترجع هذا المثال عدد أيام الشهر من هذا الطابع الزمني:
dayOfMonth('2018-03-15T13:27:36Z')
وإرجاع هذه النتيجة: 15
dayOfWeek
إرجاع أيام الأسبوع من الطابع الزمني.
dayOfWeek('<timestamp>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < يوم من الأسبوع> | Integer | أيام الأسبوع من الطابع الزمني المحدد حيث الأحد هو 0، الاثنين هو 1، وهكذا |
Example
يسترجع هذا المثال عدد أيام الأسبوع من هذا الطابع الزمني:
dayOfWeek('2018-03-15T13:27:36Z')
وإرجاع هذه النتيجة: 4
dayOfYear
إرجاع أيام السنة من الطابع الزمني.
dayOfYear('<timestamp>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < يوم من السنة> | Integer | أيام السنة من الطابع الزمني المحدد |
Example
يسترجع هذا المثال عدد أيام السنة من هذا الطابع الزمني:
dayOfYear('2018-03-15T13:27:36Z')
وإرجاع هذه النتيجة: 74
decimal
أعد رقمًا عشريًا في سلسلة كرقم عشري. يمكنك استخدام هذه الدالة عند العمل مع البيانات التي تتطلب دقة عشرية وأيضًا كإدخال لدالات المقارنة المنطقية والدالات الرياضية. لالتقاط الدقة والحفاظ عليها عند استخدام النتيجة من الدالة decimal() ، قم بتضمين أي إخراج عشري مع دالة السلسلة. يظهر هذا الاستخدام في الأمثلة التالية الموضحة أدناه حيث يمكن أن تفقد الدقة إذا استخدمت النتيجة العشرية كرقم.
Note
الدقة العشرية التي تمت مناقشتها في سياق هذه الدالة ووقت تشغيل Azure Logic Apps هي نفسها الدقة العشرية NET.
decimal('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | العدد العشري في سلسلة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عشري> | رقم عشري | العدد العشري لسلسلة الإدخال |
المثال 1
ينشئ هذا المثال عددًا عشريًا يُستخدم كرقم:
decimal('1.2345678912312131') // Returns 1.234567891231213.
مثال 2
ينشئ هذا المثال عددًا عشريًا ثم يحول النتيجة إلى سلسلة للحفاظ على الدقة:
string(decimal('1.2345678912312131')) // Returns "1.2345678912312131".
مثال 3
يستخدم هذا المثال دالة رياضية على رقمين عشريين ويستخدم النتيجة كرقم:
add(decimal('1.2345678912312131'), decimal('1.2345678912312131')) // Returns 2.469135782462426.
مثال 4
يستخدم هذا المثال دالة رياضية على رقمين عشريين ويحول النتيجة إلى سلسلة للحفاظ على الدقة:
string(add(decimal('1.2345678912312131'), decimal('1.2345678912312131'))) // Returns "2.4691357824624262".
decodeBase64 (مهمل)
هذه الدالة مهملة، لذا استخدم base64ToString() بدلا من ذلك.
decodeDataUri
إرجاع الإصدار الثنائي لمعرف موارد منتظم (URI) للبيانات. ضع في اعتبارك استخدام dataUriToBinary()، بدلا من decodeDataUri(). على الرغم من أن كلتا الدالتين تعملان بنفس الطريقة، يفضل استخدام dataUriToBinary().
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال في المصمم، فيمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة ترميز Base64 وفك ترميزه.
decodeDataUri('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | سلسلة URI للبيانات التي يجب فك ترميزها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < binary-for-data-uri> | String | الإصدار الثنائي لسلسلة URI للبيانات |
Example
يسترجع هذا المثال الإصدار الثنائي لـ URI للبيانات:
decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')
وإرجاع هذه النتيجة: "hello"
decodeUriComponent
إرجاع سلسلة استبدال أحرف الإلغاء بإصدارات غير مرمزة.
decodeUriComponent('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المكونة من أحرف الإلغاء التي يجب فك ترميزها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < فك ترميز uri> | String | السلسلة المحدثة المكونة من أحرف الإلغاء التي تم فك ترميزها |
Example
يستبدل هذا المثال أحرف الإلغاء في هذه السلسلة بإصدارات تم فك ترميزها:
decodeUriComponent('https%3A%2F%2Fcontoso.com')
وإرجاع هذه النتيجة: "https://contoso.com"
div
إرجاع الناتج من قسمة رقمين. للحصول على النتيجة المتبقية، راجع mod().
div(<dividend>, <divisor>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < عائد> | Yes | عدد صحيح أو عائم | الرقم المراد قسمته على القاسم |
| < القاسم> | Yes | عدد صحيح أو عائم | الرقم الذي يقسم المقسوم، ولكن لا يمكن أن يكون صفرا |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < النتيجة المقتبسة> | عدد صحيح أو عائم | نتيجة قسمة الرقم الأول على الرقم الثاني. إذا كان المقسوم أو المقسوم عليه يحتوي على نوع عدد عشري، فإن النتيجة لها نوع عدد عشري. ملاحظة: لتحويل النتيجة العائمة إلى عدد صحيح، حاول إنشاء دالة واستدعاءها في Azure من تطبيق المنطق الخاص بك. |
المثال 1
كلا المثالين يعيدان هذه القيمة بنوع عدد صحيح: 2
div(10,5)
div(11,5)
مثال 2
كلا المثالين يعيدان هذه القيمة بنوع عدد عشري: 2.2
div(11,5.0)
div(11.0,5)
E
encodeUriComponent
قم بإرجاع إصدار مرمز باستخدام معرّف الموارد المنتظم (URI) لسلسلة من خلال استبدال أحرف URL غير الآمنة بأحرف الإلغاء. ضع في اعتبارك استخدام uriComponent()، بدلا من encodeUriComponent(). على الرغم من أن كلتا الدالتين تعملان بنفس الطريقة، يفضل استخدام uriComponent().
Note
ينفذ Azure Logic Apps تلقائيًا أو ضمنيًا ترميز وفك ترميز base64، لذلك لا يتعين عليك إجراء هذه التحويلات يدويًا باستخدام دالات الترميز وفك الترميز. ومع ذلك، إذا كنت تستخدم هذه الدالات على أي حال في المصمم، فيمكن أن تواجه سلوكيات عرض غير متوقعة في المصمم. تؤثر هذه السلوكيات على رؤية الدالات فقط وليس تأثيرها ما لم تقم بتحرير قيم معلمات الدالات، ما يزيل الدالات وتأثيراتها من التعليمات البرمجية الخاصة بك. للمزيد من المعلومات، يرجى مراجعة ترميز Base64 وفك ترميزه.
encodeUriComponent('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المطلوب تحويلها إلى تنسيق مرمز بـ URI |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < encoded-uri> | String | السلسلة المرمزة باستخدام URI مع أحرف الإلغاء |
Example
ينشئ هذا المثال إصدار مرمز باستخدام URI لهذه السلسلة:
encodeUriComponent('https://contoso.com')
وإرجاع هذه النتيجة: "https%3A%2F%2Fcontoso.com"
empty
التحقق مما إذا كانت المجموعة فارغة أم لا. إرجاع القيمة true عندما تكون المجموعة فارغة، أو إرجاع القيمة false عندما لا تكون فارغة.
empty('<collection>')
empty([<collection>])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف أو كائن | المجموعة التي يجب التحقق منها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما تكون المجموعة فارغة. إرجاع القيمة false عندما لا تكون فارغة. |
Example
تحقق هذه الأمثلة ما إذا كانت المجموعات المحددة فارغة:
empty('')
empty('abc')
وإرجاع هذه النتائج:
- المثال الأول: تمرير سلسلة فارغة، بحيث ترجع قيمة الدالة
true. - المثال الثاني: تمرير السلسلة "abc"، بحيث ترجع قيمة الدالة
false.
endsWith
تحقق ما إذا كانت سلسلة تنتهي بسلسلة فرعية معينة. يتم إرجاع القيمة true عند العثور على سلسلة فرعية أو إرجاع القيمة false عند عدم العثور عليها. هذه الدالة ليست حساسة لحالة الأحرف.
endsWith('<text>', '<searchText>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي يجب التحقق منها |
| < نص البحث> | Yes | String | السلسلة الفرعية النهائية المطلوب البحث عنها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عند العثور على السلسلة الفرعية النهائية. إرجاع القيمة false عند عدم العثور عليه. |
المثال 1
يتحقق هذا المثال ما إذا كانت سلسلة "hello" تنتهي بسلسلة "world":
endsWith('hello world', 'world')
وإرجاع هذه النتيجة: true
مثال 2
يتحقق هذا المثال ما إذا كانت سلسلة "hello" تنتهي بسلسلة "universe":
endsWith('hello world', 'universe')
وإرجاع هذه النتيجة: false
equals
تحقق مما إذا كانت كل من القيم أو التعبيرات أو العناصر متكافئة. إرجاع القيمة true عندما تكون كلاهما متساويين، أو إرجاع القيمة false عندما لا يكونان متساويين.
equals('<object1>', '<object2>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < object1>, <object2> | Yes | Various | القيم أو التعبيرات أو الكائنات التي يجب مقارنتها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما يكون كلاهما مساوياً. إرجاع القيمة false عندما لا يكون مساوياً. |
Example
تحقق هذه الأمثلة مما إذا كانت الإدخالات المحددة متساوية.
equals(true, 1)
equals('abc', 'abcd')
وإرجاع هذه النتائج:
- المثال الأول: كلتا القيمتين متساويتان، وبالتالي ترجع الدالة
true. - المثال الثاني: كلتا القيمتين غير متساويتين، وبالتالي ترجع الدالة
false.
F
first
إرجاع العنصر الأول من سلسلة أو صفيف.
first('<collection>')
first([<collection>])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف | المجموعة التي يمكن العثور فيها على العنصر الأول |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عنصر المجموعة الأول> | Any | العنصر الأول في المجموعة |
Example
تبحث هذه الأمثلة عن العنصر الأول في هذه المجموعات:
first('hello')
first(createArray(0, 1, 2))
وإرجاع هذه النتائج:
- المثال الأول:
"h" - المثال الثاني:
0
float
تحويل إصدار سلسلة لرقم الفاصلة العائمة إلى رقم فاصلة عائمة فعلية. يمكنك استخدام هذه الوظيفة فقط عند تمرير معلمات مخصصة إلى تطبيق، على سبيل المثال، سير عمل تطبيق منطقي أو تدفق Power Automate. لتحويل سلاسل الفاصلة العائمة الممثلة بتنسيقات خاصة باللغة المحلية، يمكنك اختياريا تحديد رمز إعدادات RFC 4646 المحلية.
float('<value>', '<locale>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة التي تحتوي على رقم عشري صالح للتحويل. القيم الدنيا والقصوى هي نفس حدود نوع بيانات العدد العشري. |
| < موقع> | No | String | رمز إعدادات RFC 4646 المحلية المراد استخدامه. إذا لم يتم تحديدها، يتم استخدام الإعدادات المحلية الافتراضية. إذا لم تكن اللغة المحلية قيمة صالحة، يتم إنشاء خطأ بأن اللغة المتوفرة غير صالحة أو لا تحتوي على إعدادات محلية مقترنة. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة عائمة> | Float | الرقم العشري للسلسلة المحددة. القيم الدنيا والقصوى هي نفس حدود نوع بيانات العدد العشري. |
المثال 1
ينشئ هذا المثال إصدار سلسلة لرقم الفاصلة العائمة هذا:
float('10,000.333')
وإرجاع هذه النتيجة: 10000.333
مثال 2
ينشئ هذا المثال إصدار سلسلة لرقم الفاصلة العائمة على النمط الألماني هذا:
float('10.000,333', 'de-DE')
وإرجاع هذه النتيجة: 10000.333
مثال 3
أمثلة على الإدخالات الصالحة بشكل غير متوقع:
float('12,3,4,5678') //Returns 12345678
float('1234567,8+') //Returns 12345678
float('12345,6,78,-') //Returns -12345678
float('-12,345,678,') //Returns -12345678
float('12345678.-') //Returns -12345678
float('.12345678') //Returns 0.12345678
formatDateTime
إرجاع طابع زمني بالتنسيق المحدد.
formatDateTime('<timestamp>', '<format>'?, '<locale>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. |
| < موقع> | No | String | إعدادات محلية للاستخدام. في حالة عدم تحديدها، فإن القيمة هي en-us. إذا لم تكن القيمة المحلية قيمة صالحة، يتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المصلح> | String | الطابع الزمني المحدث بالتنسيق المحدد والإعدادات المحلية، في حالة تحديده. |
Examples
formatDateTime('03/15/2018') // Returns '2018-03-15T00:00:00.0000000'.
formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss') // Returns '2018-03-15T12:00:00'.
formatDateTime('01/31/2016', 'dddd MMMM d') // Returns 'Sunday January 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-fr') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-FR') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'es-es') // Returns 'domingo enero 31'.
formDataMultiValues
إرجاع صفيف بقيم تطابق اسم مفتاح في بيانات النموذج أو الإخراج المشفر بالنموذج .
formDataMultiValues('<actionName>', '<key>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | الإجراء الذي يحتوي إخراجه على القيمة الأساسية التي تريدها |
| < مفتاح> | Yes | String | اسم المفتاح الذي ترغب في قيمته |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<قيم الصفيف مع المفتاح>] | Array | صفيف بكل القيم التي تطابق المفتاح المحدد |
Example
ينشئ هذا المثال صفيفًا من قيمة المفتاح «الموضوع» في إخراج بيانات النموذج أو ترميز النموذج الخاص بالإجراء المحدد:
formDataMultiValues('Send_an_email', 'Subject')
ويرجع نص الموضوع في صفيف، على سبيل المثال: ["Hello world"]
formDataValue
إرجاع قيمة واحدة تطابق اسم مفتاح في بيانات النموذج أو إخراج ترميز النموذج الخاص بالإجراء. إذا عثرت الدالة على أكثر من تطابق، فستتسبب هذه الدالة في حدوث خطأ.
formDataValue('<actionName>', '<key>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | الإجراء الذي يحتوي إخراجه على القيمة الأساسية التي تريدها |
| < مفتاح> | Yes | String | اسم المفتاح الذي ترغب في قيمته |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المفتاح> | String | القيمة الموجودة في مفتاح محدد |
Example
ينشئ هذا المثال سلسلة من قيمة المفتاح «الموضوع» في إخراج بيانات النموذج أو ترميز النموذج الخاص بالإجراء المحدد:
formDataValue('Send_an_email', 'Subject')
ويرجع نص الموضوع كسلسلة، على سبيل المثال: "Hello world"
formatNumber
أعد رقمًا كسلسلة تستند إلى التنسيق المحدد.
formatNumber(<number>, <format>, <locale>?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < رقم> | Yes | عدد صحيح أو مزدوج | القيمة التي ترغب في تنسيقها. |
| < تنسيق> | Yes | String | سلسلة تنسيق مركّبة تحدد التنسيق الذي تريد استخدامه. للحصول على سلاسل التنسيق الرقمي المدعومة، يرجى مراجعة سلاسل التنسيق الرقمي القياسية، والتي يدعمها number.ToString(<format>, <locale>). |
| < موقع> | No | String | الإعدادات المحلية لاستخدامها كما هو مدعوم من جانب number.ToString(<format>, <locale>). في حالة عدم تحديدها، فإن القيمة هي en-us. إذا لم تكن القيمة المحلية قيمة صالحة، يتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < رقم منسق> | String | الرقم المحدد كسلسلة بالتنسيق الذي حددته. يمكنك تحويل هذه القيمة المرجعة إلىint أو float. |
المثال 1
بافتراض أنك تريد تنسيق الرقم 1234567890. ينسق هذا المثال الرقم الموضح كسلسلة «1,234,567,890,00».
formatNumber(1234567890, '#,##0.00', 'en-US')
*مثال 2"
بافتراض أنك تريد تنسيق الرقم 1234567890. ينسق هذا المثال الرقم إلى السلسلة «1,234,567,890,00».
formatNumber(1234567890, '#,##0.00', 'is-IS')
مثال 3
بافتراض أنك تريد تنسيق الرقم 17.35. ينسق هذا المثال الرقم إلى السلسلة «17.35دولارًا».
formatNumber(17.35, 'C2')
مثال 4
بافتراض أنك تريد تنسيق الرقم 17.35. ينسق هذا المثال الرقم إلى السلسلة «17,35 كرونة سويدية».
formatNumber(17.35, 'C2', 'is-IS')
G
getFutureTime
إرجاع الطابع الزمني الحالي بالإضافة إلى وحدات الوقت المحددة.
getFutureTime(<interval>, <timeUnit>, <format>?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < فترة> | Yes | Integer | عدد الوحدات الزمنية المطلوب إضافتها |
| < وحدة زمنية> | Yes | String | وحدة الوقت التي يجب استخدامها مع الفاصل الزمني: "الثانية"، "الدقيقة"، "الساعة"، "اليوم"، "الأسبوع"، "الشهر"، "السنة" |
| < تنسيق> | No | String | إما محدد تنسيق فردي أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ يفيد بأن التنسيق المقدم غير صالح ويجب أن يكون سلسلة تنسيق رقمية. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني الحالي بالإضافة إلى عدد الوحدات الزمنية المحددة |
المثال 1
افترض أن الطابع الزمني الحالي هو "2018-03-01T00:00:00.0000000Z". يضيف هذا المثال خمسة أيام إلى هذا الطابع الزمني:
getFutureTime(5, 'Day')
وإرجاع هذه النتيجة: "2018-03-06T00:00:00.0000000Z"
مثال 2
افترض أن الطابع الزمني الحالي هو "2018-03-01T00:00:00.0000000Z". يضيف هذا المثال خمسة أيام ويحول النتيجة إلى تنسيق "D":
getFutureTime(5, 'Day', 'D')
وإرجاع هذه النتيجة: "Tuesday, March 6, 2018"
getPastTime
إرجاع الطابع الزمني الحالي مطروحاً منه الوحدات الزمنية المحددة.
getPastTime(<interval>, <timeUnit>, <format>?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < فترة> | Yes | Integer | عدد الوحدات الزمنية المحددة المطلوب طرحها |
| < وحدة زمنية> | Yes | String | وحدة الوقت التي يجب استخدامها مع الفاصل الزمني: "الثانية"، "الدقيقة"، "الساعة"، "اليوم"، "الأسبوع"، "الشهر"، "السنة" |
| < تنسيق> | No | String | إما محدد تنسيق فردي أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ يفيد بأن التنسيق المقدم غير صالح ويجب أن يكون سلسلة تنسيق رقمية. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني الحالي مطروحاً منه العدد المحدد للوحدات الزمنية |
المثال 1
افترض أن الطابع الزمني الحالي هو "2018-02-01T00:00:00.0000000Z". يطرح هذا المثال خمسة أيام من هذا الطابع الزمني:
getPastTime(5, 'Day')
وإرجاع هذه النتيجة: "2018-01-27T00:00:00.0000000Z"
مثال 2
افترض أن الطابع الزمني الحالي هو "2018-02-01T00:00:00.0000000Z". يطرح هذا المثال خمسة أيام ثم يحول النتيجة إلى تنسيق "D":
getPastTime(5, 'Day', 'D')
وإرجاع هذه النتيجة: "Saturday, January 27, 2018"
greater
التحقق مما إذا كانت القيمة الأولى أكبر من القيمة الثانية. إرجاع القيمة true عندما تكون القيمة الأولى أكثر أو إرجاع القيمة false عندما تكون أقل.
greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | عدد صحيح أو عائم أو سلسلة | القيمة الأولى للتحقق مما إذا كانت أكبر من القيمة الثانية |
| < مقارنة> | Yes | عدد صحيح أو عائم أو سلسلة على التوالي | قيمة المقارنة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما تكون القيمة الأولى أكبر من القيمة الثانية. إرجاع القيمة false عندما تكون القيمة الأولى مساوية أو أقل من القيمة الثانية. |
Example
تحقق هذه الأمثلة ما إذا كانت القيمة الأولى أكبر من القيمة الثانية:
greater(10, 5)
greater('apple', 'banana')
وإرجاع هذه النتائج:
- المثال الأول:
true - المثال الثاني:
false
greaterOrEquals
التحقق مما إذا كانت القيمة الأولى أكبر من أو مساوية للقيمة الثانية. إرجاع القيمة true عندما تكون القيمة الأولى أكبر أو تساوي أو إرجاع القيمة false عندما تكون القيمة الأولى أقل.
greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | عدد صحيح أو عائم أو سلسلة | القيمة الأولى للتحقق مما إذا كانت أكبر من أو تساوي القيمة الثانية |
| < مقارنة> | Yes | عدد صحيح أو عائم أو سلسلة على التوالي | قيمة المقارنة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما تكون القيمة الأولى أكبر من القيمة الثانية أو مساوية لها. إرجاع القيمة false عندما تكون القيمة الأولى أقل من القيمة الثانية. |
Example
تحقق هذه الأمثلة ما إذا كانت القيمة الأولى أكبر من أو تساوي القيمة الثانية:
greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')
وإرجاع هذه النتائج:
- المثال الأول:
true - المثال الثاني:
false
guid
إنشاء معرف فريد عمومي (GUID) كسلسلة، على سبيل المثال، "c2ecc88d-88c8-4096-912c-d6f2e2b138ce":
guid()
يمكنك كذلك تحديد تنسيق مختلف للمعرف الفريد العمومي غير التنسيق الافتراضي " D "، وهو 32 رقماً مفصولاً بالواصلات.
guid('<format>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تنسيق> | No | String | محدد تنسيق واحد ل GUID الذي تم إرجاعه. التنسيق الافتراضي هو "D"، ولكن يمكنك استخدام "N" أو "D"أو "B" أو"P" أو "X". |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة GUID> | String | المعرف الفريد العمومي الذي تم إنشاؤه عشوائياً |
Example
ينشئ هذا المثال نفس المعرف الفريد العمومي ولكن على هيئة 32 رقماً مفصولاً بواصلات ومحاطاً بأقواس:
guid('P')
وإرجاع هذه النتيجة: "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"
I
if
التحقق مما إذا كان التعبير صحيحاً أم خطأ. بناءً على النتيجة، قم بإرجاع قيمة محددة. يتم تقييم المعلمات من اليسار إلى اليمين.
if(<expression>, <valueIfTrue>, <valueIfFalse>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تعبير> | Yes | Boolean | التعبير الذي يجب التحقق منه |
| < valueIfTrue> | Yes | Any | القيمة التي يجب إرجاعها عندما يكون التعبير صحيحاً |
| < valueIfFalse> | Yes | Any | القيمة التي يجب إرجاعها عندما يكون التعبير غير صحيح |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < القيمة المرجعة المحددة> | Any | القيمة المحددة التي تُرجع بناءً على ما إذا كان التعبير صحيحاً أم خاطئاً |
Example
يرجع هذا المثال "yes" لأن التعبير المحدد يرجع بالقيمة إلى true.
وإلا، يرجع المثال "no":
if(equals(1, 1), 'yes', 'no')
indexOf
إرجاع موضع البداية أو قيمة الفهرس لسلسلة فرعية. هذه الدالة ليست حساسة لحالة الأحرف، وتبدأ الفهارس بالرقم 0.
indexOf('<text>', '<searchText>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تحتوي على السلسلة الفرعية للبحث عنها |
| < نص البحث> | Yes | String | السلسلة الفرعية المطلوب البحث عنها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة الفهرس> | Integer | موضع البداية أو قيمة الفهرس للسلسلة الفرعية المحددة. في حالة عدم العثور على السلسلة، يرجع الرقم -1. |
Example
يبحث هذا المثال عن قيمة فهرس البداية للسلسلة الفرعية "world" في سلسلة "hello world":
indexOf('hello world', 'world')
وإرجاع هذه النتيجة: 6
int
حول إصدار السلسلة من عدد صحيح إلى عدد صحيح حقيقي.
int('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | إصدار سلسلة للعدد الصحيح المراد تحويله. تعد القيم الدنيا والقصوى هي نفس الحدود لنوع بيانات العدد الصحيح. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عدد صحيح-نتيجة> | Integer | إصدار عدد صحيح للسلسلة المحددة. تعد القيم الدنيا والقصوى هي نفس الحدود لنوع بيانات العدد الصحيح. |
Example
ينشئ هذا المثال إصدار عدد صحيح للسلسلة "10":
int('10')
وإرجاع هذه النتيجة: 10
isFloat
إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة. بشكل افتراضي، تستخدم هذه الدالة الثقافة الثابتة لتنسيق الفاصلة العائمة. لتحديد أرقام الفاصلة العائمة الممثلة في تنسيقات أخرى خاصة باللغة المحلية، يمكنك اختياريا تحديد رمز إعدادات RFC 4646 المحلية.
isFloat('<string>', '<locale>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة التي يجب فحصها |
| < موقع> | No | String | رمز إعدادات RFC 4646 المحلية المراد استخدامه |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة منطقية> | Boolean | قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة |
المثال 1
يتحقق هذا المثال مما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة في الثقافة غير المتباينة:
isFloat('10,000.00')
وإرجاع هذه النتيجة: true
مثال 2
يتحقق هذا المثال مما إذا كانت السلسلة عبارة عن رقم فاصلة عائمة في الإعدادات المحلية الألمانية:
isFloat('10.000,00', 'de-DE')
وإرجاع هذه النتيجة: true
isInt
إرجاع قيمة منطقية تشير إلى ما إذا كانت السلسلة عبارة عن عدد صحيح.
isInt('<string>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < خيط> | Yes | String | السلسلة التي يجب فحصها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة منطقية> | Boolean | قيمة منطقية تشير إلى ما إذا كانت السلسلة عددا صحيحا |
Example
يتحقق هذا المثال مما إذا كانت السلسلة عبارة عن عدد صحيح:
isInt('10')
وإرجاع هذه النتيجة: true
item
عند استخدامها داخل إجراء متكرر على صفيف أعد العنصر الحالي في الصفيف أثناء التكرار الحالي للإجراء. بإمكانك أيضًا الحصول على القيم من خصائص هذا العنصر.
item()
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عنصر الصفيف الحالي> | Any | العنصر الحالي في الصفيف لتكرار الإجراء الحالي |
Example
يحصل هذا المثال على العنصر body من الرسالة الحالية لإجراء «إرسال رسالة بريد إلكتروني» داخل التكرار الحالي لحلقة for-each:
item().body
items
أعد العنصر الحالي من كل دورة في تكرار for-each. استخدم هذه الدالة داخل تكرار for-each.
items('<loopName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم التكرار الحلقي> | Yes | String | الاسم لتكرار for-each |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < بند> | Any | عنصر من الدورة الحالية في تكرار for-each المحدد |
Example
يحصل هذا المثال على العنصر الحالي من تكرار for-each المحدد:
items('myForEachLoopName')
iterationIndexes
أعد قيمة الفهرس للتكرار الحالي داخل تكرار Until. يمكنك استخدام هذه الدالة داخل تكرار Until المتداخل.
iterationIndexes('<loopName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم التكرار الحلقي> | Yes | String | اسم تكرار Until |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < فهرس> | Integer | قيمة الفهرس للتكرار الحالي داخل تكرار Until المحدد |
Example
ينشئ هذا المثال متغير عداد ويزيد ذلك المتغير بمقدار واحد خلال كل تكرار في تكرار Until حتى تصل قيمة العداد إلى خمسة. ينشئ المثال أيضًا متغيرًا يتتبع الفهرس الحالي لكل تكرار. أثناء كل تكرار في تكرار Until، يزيد المثال قيمة العداد ثم يعين قيمة العداد إلى قيمة الفهرس الحالية ثم يزيد قيمة العداد. أثناء التكرار، يشير هذا المثال إلى فهرس التكرار الحالي باستخدام الدالة iterationIndexes:
iterationIndexes('Until_Max_Increment')
{
"actions": {
"Create_counter_variable": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "myCounter",
"type": "Integer",
"value": 0
}
]
},
"runAfter": {}
},
"Create_current_index_variable": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "myCurrentLoopIndex",
"type": "Integer",
"value": 0
}
]
},
"runAfter": {
"Create_counter_variable": [ "Succeeded" ]
}
},
"Until_Max_Increment": {
"type": "Until",
"actions": {
"Assign_current_index_to_counter": {
"type": "SetVariable",
"inputs": {
"name": "myCurrentLoopIndex",
"value": "@variables('myCounter')"
},
"runAfter": {
"Increment_variable": [ "Succeeded" ]
}
},
"Compose": {
"inputs": "'Current index: ' @{iterationIndexes('Until_Max_Increment')}",
"runAfter": {
"Assign_current_index_to_counter": [
"Succeeded"
]
},
"type": "Compose"
},
"Increment_variable": {
"type": "IncrementVariable",
"inputs": {
"name": "myCounter",
"value": 1
},
"runAfter": {}
}
},
"expression": "@equals(variables('myCounter'), 5)",
"limit": {
"count": 60,
"timeout": "PT1H"
},
"runAfter": {
"Create_current_index_variable": [ "Succeeded" ]
}
}
}
}
J
json
أعد قيمة نوع JavaScript Object Notation (JSON) أو عنصر أو مصفوفة عناصر لسلسلة أو XML.
json('<value>')
json(xml('value'))
Important
بدون مخطط XML الذي يحدد بنية الإخراج، يمكن أن تعرض الدالة النتائج حيث تختلف البنية اختلافًا كبيرًا عن التنسيق المتوقع، اعتمادًا على الإدخال.
يجعل هذا السلوك هذه الدالة غير مناسبة للسيناريوهات التي يلزم أن يتوافق فيها الإخراج مع عقد محدد جيدًا، على سبيل المثال، في أنظمة أو حلول الأعمال المهمة.
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | السلسلة أو XML | السلسلة أو XML للتحويل |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة JSON> | نوع أو عنصر أو صفيف أصلي خاص بـ JSON | قيمة نوع JSON الأصلي أو عنصر أو صفيف عناصر من سلسلة الإدخال أو XML. - إذا قمت بتمرير XML الذي يحتوي على عنصر تابع واحد في العنصر الجذر، ترجع الدالة عنصر JSON واحدا لهذا العنصر التابع. - إذا قمت بتمرير XML يحتوي على العديد من العناصر التابعة في العنصر الجذر، فستعيد الدالة صفيفًا يحتوي على عناصر JSON لتلك العناصر التابعة. - إذا كانت السلسلة خالية، فإن الدالة ترجع عنصرًا فارغًا. |
المثال 1
يحول هذا المثال هذه السلسلة إلى قيمة JSON:
json('[1, 2, 3]')
وإرجاع هذه النتيجة: [1, 2, 3]
مثال 2
يحول هذا المثال هذه السلسلة إلى JSON:
json('{"fullName": "Sophia Owen"}')
وإرجاع هذه النتيجة:
{
"fullName": "Sophia Owen"
}
مثال 3
يستخدم هذا المثال الدالتين json() وxml() لتحويل XML الذي يحتوي على عنصر تابع واحد في العنصر الجذر إلى عنصر JSON يسمى person لهذا العنصر التابع:
json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))
وإرجاع هذه النتيجة:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": {
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
}
}
}
مثال 4
يستخدم هذا المثال الدالتين json() وxml() لتحويل XML الذي يحتوي على عناصر تابعة متعددة في العنصر الجذر إلى صفيف يسمى person يحتوي على عناصر JSON لتلك العناصر التابعة:
json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> <person id="2"> <name>John Doe</name> <occupation>Engineer</occupation> </person> </root>'))
وإرجاع هذه النتيجة:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": [
{
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
},
{
"@id": "2",
"name": "John Doe",
"occupation": "Engineer"
}
]
}
}
intersection
إرجاع مجموعة تحتوي على العناصر الشائعة فقط عبر المجموعات المحددة. لكي تظهر في النتيجة، يجب أن يظهر عنصر في جميع المجموعات التي تم تمريرها إلى هذه الدالة. إذا كان عنصر واحد أو أكثر يحمل نفس الاسم، يظهر العنصر الأخير بهذا الاسم في النتيجة.
intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < المجموعة 1>، <المجموعة 2>، ... | Yes | صفيف أو كائن، ولكن ليس كليهما | المجموعات التي تريد العناصر الشائعة منها فقط |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < العناصر المشتركة> | صفيف أو كائن، على التوالي | مجموعة تحتوي على العناصر الشائعة فقط عبر المجموعات المحددة |
Example
يبحث هذا المثال عن العناصر الشائعة عبر هذه الصفائف:
intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))
وإرجاع صفيف بهذه العناصر فقط : [1, 2]
join
إرجاع سلسلة تحتوي على كافة العناصر من صفيف ولها كل حرف مفصول بمحدد.
join([<collection>], '<delimiter>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | Array | الصفيف الذي يحتوي على العناصر للانضمام |
| < محدد> | Yes | String | الفاصل الذي يظهر بين كل حرف في السلسلة الناتجة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < حرف 1><محدد><حرف 2><محدد>... | String | أنشئت السلسلة الناتجة من كافة العناصر في الصفيف المحدد. ملاحظة: يجب ألا يتجاوز طول النتيجة 104,857,600 حرف. |
Example
ينشئ هذا المثال سلسلة من جميع العناصر في هذا الصفيف من خلال الحرف المحدد كمحدد:
join(createArray('a', 'b', 'c'), '.')
وإرجاع هذه النتيجة: "a.b.c"
L
last
إرجاع العنصر الأخير من مجموعة.
last('<collection>')
last([<collection>])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف | المجموعة التي يمكن العثور فيها على العنصر الأخير |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عنصر المجموعة الأخير> | سلسلة أو صفيف، على التوالي | العنصر الأخير في المجموعة |
Example
تبحث هذه الأمثلة عن العنصر الأخير في هذه المجموعات:
last('abcd')
last(createArray(0, 1, 2, 3))
وإرجاع هذه النتائج:
- المثال الأول:
"d" - المثال الثاني:
3
lastIndexOf
إرجاع موضع البداية أو قيمة الفهرس لآخر تكرار لسلسة فرعية. هذه الدالة ليست حساسة لحالة الأحرف، وتبدأ الفهارس بالرقم 0.
lastIndexOf('<text>', '<searchText>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تحتوي على السلسلة الفرعية للبحث عنها |
| < نص البحث> | Yes | String | السلسلة الفرعية المطلوب البحث عنها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نهاية قيمة الفهرس> | Integer | موضع البداية أو قيمة الفهرس لآخر تكرار للسلسلة الفرعية المحددة. |
إذا كانت قيمة السلسلة أو السلسلة الفرعية فارغة، يحدث السلوك الموضح أدناه:
في حالة كانت قيمة السلسلة فقط فارغة، ترجع الدالة
-1.في حالة كانت قيم السلسلة والسلسلة الفرعية فارغة، ترجع الدالة
0.في حالة كانت قيمة السلسلة الفرعية فقط فارغة، ترجع الدالة طول السلسلة مطروحًا منه 1.
Examples
يبحث هذا المثال عن قيمة فهرس البداية للتكرار الأخير للسلسلة worldالفرعية في السلسلة hello world hello world. النتيجة التي أعيدت هي 18:
lastIndexOf('hello world hello world', 'world')
يفتقد هذا المثال معلمة السلسلة الفرعية، ويرجع قيمة 22 لأن قيمة سلسلة الإدخال (23) مطروحًا منها 1 أكبر من 0.
lastIndexOf('hello world hello world', '')
length
إرجاع عدد العناصر الموجودة في مجموعة.
length('<collection>')
length([<collection>])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف | المجموعة التي تحتوي على عناصر يجب عدها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطول أو العد> | Integer | عدد العناصر الموجودة في المجموعة |
Example
تحسب هذه الأمثلة عدد العناصر في هذه المجموعات:
length('abcd')
length(createArray(0, 1, 2, 3))
وإرجاع هذه النتيجة: 4
less
التحقق مما إذا كانت القيمة الأولى أقل من القيمة الثانية. إرجاع القيمة true عندما تكون القيمة الأولى أقل أو إرجاع القيمة false عندما تكون القيمة الأولى أكبر.
less(<value>, <compareTo>)
less('<value>', '<compareTo>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | عدد صحيح أو عائم أو سلسلة | القيمة الأولى للتحقق مما إذا كانت أقل من القيمة الثانية |
| < مقارنة> | Yes | عدد صحيح أو عائم أو سلسلة على التوالي | عنصر المقارنة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما تكون القيمة الأولى أقل من القيمة الثانية. إرجاع القيمة false عندما تكون القيمة الأولى مساوية أو أكبر من القيمة الثانية. |
Example
تتحقق هذه الأمثلة مما إذا كانت القيمة الأولى أقل من القيمة الثانية.
less(5, 10)
less('banana', 'apple')
وإرجاع هذه النتائج:
- المثال الأول:
true - المثال الثاني:
false
lessOrEquals
التحقق مما إذا كانت القيمة الأولى أقل من أو مساوية للقيمة الثانية. إرجاع القيمة true عندما تكون القيمة الأولى أقل أو تساوي أو إرجاع القيمة false عندما تكون القيمة الأولى أكبر.
lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | عدد صحيح أو عائم أو سلسلة | القيمة الأولى للتحقق مما إذا كانت أقل من أو تساوي القيمة الثانية |
| < مقارنة> | Yes | عدد صحيح أو عائم أو سلسلة على التوالي | عنصر المقارنة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عندما تكون القيمة الأولى أقل من القيمة الثانية أو مساوية لها. إرجاع القيمة false عندما تكون القيمة الأولى أكبر من القيمة الثانية. |
Example
تتحقق هذه الأمثلة مما إذا كانت القيمة الأولى أقل من أو تساوي القيمة الثانية.
lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')
وإرجاع هذه النتائج:
- المثال الأول:
true - المثال الثاني:
false
listCallbackUrl
أعد «عنوان URL لرد الاتصال» الذي يستدعي مشغلاً أو إجراءً. تعمل هذه الدالة فقط مع المشغلات والإجراءات الخاصة بنوعي موصل HttpWebhook و ApiConnectionWebhook ، ولكن ليس أنواع Manual و Recurrence و HTTP و APIConnection .
listCallbackUrl()
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عنوان URL لرد الاتصال> | String | عنوان URL الخاص برد الاتصال لمشغل أو إجراء |
Example
يوضح هذا المثال نموذج عنوان URL لرد الاتصال الذي يمكن أن تعيده هذه الدالة:
"https://prod-01.westus.logic.azure.com:443/workflows/<*workflow-ID*>/triggers/manual/run?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<*signature-ID*>"
M
max
إرجاع القيمة الأعلى من قائمة أو صفيف ذات أرقام متضمنة في كلا الطرفين.
max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < رقم 1>، <رقم 2>، ... | Yes | عدد صحيح أو عائم أو كلاهما | مجموعة الأرقام التي تريد منها أعلى قيمة |
| [<الرقم 1>، <رقم 2>، ...] | Yes | صفيف - عدد صحيح أو عائم أو كليهما | صفيف الأرقام التي تريد من خلالها أعلى قيمة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الحد الأقصى للقيمة> | عدد صحيح أو عائم | أعلى قيمة في الصفيف المحدد أو مجموعة الأرقام |
Example
تحصل هذه الأمثلة على أعلى قيمة من مجموعة الأرقام والصفيف:
max(1, 2, 3)
max(createArray(1, 2, 3))
وإرجاع هذه النتيجة: 3
min
إرجاع القيمة الأقل من مجموعة من الأرقام أو صفيف.
min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < رقم 1>، <رقم 2>، ... | Yes | عدد صحيح أو عائم أو كلاهما | مجموعة الأرقام التي تريد منها أدنى قيمة |
| [<الرقم 1>، <رقم 2>، ...] | Yes | صفيف - عدد صحيح أو عائم أو كليهما | مصفوفة الأرقام التي تريد منها أدنى قيمة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الحد الأدنى للقيمة> | عدد صحيح أو عائم | أدنى قيمة في مجموعة الأرقام المحددة أو الصفيف المحدد |
Example
تحصل هذه الأمثلة على أقل قيمة في مجموعة الأرقام والصفيف:
min(1, 2, 3)
min(createArray(1, 2, 3))
وإرجاع هذه النتيجة: 1
mod
إرجاع الباقي من قسمة رقمين. للحصول على نتيجة العدد الصحيح، راجع div().
mod(<dividend>, <divisor>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < عائد> | Yes | عدد صحيح أو عائم | الرقم المراد قسمته على القاسم |
| < القاسم> | Yes | عدد صحيح أو عائم | الرقم الذي يقسم المقسوم، ولكن لا يمكن أن يكون صفرا |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة نمطية> | عدد صحيح أو عائم | الباقي من قسمة الرقم الأول على الرقم الثاني |
المثال 1
يقسم هذا المثال الرقم الأول على الرقم الثاني:
mod(3, 2)
وإرجاع هذه النتيجة: 1
مثال 2
يوضح هذا المثال أنه إذا كانت إحدى القيمتين أو كلتيهما سالبة، فإن النتيجة تطابق علامة المقسوم:
mod(-5, 2)
mod(4, -3)
يعرض المثال هذه النتائج:
- المثال الأول:
-1 - المثال الثاني:
1
mul
إرجاع الناتج من ضرب رقمين.
mul(<multiplicand1>, <multiplicand2>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < ضرب 1> | Yes | عدد صحيح أو عائم | الرقم المراد ضربه في ضرب 2 |
| < ضرب 2> | Yes | عدد صحيح أو عائم | الرقم الذي يضاعف ضرب 1 |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة المنتج> | عدد صحيح أو عائم | حاصل ضرب الرقم الأول في الرقم الثاني |
Example
هذه الأمثلة لضرب الرقم الأول في الرقم الثاني:
mul(1, 2)
mul(1.5, 2)
وإرجاع هذه النتائج:
- المثال الأول:
2 - المثال الثاني
3
multipartBody
أعد النص الأساسي لجزء معين في إخراج إجراء يتكون من أجزاء متعددة.
multipartBody('<actionName>', <index>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | اسم الإجراء الذي يشتمل على إخراج بأجزاء متعددة |
| < فهرس> | Yes | Integer | قيمة الفهرس للجزء الذي تريده |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < جسم> | String | النص الأساسي الخاص بالجزء المحدد |
N
not
التحقق مما إذا كان التعبير غير صحيح. إرجاع true عندما يكون التعبير غير صحيح أو إرجاع false عندما يكون صحيحاً.
not(<expression>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تعبير> | Yes | Boolean | التعبير الذي يجب التحقق منه |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع true عندما يكون التعبير غير صحيح. إرجاع false عندما يكون التعبير صحيحاً. |
المثال 1
تتحقق هذه الأمثلة مما إذا كانت التعبيرات المحددة خاطئة:
not(false)
not(true)
وإرجاع هذه النتائج:
- المثال الأول: التعبير غير صحيح، وبالتالي ترجع الدالة
true. - المثال الثاني: التعبير صحيح، وبالتالي ترجع الدالة
false.
مثال 2
تتحقق هذه الأمثلة مما إذا كانت التعبيرات المحددة خاطئة:
not(equals(1, 2))
not(equals(1, 1))
وإرجاع هذه النتائج:
- المثال الأول: التعبير غير صحيح، وبالتالي ترجع الدالة
true. - المثال الثاني: التعبير صحيح، وبالتالي ترجع الدالة
false.
nthIndexOf
إرجاع موضع البداية أو قيمة الفهرس حيث يظهر التكرار nلسلسلة فرعية في سلسلة.
nthIndexOf('<text>', '<searchText>', <occurrence>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تشتمل على السلسلة الفرعية للبحث عنها |
| < نص البحث> | Yes | String | السلسلة الفرعية المطلوب البحث عنها |
| < حدوث> | Yes | Integer | رقم يحدد التكرار nللسلسلة الفرعية للبحث عنها. إذا كان التكرار سالبا، فابدأ البحث من النهاية. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة الفهرس> | Integer | موضع البداية أو قيمة الفهرس لحدوث nللسلسلة الفرعية المحددة. إذا لم يتم العثور على السلسلة الفرعية أو أقل من n تكرارات السلسلة الفرعية موجودة، فسترجع -1. |
Examples
nthIndexOf('123456789123465789', '1', 1) // Returns `0`.
nthIndexOf('123456789123465789', '1', 2) // Returns `9`.
nthIndexOf('123456789123465789', '12', 2) // Returns `9`.
nthIndexOf('123456789123465789', '6', 4) // Returns `-1`.
O
or
التحقق مما إذا كان هناك تعبير واحد على الأقل صحيح. أعد صحيح عندما يكون تعبير واحد على الأقل صحيحًا، أو أعد خطأ عندما تكون جميعها خطأ.
or(<expression1>, <expression2>, ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تعبير1>، <تعبير2>، ... | Yes | Boolean | التعبيرات التي يجب التحقق منها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع true عندما يكون تعبير واحد على الأقل صحيحاً. أعد خطأ عندما تكون جميع التعبيرات خطأ. |
المثال 1
تتحقق هذه الأمثلة مما إذا كان تعبير واحد على الأقل صحيحاً:
or(true, false)
or(false, false)
وإرجاع هذه النتائج:
- المثال الأول: تعبير واحد على الأقل صحيح، وبالتالي ترجع الدالة
true. - المثال الثاني: كلا التعبيرين غير صحيح، وبالتالي ترجع الدالة
false.
مثال 2
تتحقق هذه الأمثلة مما إذا كان تعبير واحد على الأقل صحيحاً:
or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))
وإرجاع هذه النتائج:
- المثال الأول: تعبير واحد على الأقل صحيح، وبالتالي ترجع الدالة
true. - المثال الثاني: كلا التعبيرين غير صحيح، وبالتالي ترجع الدالة
false.
outputs
أعد الإخراجات الخاصة بالإجراء في وقت التشغيل.
outputs('<actionName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم الإجراء> | Yes | String | اسم إخراج الإجراء الذي تريده |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الناتج> | String | الإخراج من الإجراء المحدد |
Example
يحصل هذا المثال على الإخراج من الإجراء Get userX :
outputs('Get_user')
وإرجاع هذه النتيجة:
{
"statusCode": 200,
"headers": {
"Pragma": "no-cache",
"Vary": "Accept-Encoding",
"x-ms-request-id": "a916ec8f52211265d98159adde2efe0b",
"X-Content-Type-Options": "nosniff",
"Timing-Allow-Origin": "*",
"Cache-Control": "no-cache",
"Date": "Mon, 09 Apr 2018 18:47:12 GMT",
"Set-Cookie": "ARRAffinity=b9400932367ab5e3b6802e3d6158afffb12fcde8666715f5a5fbd4142d0f0b7d;Path=/;HttpOnly;Domain=twitter-wus.azconn-wus.p.azurewebsites.net",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Type": "application/json; charset=utf-8",
"Expires": "-1",
"Content-Length": "339"
},
"body": {
"FullName": "Contoso Corporation",
"Location": "Generic Town, USA",
"Id": 283541717,
"UserName": "ContosoInc",
"FollowersCount": 172,
"Description": "Leading the way in transforming the digital workplace.",
"StatusesCount": 93,
"FriendsCount": 126,
"FavouritesCount": 46,
"ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
}
}
P
parameters
أعد قيمة المعلمة الموضحة في تعريف سير العمل الخاص بك.
parameters('<parameterName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم المعلمة> | Yes | String | اسم المعلمة التي ترغب في قيمتها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المعلمة> | Any | قيمة معلمة محددة |
Example
افترض أن لديك قيمة JSON هذه:
{
"fullName": "Sophia Owen"
}
يتناول هذا المثال قيمة المعلمة المحددة:
parameters('fullName')
وإرجاع هذه النتيجة: "Sophia Owen"
parseDateTime
استعد الطابع الزمني من سلسلة تحتوي على طابع زمني.
parseDateTime('<timestamp>', '<locale>'?, '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < موقع> | No | String | إعدادات محلية للاستخدام. في حالة عدم التحديد، فإن الإعدادات المحلية الافتراضية هي en-us. إذا لم تكن القيمة المحلية قيمة صالحة، يتم إنشاء خطأ. |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة عدم تحديد التنسيق، فحاول تحليله بتنسيقات متعددة متوافقة مع الإعدادات المحلية المتوفرة. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني الذي تم تحليله> | String | الطابع الزمني الذي تم تحليله بتنسيق "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. |
Examples
parseDateTime('20/10/2014', 'fr-fr') // Returns '2014-10-20T00:00:00.0000000'.
parseDateTime('20 octobre 2010', 'fr-FR') // Returns '2010-10-20T00:00:00.0000000'.
parseDateTime('martes 20 octubre 2020', 'es-es') // Returns '2020-10-20T00:00:00.0000000'.
parseDateTime('21052019', 'fr-fr', 'ddMMyyyy') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('20190521', 'fr-fr', 'yyyyMMdd') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('10/20/2014 15h', 'en-US', 'MM/dd/yyyy HH\h') // Returns '2014-10-20T15:00:00.0000000'.
R
rand
إرجاع عدد صحيح عشوائي من نطاق محدد، والذي يكون شاملاً فقط في نهاية البداية.
rand(<minValue>, <maxValue>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة الحد الأدنى> | Yes | Integer | أقل عدد صحيح في النطاق |
| < القيمة القصوى> | Yes | Integer | العدد الصحيح الذي يلي أعلى عدد صحيح في النطاق الذي يمكن أن ترجعه الدالة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة عشوائية> | Integer | تم إرجاع العدد الصحيح العشوائي من النطاق المحدد |
Example
يحصل هذا المثال على عدد صحيح عشوائي من النطاق المحدد، باستثناء القيمة القصوى:
rand(1, 5)
وإرجاع أحد هذه الأرقام كنتيجة: 1 أو 2 أو 3 أو 4
range
إرجاع صفيف عدد صحيح يبدأ من عدد صحيح محدد.
range(<startIndex>, <count>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < startIndex> | Yes | Integer | قيمة عدد صحيح تبدأ الصفيف كعنصر أول |
| < عد> | Yes | Integer | عدد الأعداد الصحيحة في الصفيف. يجب أن تكون قيمة المعلمة count عددًا صحيحًا موجبًا لا يتجاوز 100,000. ملاحظة: يجب ألا يتجاوز مجموع startIndex القيم و count 2,147,483,647. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<نتيجة >المدى] | Array | الصفيف ذو الأعداد الصحيحة يبدأ من الفهرس المحدد |
Example
ينشئ هذا المثال صفيف عدد صحيح يبدأ من الفهرس المحدد ويحتوي على عدد محدد من الأعداد الصحيحة:
range(1, 4)
وإرجاع هذه النتيجة: [1, 2, 3, 4]
removeProperty
أزل خاصية من عنصر JSON وأرجع العنصر المحدث. في حالة عدم وجود الخاصية التي تحاول إزالتها، ترجع الدالة العنصر الأصلي.
removeProperty(<object>, '<property>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON الذي تريد إزالة خاصية منه |
| < مال> | Yes | String | اسم الخاصية التي تريد إزالتها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < كائن محدث> | Object | عنصر JSON المحدث بدون الخاصية المحددة |
لإزالة خاصية تابعة من خاصية موجودة، استخدم بناء الجملة الموضح أدناه:
removeProperty(<object>['<parent-property>'], '<child-property>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON الذي تريد إزالة الخاصية منه |
| < خاصية الأصل> | Yes | String | اسم الخاصية الأصل مع الخاصية التابعة التي تريد إزالتها |
| < خاصية تابعة> | Yes | String | اسم الخاصية التابعة المراد إزالتها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < كائن محدث> | Object | عنصر JSON المحدث الذي أزلت خاصيته التابعة |
المثال 1
يزيل هذا المثال الخاصية middleName من كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON() ، ويعيد الكائن المحدث:
removeProperty(json('{ "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" }'), 'middleName')
إليك عنصر JSON الحالي:
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
إليك عنصر JSON المحدث:
{
"firstName": "Sophia",
"surName": "Owen"
}
مثال 2
يزيل هذا المثال الخاصية التابعة middleName من customerName خاصية أصل في كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON() وإرجاع الكائن المحدث:
removeProperty(json('{ "customerName": { "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" } }')['customerName'], 'middleName')
إليك عنصر JSON الحالي:
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
إليك عنصر JSON المحدث:
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
replace
استبدال سلسلة فرعية مع السلسلة المحددة، وإرجاع سلسلة النتائج. هذه الدالة حساسة لحالة الأحرف.
replace('<text>', '<oldText>', '<newText>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تحتوي على السلسلة الفرعية المراد استبدالها |
| < نص قديم> | Yes | String | السلسلة الفرعية المراد استبدالها |
| < نص جديد> | Yes | String | سلسلة الاستبدال |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نص محدث> | String | السلسلة المحدثة بعد استبدال السلسلة الفرعية في حالة عدم العثور على السلسلة الفرعية، فأعد السلسلة الأصلية. |
Example
يبحث هذا المثال عن السلسلة الفرعية "القديمة" في "السلسلة القديمة" ويستبدل "القديم" بـ "الجديد":
replace('the old string', 'old', 'new')
وإرجاع هذه النتيجة: "the new string"
result
أعد النتائج من إجراءات المستوى الأعلى في الإجراء ضمن النطاق المحدد، مثل الإجراء For_each، أو Until، أو Scope. تقبل الدالة result() معلمة واحدة، وهي اسم النطاق، وترجع صفيفًا يحتوي على معلومات من إجراءات المستوى الأول في هذا النطاق. تتضمن عناصر الإجراء هذه نفس سمات السمات التي ترجع بواسطة الدالة actions()، مثل وقت بدء الإجراء ووقت الانتهاء والحالة والإدخالات ومعرفات الارتباط والإخراجات.
Note
تقوم هذه الدالة بإرجاع المعلومات فقط من إجراءات المستوى الأول في الإجراء المحدد النطاق وليس من إجراءات متداخلة أعمق مثل إجراءات التبديل أو الشرط.
على سبيل المثال، يمكنك استخدام هذه الدالة للحصول على نتائج من الإجراءات الفاشلة بحيث يمكنك تشخيص الاستثناءات والتعامل معها. للمزيد من المعلومات، يرجى مراجعة الحصول على السياق والنتائج المتعلقة بالفشل.
result('<scopedActionName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم scopedActionName> | Yes | String | اسم الإجراء ضمن النطاق حيث تريد الإدخالات والإخراجات من إجراءات المستوى الأعلى داخل هذا النطاق |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عنصر الصفيف> | كائن الصفيف | صفيف يشتمل على صفائف من الإدخالات والإخراجات من كل إجراء من المستوى الأعلى داخل النطاق المحدد |
Example
يرجع هذا المثال الإدخالات والإخراجات من كل تكرار لإجراء HTTP داخل تكرار For_each باستخدام الدالة result() في الإجراء Compose:
{
"actions": {
"Compose": {
"inputs": "@result('For_each')",
"runAfter": {
"For_each": [
"Succeeded"
]
},
"type": "compose"
},
"For_each": {
"actions": {
"HTTP": {
"inputs": {
"method": "GET",
"uri": "https://httpstat.us/200"
},
"runAfter": {},
"type": "Http"
}
},
"foreach": "@triggerBody()",
"runAfter": {},
"type": "Foreach"
}
}
}
فيما يلي كيفية ظهور الصفيف الذي تم إرجاعه في المثال حيث يحتوي العنصر الخارجي outputs على الإدخالات والإخراجات من كل تكرار للإجراءات داخل الإجراء For_each.
[
{
"name": "HTTP",
"outputs": [
{
"name": "HTTP",
"inputs": {
"uri": "https://httpstat.us/200",
"method": "GET"
},
"outputs": {
"statusCode": 200,
"headers": {
"X-AspNetMvc-Version": "5.1",
"Access-Control-Allow-Origin": "*",
"Cache-Control": "private",
"Date": "Tue, 20 Aug 2019 22:15:37 GMT",
"Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
"Server": "Microsoft-IIS/10.0",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Length": "0"
},
"startTime": "2019-08-20T22:15:37.6919631Z",
"endTime": "2019-08-20T22:15:37.95762Z",
"trackingId": "6bad3015-0444-4ccd-a971-cbb0c99a7.....",
"clientTrackingId": "085863526764.....",
"code": "OK",
"status": "Succeeded"
}
},
{
"name": "HTTP",
"inputs": {
"uri": "https://httpstat.us/200",
"method": "GET"
},
"outputs": {
"statusCode": 200,
"headers": {
"X-AspNetMvc-Version": "5.1",
"Access-Control-Allow-Origin": "*",
"Cache-Control": "private",
"Date": "Tue, 20 Aug 2019 22:15:37 GMT",
"Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
"Server": "Microsoft-IIS/10.0",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Length": "0"
},
"startTime": "2019-08-20T22:15:37.6919631Z",
"endTime": "2019-08-20T22:15:37.95762Z",
"trackingId": "9987e889-981b-41c5-aa27-f3e0e59bf69.....",
"clientTrackingId": "085863526764.....",
"code": "OK",
"status": "Succeeded"
}
}
]
}
]
reverse
عكس ترتيب العناصر في مجموعة. عند استخدام هذه الدالة مع sort()، يمكنك فرز مجموعة بترتيب تنازلي.
reverse([<collection>])
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | Array | المجموعة التي يجب عكسها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<مجموعة محدثة>] | Array | المجموعة المعكوسة |
Example
يعكس هذا المثال صفيفا من الأعداد الصحيحة:
reverse(createArray(0, 1, 2, 3))
وإرجاع هذا الصفيف: [3,2,1,0]
S
setProperty
عين قيمة لخاصية عنصر JSON وأرجع العنصر المحدث. في حالة عدم وجود الخاصية التي تحاول تعيينها، تضاف الخاصية إلى العنصر. لإضافة خاصية جديدة، استخدم الدالة addProperty().
setProperty(<object>, '<property>', <value>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON الذي تريد تعيين خاصيته |
| < مال> | Yes | String | اسم الخاصية الحالية أو الجديدة المطلوب تعيينها |
| < قيمة> | Yes | Any | القيمة المراد تعيينها للخاصية المحددة |
لتعيين الخاصية التابعة في عنصر تابع، استخدم استدعاء متداخل setProperty() بدلاً من ذلك. خلاف ذلك، ترجع الدالة العنصر التابع فقط كإخراج.
setProperty(<object>, '<parent-property>', setProperty(<object>['parentProperty'], '<child-property>', <value>))
| Parameter | Required | Type | Description |
|---|---|---|---|
| < كائن> | Yes | Object | عنصر JSON الذي تريد تعيين خاصيته |
| < خاصية الأصل> | Yes | String | اسم الخاصية الأصل مع الخاصية التابعة التي تريد تعيينها |
| < خاصية تابعة> | Yes | String | اسم الخاصية التابعة المطلوب تعيينها |
| < قيمة> | Yes | Any | القيمة المراد تعيينها للخاصية المحددة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < كائن محدث> | Object | عنصر JSON المحدث الذي تحدد خاصيته |
المثال 1
يعين هذا المثال الخاصية surName في كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON(). تعين الدالة القيمة المحددة للخاصية وترجع العنصر المحدث:
setProperty(json('{ "firstName": "Sophia", "surName": "Owen" }'), 'surName', 'Hartnett')
إليك عنصر JSON الحالي:
{
"firstName": "Sophia",
"surName": "Owen"
}
إليك عنصر JSON المحدث:
{
"firstName": "Sophia",
"surName": "Hartnett"
}
مثال 2
يعين هذا المثال الخاصية surName التابعة للخاصية customerName الأصل في كائن JSON، والذي يتم تحويله من سلسلة إلى JSON باستخدام الدالة JSON(). تعين الدالة القيمة المحددة للخاصية وترجع العنصر المحدث:
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'surName', 'Hartnett'))
إليك عنصر JSON الحالي:
{
"customerName": {
"firstName": "Sophie",
"surName": "Owen"
}
}
إليك عنصر JSON المحدث:
{
"customerName": {
"firstName": "Sophie",
"surName": "Hartnett"
}
}
skip
إزالة العناصر من مقدمة المجموعة، وإعادة جميع العناصر الأخرى.
skip([<collection>], <count>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | Array | المجموعة التي تريد إزالة عناصرها |
| < عد> | Yes | Integer | عدد صحيح موجب لعدد العناصر المطلوب إزالتها في المقدمة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<مجموعة محدثة>] | Array | المجموعة المحدثة بعد إزالة العناصر المحددة |
Example
يزيل هذا المثال عنصراً واحداً، وهو الرقم 0، من مقدمة الصفيف المحدد:
skip(createArray(0, 1, 2, 3), 1)
وإرجاع هذه الصفيفة مع العناصر المتبقية: [1,2,3]
slice
أرجع سلسلة فرعية بتحديد موضع أو قيمة البداية والنهاية. راجع أيضا السلسلة الفرعية().
slice('<text>', <startIndex>, <endIndex>?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تشتمل على السلسلة الفرعية للبحث عنها |
| < startIndex> | Yes | Integer | موضع البداية أو القيمة المستندة إلى الصفر لمكان بدء البحث عن السلسلة الفرعية - إذا كانت قيمة startIndex أكبر من طول السلسلة، فسترجع سلسلة فارغة. - إذا كانت قيمة startIndex سالبة، فابدأ البحث في قيمة الفهرس التي هي مجموع طول السلسلة وstartIndex. |
| < endIndex> | No | Integer | موضع النهاية الصفري أو القيمة الخاصة بمكان إنهاء البحث عن السلسلة الفرعية. لا يضمن الحرف الموجود في قيمة فهرس النهاية في البحث. - إذا لم يتم تحديد endIndex أو أكبر من طول السلسلة، فابحث حتى نهاية السلسلة. - إذا كانت endIndex سالبة، فنتهي بالبحث في قيمة الفهرس التي مجموع طول السلسلة وendIndex. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة الشريحة> | String | سلسلة جديدة تحتوي على السلسلة الفرعية التي عثر عليها |
Examples
slice('Hello World', 2) // Returns 'llo World'.
slice('Hello World', 30) // Returns ''.
slice('Hello World', 10, 2) // Returns ''.
slice('Hello World', 0) // Returns 'Hello World'.
slice('Hello World', 2, 5) // Returns 'llo'.
slice('Hello World', 6, 20) // Returns 'World'.
slice('Hello World', -2) // Returns 'ld'.
slice('Hello World', 3, -1) // Returns 'lo Worl'.
slice('Hello World', 3, 3) // Returns ''.
sort
فرز العناصر في مجموعة. يمكنك فرز كائنات المجموعة باستخدام أي مفتاح يحتوي على نوع بيانات بدائي مدعوم من لغة تعريف سير العمل، مثل int، float، string، أو bool.
sort([<collection>], <sortBy>?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | Array | المجموعة التي تحتوي على العناصر المراد فرزها |
| < فرز حسب> | No | String | المفتاح الذي يجب استخدامه لفرز عناصر المجموعة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<مجموعة محدثة>] | Array | المجموعة التي تم فرزها |
المثال 1
يفرز هذا المثال صفيفا من الأعداد الصحيحة:
sort(createArray(2, 1, 0, 3))
وإرجاع هذا الصفيف: [0,1,2,3]
مثال 2
يفرز هذا المثال صفيفا من العناصر حسب المفتاح:
sort(createArray(json('{ "first": "Amalie", "last": "Rose" }'), json('{ "first": "Elise", "last": "Renee" }')), 'last')
وإرجاع هذا الصفيف: [{ "first": "Elise", "last": "Renee" }, {"first": "Amalie", "last": "Rose" }')]
split
إرجاع صفيف يحتوي على سلاسل فرعية مفصولة بفواصل استناداً إلى حرف المحدد المعين في السلسلة الأصلية.
split('<text>', '<delimiter>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة المراد فصلها إلى سلاسل فرعية بناءً على المحدد المعين في السلسلة الأصلية |
| < محدد> | Yes | String | الحرف الموجود في السلسلة الأصلية المراد استخدامه كمحدد |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<substring1,substring2><>,...] | Array | مصفوفة تحتوي على سلاسل فرعية من السلسلة الأصلية المفصولة بفواصل |
المثال 1
ينشئ هذا المثال صفيفاً يحتوي على سلاسل فرعية من السلسلة المحددة بناءً على الحرف المعين كمحدد:
split('a_b_c', '_')
وإرجاع هذا الصفيف كنتيجة: ["a","b","c"]
مثال 2
ينشئ هذا المثال صفيفًا بعنصر واحد في حالة عدم وجود محدد في السلسلة:
split('a_b_c', ' ')
وإرجاع هذا الصفيف كنتيجة: ["a_b_c"]
startOfDay
إرجاع بداية اليوم للحصول على طابع زمني.
startOfDay('<timestamp>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني المحدد ولكن يبدأ عند علامة ساعة الصفر لليوم |
Example
يبحث هذا المثال عن بداية اليوم لهذا الطابع الزمني:
startOfDay('2018-03-15T13:30:30Z')
وإرجاع هذه النتيجة: "2018-03-15T00:00:00.0000000Z"
startOfHour
إرجاع بداية الساعة للحصول على طابع زمني.
startOfHour('<timestamp>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني المحدد ولكن يبدأ عند علامة دقيقة الصفر للساعة |
Example
يبحث هذا المثال عن بداية الساعة لهذا الطابع الزمني:
startOfHour('2018-03-15T13:30:30Z')
وإرجاع هذه النتيجة: "2018-03-15T13:00:00.0000000Z"
startOfMonth
إرجاع بداية الشهر للحصول على طابع زمني.
startOfMonth('<timestamp>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني المحدد ولكن يبدأ في اليوم الأول من الشهر عند علامة ساعة الصفر |
المثال 1
يعرض هذا المثال بداية الشهر لهذا الطابع الزمني:
startOfMonth('2018-03-15T13:30:30Z')
وإرجاع هذه النتيجة: "2018-03-01T00:00:00.0000000Z"
مثال 2
هذا المثال يرجع بداية الشهر بالتنسيق المحدد لهذا الطابع الزمني:
startOfMonth('2018-03-15T13:30:30Z', 'yyyy-MM-dd')
وإرجاع هذه النتيجة: "2018-03-01"
startsWith
تحقق مما إذا كانت سلسلة تبدأ بسلسلة فرعية معينة. يتم إرجاع القيمة true عند العثور على سلسلة فرعية أو إرجاع القيمة false عند عدم العثور عليها. هذه الدالة ليست حساسة لحالة الأحرف.
startsWith('<text>', '<searchText>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي يجب التحقق منها |
| < نص البحث> | Yes | String | سلسلة البداية التي سيتم البحث عنها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| صواب أو خطأ | Boolean | إرجاع القيمة true عند العثور على بداية السلسلة الفرعية. إرجاع القيمة false عند عدم العثور عليه. |
المثال 1
يتحقق هذا المثال ما إذا كانت السلسلة "hello world" تبدأ بالسلسلة الفرعية "hello":
startsWith('hello world', 'hello')
وإرجاع هذه النتيجة: true
مثال 2
يتحقق هذا المثال ما إذا كانت السلسلة "hello world" تبدأ بالسلسلة الفرعية "greetings":
startsWith('hello world', 'greetings')
وإرجاع هذه النتيجة: false
string
إرجاع إصدار السلسلة لقيمة.
string(<value>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | Any | القيمة المطلوب تحويلها. إذا كانت هذه القيمة خالية أو يتم تقييمها إلى قيمة خالية، تحول القيمة إلى قيمة سلسلة فارغة (""). على سبيل المثال، في حالة تعيين متغير سلسلة إلى خاصية غير موجودة، والتي يمكنك الوصول إليها مع عامل التشغيل ?، تحول القيمة الفارغة إلى سلسلة فارغة. ومع ذلك، فإن المقارنة بين القيمة الفارغة ليست هي نفسها مقارنة سلسلة فارغة. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة السلسلة> | String | إصدار سلسلة للقيمة المحددة. إذا كانت معلمة القيمة فارغة أو تم تقييمها إلى قيمة خالية، يتم إرجاع هذه القيمة كقيمة سلسلة فارغة (""). |
المثال 1
ينشئ هذا المثال إصدار السلسلة لهذا الرقم:
string(10)
وإرجاع هذه النتيجة: "10"
مثال 2
ينشئ هذا المثال سلسلة لعنصر JSON المحدد ويستخدم حرف الخط المائل العكسي (\) كحرف إلغاء لعلامة الاقتباس المزدوجة (").
string( { "name": "Sophie Owen" } )
وإرجاع هذه النتيجة: "{ \\"name\\": \\"Sophie Owen\\" }"
sub
إرجاع الناتج من طرح الرقم الثاني من الرقم الأول.
sub(<minuend>, <subtrahend>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الحد الأدنى> | Yes | عدد صحيح أو عائم | الرقم الذي سيتم طرح الطرح منه |
| < من الباطن> | Yes | عدد صحيح أو عائم | الرقم الذي يجب طرحه من المنهاجم |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة> | عدد صحيح أو عائم | ناتج طرح الرقم الثاني من الرقم الأول |
Example
يطرح هذا المثال الرقم الثاني من الرقم الأول:
sub(10.3, .3)
وإرجاع هذه النتيجة: 10
substring
إرجاع أحرف من سلسلة، بدءاً من الموضع المحدد أو الفهرس. تبدأ قيم الفهرس بالرقم 0. انظر أيضا slice().
substring('<text>', <startIndex>, <length>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تريد أحرفها |
| < startIndex> | Yes | Integer | رقم موجب يساوي أو أكبر من 0 الذي تريد استخدامه كموضع بداية أو قيمة فهرس |
| < طول> | No | Integer | عدد موجب من الأحرف التي تريدها في السلسلة الفرعية |
Note
تأكد من أن المجموع من إضافة قيم المعلمة startIndex و length أقل من طول السلسلة التي توفرها لمعلمة النص . وإلا، تحصل على خطأ، على عكس الدالات المماثلة في لغات أخرى حيث تكون النتيجة هي السلسلة الفرعية من startIndex إلى نهاية السلسلة. معلمة الطول اختيارية وإذا لم يتم توفيرها، تأخذ الدالة substring() جميع الأحرف بدءا من startIndex إلى نهاية السلسلة.
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نتيجة السلسلة الفرعية> | String | سلسلة فرعية ذات عدد محدد من الأحرف، تبدأ من موضع الفهرس المحدد في سلسلة المصدر |
Example
ينشئ هذا المثال سلسلة فرعية من خمسة أحرف من السلسلة المحددة، بدءاً من قيمة الفهرس 6:
substring('hello world', 6, 5)
وإرجاع هذه النتيجة: "world"
subtractFromTime
طرح عدد من وحدات الوقت من الطابع الزمني. راجع أيضا getPastTime.
subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة التي تحتوي على الطابع الزمني |
| < فترة> | Yes | Integer | عدد الوحدات الزمنية المحددة المطلوب طرحها |
| < وحدة زمنية> | Yes | String | وحدة الوقت التي يجب استخدامها مع الفاصل الزمني: "الثانية"، "الدقيقة"، "الساعة"، "اليوم"، "الأسبوع"، "الشهر"، "السنة" |
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني المحدث> | String | الطابع الزمني مطروحاً منه العدد المحدد للوحدات الزمنية |
المثال 1
يطرح هذا المثال يوماً واحداً من هذا الطابع الزمني:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')
وإرجاع هذه النتيجة: "2018-01-01T00:00:00.0000000Z"
مثال 2
يطرح هذا المثال يوماً واحداً من هذا الطابع الزمني:
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')
وإرجاع هذه النتيجة باستخدام تنسيق "D" الاختياري: "Monday, January, 1, 2018"
T
take
إرجاع العناصر من مقدمة المجموعة.
take('<collection>', <count>)
take([<collection>], <count>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مجموعة> | Yes | سلسلة أو صفيف | المجموعة التي تريد عناصرها |
| < عد> | Yes | Integer | عدد صحيح موجب لعدد العناصر التي تريدها من المقدمة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < فرعيه> أو [<مجموعة فرعية>] | سلسلة أو صفيف، على التوالي | سلسلة أو صفيف يحتوي على عدد محدد من العناصر المأخوذة من مقدمة المجموعة الأصلية |
Example
تحصل هذه الأمثلة على عدد محدد من العناصر من مقدمة هذه المجموعات:
take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)
وإرجاع هذه النتائج:
- المثال الأول:
"abc" - المثال الثاني:
[0, 1, 2]
ticks
ترجع عدد علامات التجزئة، والتي تعد فواصل زمنية مقدارها 100 نانوثانية، منذ 1 يناير 0001 12:00:00 منتصف الليل (أو DateTime.Ticks في C#) حتى الطابع الزمني المحدد. للمزيد من المعلومات، راجع هذا الموضوع: خاصية DateTime.Ticks (النظام).
ticks('<timestamp>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < الطابع الزمني> | Yes | String | السلسلة لطابع زمني |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < رقم التجزئة> | Integer | عدد علامات التجزئة منذ الطابع الزمني المحدد |
toLower
إرجاع سلسلة بتنسيق أحرف صغيرة. إذا كان أحد الأحرف في السلسلة لا يحتوي على نسخة ذي أحرف صغيرة، فإن هذا الحرف يبقى دون تغيير في السلسلة التي تم إرجاعها.
toLower('<text>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة المراد إرجاعها بتنسيق الأحرف الصغيرة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نص بأحرف صغيرة> | String | السلسلة الأصلية بتنسيق الأحرف الصغيرة |
Example
يحول هذا المثال هذه السلسلة إلى أحرف صغيرة:
toLower('Hello World')
وإرجاع هذه النتيجة: "hello world"
toUpper
إرجاع سلسلة بتنسيق أحرف كبيرة. إذا كان أحد الأحرف في السلسلة لا يحتوي على نسخة ذي أحرف كبيرة، فإن هذا الحرف يبقى دون تغيير في السلسلة التي تم إرجاعها.
toUpper('<text>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة المراد إرجاعها بتنسيق الأحرف الكبيرة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < نص أحرف كبيرة> | String | السلسلة الأصلية بتنسيق الأحرف الكبيرة |
Example
يحول هذا المثال هذه السلسلة إلى أحرف كبيرة:
toUpper('Hello World')
وإرجاع هذه النتيجة: "HELLO WORLD"
trigger
أرجع إخراج المشغل في وقت التشغيل، أو القيم من أزواج اسم وقيمة JSON الأخرى، والتي يمكنك تعيينها إلى تعبير.
داخل إدخالات المشغل، تعيد هذه الدالة الإخراج من التنفيذ السابق.
داخل حالة المشغل، ترجع هذه الدالة الإخراج من التنفيذ الحالي.
بشكل افتراضي، تشير الدالة إلى عنصر المشغل بأكمله، ولكن يمكنك تحديد الخاصية التي تريد قيمتها. أيضا، تحتوي هذه الدالة على إصدارات مختصرة متوفرة، راجع triggerOutputs() و triggerBody().
trigger()
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < إخراج المشغل> | String | الإخراج من المشغل في وقت التشغيل |
triggerBody
أعد إخراج المشغل body في وقت التشغيل. اختصار لـ trigger().outputs.body. راجع trigger().
triggerBody()
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < مشغل-نص-إخراج> | String | الإخراج body من المشغل |
triggerFormDataMultiValues
إرجاع صفيف بقيم تطابق اسم مفتاح في بيانات نموذج المشغل أو الإخراج المشفر بالنموذج .
triggerFormDataMultiValues('<key>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مفتاح> | Yes | String | اسم المفتاح الذي ترغب في قيمته |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| [<قيم الصفيف مع المفتاح>] | Array | صفيف بكل القيم التي تطابق المفتاح المحدد |
Example
ينشئ هذا المثال صفيفًا من قيمة المفتاح «feedUrl» في إخراج بيانات النموذج أو ترميز النموذج لمشغل RSS:
triggerFormDataMultiValues('feedUrl')
ويرجع هذا الصفيف كمثال للنتيجة: ["https://feeds.a.dj.com/rss/RSSMarketsMain.xml"]
triggerFormDataValue
إرجاع سلسلة بقيمة واحدة تطابق اسم مفتاح في بيانات نموذج المشغل أو إخراج ترميز النموذج . إذا عثرت الدالة على أكثر من تطابق، فستتسبب هذه الدالة في حدوث خطأ.
triggerFormDataValue('<key>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مفتاح> | Yes | String | اسم المفتاح الذي ترغب في قيمته |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المفتاح> | String | القيمة الموجودة في مفتاح محدد |
Example
ينشئ هذا المثال سلسلة من قيمة المفتاح «feedUrl» في إخراج بيانات النموذج أو ترميز النموذج لمشغل RSS:
triggerFormDataValue('feedUrl')
وترجع هذه السلسلة كمثال للنتيجة: "https://feeds.a.dj.com/rss/RSSMarketsMain.xml"
triggerMultipartBody
أعد النص الأساسي لجزء معين في إخراج المشغل يتكون من أجزاء متعددة.
triggerMultipartBody(<index>)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < فهرس> | Yes | Integer | قيمة الفهرس للجزء الذي تريده |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < جسم> | String | النص الأساسي الخاص بالجزء المحدد في إخراج المشغل متعدد الأجزاء |
triggerOutputs
أعد إخراج المشغل في وقت التشغيل، أو القيم من أزواج اسم وقيمة JSON الأخرى. اختصار لـ trigger().outputs. راجع trigger().
triggerOutputs()
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < إخراج المشغل> | String | الإخراج من المشغل في وقت التشغيل |
trim
إزالة المسافة البيضاء البادئة والزائدة من سلسلة، ثم إرجاع السلسلة المحدثة.
trim('<text>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < نص> | Yes | String | السلسلة التي تحتوي على المسافات البيضاء البادئة واللاحقة للإزالة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < النص المحدث> | String | إصدار محدث للسلسلة الأصلية دون مسافات بيضاء بادئة أو لاحقة |
Example
يزيل هذا المثال المسافة البيضاء البادئة واللاحقة من السلسلة «مرحبًا بالعالم»:
trim(' Hello World ')
وإرجاع هذه النتيجة: "Hello World"
U
union
إرجاع مجموعة تحتوي على كافة العناصر من المجموعات المحددة. للظهور في النتيجة، يمكن أن يظهر عنصر في أي مجموعة تم تمريرها إلى هذه الدالة. إذا كان عنصر واحد أو أكثر يحمل نفس الاسم، يظهر العنصر الأخير بهذا الاسم في النتيجة.
union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
| Parameter | Required | Type | Description |
|---|---|---|---|
| < المجموعة 1>، <المجموعة 2>، ... | Yes | صفيف أو كائن، ولكن ليس كليهما | المجموعات التي تريد الحصول على كل العناصر منها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < مجموعة محدثة> | صفيف أو كائن، على التوالي | مجموعة تحتوي على جميع العناصر من المجموعات المحددة - دون تكرارات |
Example
يحصل هذا المثال على جميع العناصر من هذه المجموعات:
union(createArray(1, 2, 3), createArray(1, 2, 10, 101))
وإرجاع هذه النتيجة: [1, 2, 3, 10, 101]
uriComponent
قم بإرجاع إصدار مرمز باستخدام معرّف الموارد المنتظم (URI) لسلسلة من خلال استبدال أحرف URL غير الآمنة بأحرف الإلغاء. استخدم هذه الدالة بدلا من encodeUriComponent(). على الرغم من أن كلتا الدالتين تعملان بنفس الطريقة، يفضل استخدام uriComponent().
uriComponent('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المطلوب تحويلها إلى تنسيق مرمز بـ URI |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < encoded-uri> | String | السلسلة المرمزة باستخدام URI مع أحرف الإلغاء |
Example
ينشئ هذا المثال إصدار مرمز باستخدام URI لهذه السلسلة:
uriComponent('https://contoso.com')
وإرجاع هذه النتيجة: "https%3A%2F%2Fcontoso.com"
uriComponentToBinary
إرجاع الإصدار الثنائي لمكون معرف موارد منتظم (URI).
uriComponentToBinary('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المرمزة باستخدام URI المراد تحويلها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الثنائية من أجل التشفير في ال URI> | String | الإصدار الثنائي للسلسلة المرمزة باستخدام URI. المحتوى الثنائي هو base64-encoded وrepresented بواسطة $content. |
Example
ينشئ هذا المثال إصدار ثنائي لهذه السلسلة المرمزة باستخدام URI:
uriComponentToBinary('https%3A%2F%2Fcontoso.com')
وإرجاع هذه النتيجة: "aHR0cHM6Ly9jb250b3NvLmNvbQ=="
uriComponentToString
إرجاع إصدار السلسلة لسلسلة مرمزة باستخدام معرف الموارد المنتظم (URI)، وفك ترميز السلسلة المرمزة باستخدام URI بشكلٍ فعال.
uriComponentToString('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة المرمزة باستخدام URI المراد فك ترميزها |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < فك ترميز uri> | String | الإصدار الذي تم فك ترميزه لسلسلة فك ترميزها باستخدام URI |
Example
ينشئ هذا المثال إصدار سلسلة فك ترميزها للسلسلة التي تم فك ترميزها باستخدام URI:
uriComponentToString('https%3A%2F%2Fcontoso.com')
وإرجاع هذه النتيجة: "https://contoso.com"
uriHost
أعد قيمة host لمعرف الموارد المنتظم (URI).
uriHost('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيمة host له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المضيف> | String | قيمة host لـ URI المحدد |
Example
يبحث هذا المثال عن قيمة host لـ URI هذا:
uriHost('https://www.localhost.com:8080')
وإرجاع هذه النتيجة: "www.localhost.com"
uriPath
أعد قيمة path لمعرف الموارد المنتظم (URI).
uriPath('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيمة path له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المسار> | String | قيمة path لـ URI المحدد. إذا path لم يكن لديه قيمة، فأرجع الحرف «/». |
Example
يبحث هذا المثال عن قيمة path لـ URI هذا:
uriPath('https://www.contoso.com/catalog/shownew.htm?date=today')
وإرجاع هذه النتيجة: "/catalog/shownew.htm"
uriPathAndQuery
أعد قيم path وquery لمعرف الموارد المنتظم (URI).
uriPathAndQuery('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيم path وquery له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة استعلام المسار> | String | قيم pathو query لـ URI المحدد. إذا path لم يحدد قيمة، فأرجع الحرف «/». |
Example
يبحث هذا المثال عن قيم path وquery لـ URI هذا:
uriPathAndQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
وإرجاع هذه النتيجة: "/catalog/shownew.htm?date=today"
uriPort
أعد قيمة port لمعرف الموارد المنتظم (URI).
uriPort('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيمة port له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المنفذ> | Integer | قيمة port لـ URI المحدد. إذا port لم يحدد قيمة، فأرجع المنفذ الافتراضي للبروتوكول. |
Example
يرجع هذا المثال قيمة port لـ URI هذا:
uriPort('https://www.localhost:8080')
وإرجاع هذه النتيجة: 8080
uriQuery
أعد قيمة query لمعرف الموارد المنتظم (URI).
uriQuery('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيمة query له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة الاستعلام> | String | قيمة query لـ URI المحدد |
Example
يرجع هذا المثال قيمة query لـ URI هذا:
uriQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
وإرجاع هذه النتيجة: "?date=today"
uriScheme
أعد قيمة scheme لمعرف الموارد المنتظم (URI).
uriScheme('<uri>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < يوري> | Yes | String | URI الذي تريد قيمة scheme له |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < قيمة المخطط> | String | قيمة scheme لـ URI المحدد |
Example
يرجع هذا المثال قيمة scheme لـ URI هذا:
uriScheme('https://www.contoso.com/catalog/shownew.htm?date=today')
وإرجاع هذه النتيجة: "http"
utcNow
إرجاع الطابع الزمني الحالي.
utcNow('<format>')
اختياريا، يمكنك تحديد تنسيق مختلف باستخدام معلمة <التنسيق> .
| Parameter | Required | Type | Description |
|---|---|---|---|
| < تنسيق> | No | String | سلسلة تنسيق رقمية إما محدد تنسيق واحد أو نمط تنسيق مخصص. التنسيق الافتراضي للطوابع الزمنية هو "o" (yyyy-MM-ddTHH:mm:ss.fffffffK)، والذي يتوافق مع ISO 8601 ويحافظ على معلومات المنطقة الزمنية. في حالة لم يكن التنسيق قيمة صالحة، فسيتم إنشاء خطأ. |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < الطابع الزمني الحالي> | String | التاريخ والوقت الحاليان |
Examples
utcNow() // Returns 2025-09-25T05:18:31.3384797Z
utcNow('u') // Returns 2025-09-25 05:18:31Z
utcNow('U') // Returns Thursday, September 25, 2025 5:18:31 AM
utcNow('d') // Returns 9/25/2025
utcNow('D') // Returns Thursday, September 25, 2025
utcNow('t') // Returns 5:18 AM
utcNow('T') // Returns 5:18:31 AM
utcNow('y') // Returns September 2025
utcNow('yyyy') // Returns 2025
utcNow('ddd, d MMM yyyy') // Returns Thu, 25 Sep 2025
V
variables
أعد قيمة متغير محدد.
variables('<variableName>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < اسم المتغير> | Yes | String | اسم المتغير الذي تريد قيمته |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < متغير القيمة> | Any | قيمة المتغير المحدد |
Example
بافتراض أن القيمة الحالية لمتغير «numItems» هي 20. يتناول هذا المثال قيمة العدد الصحيح لهذا المتغير:
variables('numItems')
وإرجاع هذه النتيجة: 20
W
workflow
أعد جميع التفاصيل حول سير العمل نفسه أثناء وقت التشغيل.
workflow().<property>
| Parameter | Required | Type | Description |
|---|---|---|---|
| < مال> | No | String | اسم خاصية سير العمل التي تريد قيمتها بشكل افتراضي، يحتوي عنصر سير العمل على هذه الخصائص: name، وtype، وid، وlocation، وrun،وtags. - قيمة الخاصية run هي عنصر JSON يتضمن هذه الخصائص: name، وtype، وid. - الخاصية tags عبارة عن عنصر JSON يتضمن علامات مرتبطة بتطبيق المنطق الخاص بك في Azure Logic Apps أو التدفق في Power Automate وقيم هذه العلامات. للمزيد من المعلومات حول العلامات في موارد Azure، راجع موارد العلامات ومجموعات الموارد والاشتراكات للمؤسسة المنطقية في Azure. ملاحظة: بشكل افتراضي، لا يحتوي تطبيق المنطق على علامات، ولكن يحتوي تدفق Power Automate على flowDisplayName علامات و environmentName . |
المثال 1
يُرجع هذا المثال اسم التشغيل الحالي لسير العمل:
workflow().run.name
مثال 2
في حالة استخدامك Power Automate، يمكنك إنشاء تعبير @workflow() يستخدم خاصية الإخراج tags للحصول على القيم من الخاصية flowDisplayName أو environmentName للتدفق الخاص بك.
على سبيل المثال، بإمكانك إرسال إشعارات بريد إلكتروني مخصصة من التدفق نفسه ترتبط مرة أخرى بالتدفق الخاص بك. يمكن أن تتضمن هذه الإشعارات ارتباط HTML يحتوي على اسم عرض التدفق في عنوان البريد الإلكتروني ويتبع هذه الصيغة:
<a href=https://flow.microsoft.com/manage/environments/@{workflow()['tags']['environmentName']}/flows/@{workflow()['name']}/details>Open flow @{workflow()['tags']['flowDisplayName']}</a>
X
xml
إرجاع إصدار XML لسلسلة تحتوي على كائن JSON.
xml('<value>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < قيمة> | Yes | String | السلسلة التي تحتوي على كائن JSON لتحويلها يجب أن يحتوي كائن JSON على خاصية جذر واحدة فقط، والتي لا يمكن أن تكون صفيف. استخدم حرف الخط المائل العكسي (\) كحرف إلغاء لعلامة الاقتباس المزدوجة ("). |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < إصدار xml> | Object | إصدار XML المرمز لسلسلة أو كائن JSON محدد |
المثال 1
يُحول هذا المثال السلسلة إلى XML:
xml('<name>Sophia Owen</name>')
وإرجاع هذه النتيجة XML:
<name>Sophia Owen</name>
مثال 2
ينشئ هذا المثال إصدار XML لهذه السلسلة التي تحتوي على كائن JSON:
xml(json('{ "name": "Sophia Owen" }'))
وإرجاع هذه النتيجة XML:
<name>Sophia Owen</name>
مثال 3
لمفترض أن لديك كائن JSON هذا:
{
"person": {
"name": "Sophia Owen",
"city": "Seattle"
}
}
ينشئ هذا المثال XML لسلسلة تحتوي على كائن JSON هذا:
xml(json('{"person": {"name": "Sophia Owen", "city": "Seattle"}}'))
وإرجاع هذه النتيجة XML:
<person>
<name>Sophia Owen</name>
<city>Seattle</city>
<person>
مثال 4
xml() تتوقع الدالة إما كائنا أو سلسلة تحتوي على XML صالح. لا تقبل الدالة صفيفا أوليا كمدخل.
إذا كانت بياناتك عبارة عن سلسلة JSON، يمكنك استخدام الدالة json() لتحويل السلسلة إلى كائن JSON قبل تمرير النتيجة إلى الدالة xml() ، على سبيل المثال:
xml(
json('{"root":{"array":[
{ "ID": 1, "Name": "James" },
{ "ID": 2, "Name": "John" },
{ "ID": 3, "Name": "Sam" }
]}}')
)
إذا كان لديك صفيف JSON، مثل المثال التالي، فلديك ثلاثة خيارات.
[
{ "ID": 1, "Name": "James" },
{ "ID": 2, "Name": "John" },
{ "ID": 3, "Name": "Sam" }
]
الخيار 1: تخزين صفيف JSON في إجراء إنشاء يسمى Compose1. ثم استخدم الدالة outputs() لإرجاع كائن JSON من Compose1.
{
"root": { "array": @{outputs('Compose1')} }
}
تخزين كائن JSON الذي تم إرجاعه في إجراء آخر يسمى Compose2. يمكنك بعد ذلك استخدام xml() الدالتين و outputs() لإنشاء XML من إخراج كائن JSON من Compose2، على سبيل المثال:
xml(outputs('Compose2'))
الخيار 2: تخزين صفيف JSON في إجراء إنشاء يسمى Compose1. ثم استخدم outputs()concat()json()الدالات و و xml() لإنشاء XML من إخراج كائن JSON، على سبيل المثال:
xml(
json(
concat(
'{"root":{"array":',
outputs('Compose1'),
'}}'
)
)
)
الخيار 3: تخزين صفيف JSON في إجراء إنشاء يسمى Compose1. يمكنك بعد ذلك استخدام outputs()json()addProperty()الدالات و و xml() لإنشاء XML من إخراج كائن JSON، على سبيل المثال:
xml(
addProperty(
json('{}'),
'root',
addProperty(
json('{}'),
'array',
outputs('Compose1')
)
)
)
جميع الأمثلة، التي تتضمن مثال بيانات سلسلة JSON والخيارات من 1 إلى 3، ترجع نتيجة XML التالية:
<root>
<array>
<ID>1</ID>
<Name>James</Name>
</array>
<array>
<ID>2</ID>
<Name>John</Name>
</array>
<array>
<ID>3</ID>
<Name>Sam</Name>
</array>
</root>
xpath
التحقق من XML للعقد أو القيم التي تطابق تعبير XPath (لغة مسار XML)، ثم إرجاع العقد أو القيم المتطابقة. يساعدك تعبير XPath أو "XPath" فقط، على التنقل في بنية مستند XML بحيث يمكنك تحديد العقد أو حساب القيم في محتوى XML.
Note
في تطبيقات المنطق Consumption وStandard، تستخدم جميع تعبيرات الوظائف مكتبة .NET XPath. تتوافق تعبيرات XPath مع مكتبة .NET الأساسية وتدعم التعبير الذي تدعمه مكتبة .NET الأساسية فقط.
xpath('<xml>', '<xpath>')
| Parameter | Required | Type | Description |
|---|---|---|---|
| < XML> | Yes | Any | سلسلة XML للبحث عن العقد أو القيم التي تطابق قيمة تعبير XPath |
| < xpath> | Yes | Any | يستخدم تعبير XPath للبحث عن قيم أو عقد XML متطابقة |
| قيمة الإرجاع | Type | Description |
|---|---|---|
| < عقدة xml> | XML | عقدة XML عندما تتطابق عقدة واحدة فقط مع تعبير XPath المحدد |
| < قيمة> | Any | القيمة من عقدة XML عندما تتطابق قيمة واحدة فقط مع تعبير XPath المحدد |
| [<xml-node1>, <xml-node2>, ...] -أو- [<value1>, <value2>, ...] | Array | صفيف يحتوي على عقد XML أو قيم تطابق تعبير XPath المحدد |
المثال 1
بافتراض أن لديك سلسلة XML 'items' هذه:
<?xml version="1.0"?>
<produce>
<item>
<name>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
يمر هذا المثال في تعبير XPath، '/produce/item/name/text()'، للعثور على العقد التي تطابق العقدة <name></name>في سلسلة XML 'items' ويرجع صفيفًا بقيم العقدة هذه:
xpath(xml(parameters('items')), '/produce/item/name/text()')
يستخدم المثال أيضا الدالة parameters() للحصول على سلسلة XML من 'items' وتحويل السلسلة إلى تنسيق XML باستخدام الدالة xml().
فيما يلي صفيف النتائج المملوء بقيم العقد التي تطابق <name></name>:
[ Gala, Honeycrisp ]
مثال 2
بعد المثال 1، يمر هذا المثال في تعبير XPath، '/produce/item/name[1]'، للعثور على العنصر الأول name التابع للعنصر item.
xpath(xml(parameters('items')), '/produce/item/name[1]')
إليك النتيجة:Gala
مثال 3
بعد المثال 1، يمر هذا المثال في تعبير XPath، '/produce/item/name[last()]'، للعثور على العنصر الأخير name التابع للعنصر item.
xpath(xml(parameters('items')), '/produce/item/name[last()]')
إليك النتيجة:Honeycrisp
مثال 4
في هذا المثال، افترض أن سلسلة XML items تحتوي أيضًا على السمات expired='true' وexpired='false':
<?xml version="1.0"?>
<produce>
<item>
<name expired='true'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name expired='false'>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
يمر هذا المثال في تعبير XPath، '//name[@expired]'، للعثور على كافة عناصر name التي تحتوي على السمة expired:
xpath(xml(parameters('items')), '//name[@expired]')
إليك النتيجة:[ Gala, Honeycrisp ]
مثال 5
في هذا المثال، افترض أن سلسلة XML items تتضمن هذه السمة فقط، expired = 'true':
<?xml version="1.0"?>
<produce>
<item>
<name expired='true'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
يمر هذا المثال في تعبير XPath، '//name[@expired = 'true']'، للعثور على كافة عناصر name التي تحتوي على السمة expired = 'true':
xpath(xml(parameters('items')), '//name[@expired = 'true']')
إليك النتيجة:[ Gala ]
مثال 6
في هذا المثال، افترض أن سلسلة XML items تحتوي أيضًا على هذه السمات:
expired='true' price='12'expired='false' price='40'
<?xml version="1.0"?>
<produce>
<item>
<name expired='true' price='12'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name expired='false' price='40'>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
يمر هذا المثال في تعبير XPath، '//name[@price>35]'، للعثور على كافة عناصر name التي تحتوي على price > 35:
xpath(xml(parameters('items')), '//name[@price>35]')
إليك النتيجة:Honeycrisp
مثال 7
في هذا المثال، افترض أن سلسلة XML items هي نفسها كما في المثال 1:
<?xml version="1.0"?>
<produce>
<item>
<name>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
يعثر هذا المثال على العقد التي تطابق العقدة <count></count> ويضيف قيم العقد هذه مع الدالة sum():
xpath(xml(parameters('items')), 'sum(/produce/item/count)')
إليك النتيجة:30
مثال 8
في هذا المثال، افترض أن لديك سلسلة XML هذه، والتي تشمل مساحة اسم مستند XML، xmlns="https://contoso.com":
<?xml version="1.0"?><file xmlns="https://contoso.com"><location>Paris</location></file>
تستخدم هذه التعبيرات تعبير XPath /*[name()="file"]/*[name()="location"] أو /*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"]، للعثور على العقد التي تطابق العقدة <location></location>. تُظهر هذه الأمثلة بناء الجملة الذي تستخدمه في المصمم أو في محرر التعبير:
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')xpath(xml(body('Http')), '/*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="location"]')
إليك عقدة النتيجة التي تطابق العقدة <location></location>:
<location xmlns="https://contoso.com">Paris</location>
Important
إذا كنت تعمل في طريقة عرض التعليمات البرمجية، فتخلص من علامة الاقتباس المزدوجة (") باستخدام حرف الخط المائل العكسي (\). على سبيل المثال، تحتاج إلى استخدام أحرف الإلغاء عند إجراء تسلسل لتعبير ما كسلسلة JSON. ومع ذلك، إذا كنت تعمل في المصمم أو محرر التعبير، فلن تحتاج إلى إلغاء علامة الاقتباس المزدوجة لأن حرف الخط المائل العكسي يُضاف تلقائيًا إلى التعريف الأساسي، على سبيل المثال:
طريقة عرض التعليمات البرمجية:
xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"location\"]')محرر التعبير:
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="location"]')
مثال 9
بعد المثال 8، يستخدم هذا المثال تعبير XPath، 'string(/*[name()="file"]/*[name()="location"])'، للعثور على القيمة في العقدة <location></location>:
xpath(xml(body('Http')), 'string(/*[name()="file"]/*[name()="location"])')
إليك النتيجة:Paris
الخطوات التالية
تعرف على المزيد بشأن لغة تعريف سير العمل