一般函式

變數

您可以使用這些一般變數來識別有關執行的詳細資訊:

  • executionId:此案例執行的識別碼
  • scenarioId:目前已開啟情境的 ID
  • scenarioName:目前執行中情境的名稱
  • scenarioUrl: Fusion使用者介面中目前案例的連結
  • executionUrl: Fusion使用者介面中目前案例執行的連結
  • scenarioApiUrl:目前案例的Fusion API URL
  • executionApiUrl:目前執行詳細資訊的Fusion API URL
  • teamId:擁有目前情境的Fusion團隊識別碼
  • organizationId:與目前執行關聯的Fusion組織識別碼。 這不是Adobe IMS組織ID。
  • triggerTimestamp:觸發此執行的時間
  • operationsConsumed:在情境中該時間點使用的作業數量。

變數名稱會區分大小寫。 例如,使用scenarioUrl,而不是scenarioURL。

您可以在對應欄位中使用這些變數,而無需建立URL或為團隊和組織ID編寫硬式編碼。 例如,您可以在通知的對映文字欄位中加入以下內容:


Scenario: {{scenarioName}}
Open scenario: {{scenarioUrl}}
Open execution: {{executionUrl}}
Team: {{teamId}}
Organization: {{organizationId}}

使用這些變數時,請記得下列事項:

  • 案例執行時會解析值。 對應面板會列出變數,但不會預覽其值。
  • scenarioUrl和executionUrl連結至案例和Fusion使用者介面中的執行。 scenarioApiUrl和executionApiUrl是API端點URL,而不是連結到Fusion頁面。
  • API URL變數只會傳回文字。 他們不會提出要求或提供驗證認證。 一般API驗證和許可權仍然適用。
  • 連結不會授與額外存取權。 適用一般Fusion許可權。
  • 未針對未儲存至執行歷程記錄的執行(例如沙箱執行或在歷程記錄同步關閉的情況下執行)產生executionUrl。 產生的連結並不保證您使用它時就能取得執行詳細資訊。
  • 無法為範本或未儲存的案例產生scenarioUrl。
  • 如果無法產生URL,變數就沒有值。

get (物件或陣列;路徑)

傳回物件或陣列的值路徑。 若要存取巢狀物件,請使用點標籤法。 陣列中的第一個專案是索引1。

範例:

  • get( array ; 1 + 1 )
  • get( array ; 5.raw_name )
  • get( object ; raw_name )
  • get( object ; raw_name.sub_raw_name )

if (運算式;值1;值2)

如果運算式評估為true,則傳回value1;否則會傳回value2。

若要建立if陳述式(只有在兩個或多個運算式被評估為true時才傳回值),請使用and關鍵字。

若要合併if陳述式,請使用and和or運運算元。

和運運算元

範例:

  • if( 1 = 1 ; A ; B )

    傳回

  • if( 1 = 2 ; A ; B )

    傳回B

  • if( 1 = 2 and 1 = 2 ; A ; B )

    傳回B

imfempty (value1; value2)

如果此值不是空的,則傳回value1;否則會傳回value2。

範例:

  • ifempty( A ; B )

    傳回

  • ifempty( unknown ; B )

    傳回B

  • ifempty( "" ; B )

    傳回B

switch (運算式; value1; result1; [value2; result2; …]; [else])

根據值清單評估一個值(稱為運算式);傳回對應至第一個相符值的結果。 若要包含else值,請將其新增到最終運算式或值之後。

範例:

  • switch( B ; A ; 1 ; B ; 2 ; C ; 3 )

    傳回2

  • switch( C ; A ; 1 ; B ; 2 ; C ; 3 )

    傳回3

  • switch( X ; A ; 1 ; B ; 2 ; C ; 3 ; 4 )

    傳回4

    在此函式中,4是在未套用運算式時傳回的值(else值)。

省略(物件;key1; [key2; …])

省略物件的指定索引鍵並傳回其餘索引鍵。

範例:

omit(使用者;密碼)

傳回使用者資訊(不包括密碼)的集合。

pick(物件;key1; [key2; …])

僅從物件中挑選指定的索引鍵。

範例:

pick(使用者;密碼;電子郵件)

只傳回使用者密碼和電子郵件地址的集合。

mergeCollections(collection1; collection2)

結合兩個集合的機碼值組以將其合併。 如果兩個集合包含相同的索引鍵,則第二個集合的值會覆寫第一個集合的值。

isBlank(value)

如果值為null或空字串,則傳回true,否則傳回false。 不像ifEmpty,此函式不會將數字0或僅限空白的字串視為空白。

範例:

  • isBlank("")

    傳回true

  • isBlank(null)

    傳回true

  • isBlank("Hello")

    傳回false

  • isBlank(0)

    傳回false

  • isBlank(" ")

    傳回false

in(value; value1; value2; …)

如果值等於提供的值之一(嚴格相等,沒有型別強制),則傳回true。

範例:

  • in("B"; "A"; "B"; "C")

    傳回true

  • in("D"; "A"; "B"; "C")

    傳回false

  • in(2; 1; 2; 3)

    傳回true

  • in("2"; 1; 2; 3)

    傳回false

ifin(value; value1; value2; …; trueExpression; falseExpression)

如果值與任何提供的相符值相符,則傳回trueExpression,否則傳回falseExpression。 至少需要3個引數(值、一個符合值以及trueExpression + falseExpression)。

範例:

  • ifin("B"; "A"; "B"; "yes"; "no")

    傳回yes

  • ifin("D"; "A"; "B"; "yes"; "no")

    傳回否

  • ifin("X"; "X"; "found"; "not found")

    找到傳回

case(indexNumber; value1; value2; …)

傳回索引編號(以1為基礎)所指定位置的值。 如果索引超出界限或為0,則傳回null。

範例:

  • case(1; "Sun"; "Mon"; "Tue")

    傳回Sun

  • case(2; "Sun"; "Mon"; "Tue")

    傳回週一

  • case(3; "Sun"; "Mon"; "Tue")

    傳回星期二

  • case(5; "a"; "b")

    傳回null

NOTE
我們建議使用此項來取得日期的日名稱:
case(dayOfWeek(date); "Sun"; "Mon"; "Tue"; "Wed"; "Thu"; "Fri"; "Sat")
recommendation-more-help
workfront-fusion-help-workfront-fusion