共用方式為


累計運算質

概觀

累計 運算質會將一系列值減少為單一值,例如總和、串連字號串或平均值。

所有 累計 運算質都接受兩個輸入參數:

  1. 要累計的值。 除了預期字串值的累積串連運算質以外,這個值是所有累計運算質的數值。 此值是連結,通常是從 Field AttributeField ElementRecord 節點 (,其 Mixed 屬性設定為 True) 。

    注意

    如果架構樹狀結構中沒有任何上階 記錄 節點正在迴圈,則不需要使用 累積 運算質。

  2. 累計此值的範圍。 此引數是選擇性的。 此引數指示要累計的值所必須緊密相關的程度。

    下表顯示範圍參數值及其效果:

範圍參數值 效果
0 (零) 累計整個執行個體訊息的值。 預設值。
1 (一) 以相同父項目累計項目值或屬性值。
2 以相同父父代項目累計項目值或屬性值。
3 或以上 累計依據先前模式逐步擴大範圍的項目值或屬性值 (父父父代、父父父父代等)。

範例

使用 累計 運算質的範例可能是在採購單上加總成本。 下列程式碼為訂單範例。

<ns0:PurchaseOrder xmlns:ns0="http://CumulativeFunctoid.PurchaseOrder">  
    <From>Kevin F. Browne</From>  
    <To>Northwind Traders</To>  
    <LineItems>  
        <Item>  
            <Product>Laptop Computer</Product>  
            <Description>Thin profile laptop</Description>  
            <Price>1999.95</Price>  
            <Quantity>1</Quantity>  
        </Item>  
        <Item>  
            <Product>Monitor Swipes</Product>  
            <Description>Disposable monitor swipes</Description>  
            <Price>3.95</Price>  
            <Quantity>10</Quantity>  
        </Item>  
    </LineItems>  
</ns0:PurchaseOrder>  

專案記錄的Max Occurs屬性當然不會系結。 這表示 [Item] 記錄會重複,而 BizTalk 對應工具將此記錄編譯成迴圈。

下圖顯示使用 法運算質和 累積總和 運算質從傳入採購單匯總專案記錄的對應,並在 [POTotal ] 欄位中輸出結果:

顯示累計總和運算質使用量的對應。

此對應使用先前的資料與預設範圍參數值 0 (零) 產生下列輸出:

<ns0:SummedPO xmlns:ns0="http://CumulativeFunctoid.SummedPO">  
    <From>Kevin F. Browne</From>  
    <To>Northwind Traders</To>  
    <POTotal>2039.45</POTotal>  
</ns0:SummedPO>  

在此範例中,LineItems記錄下的所有Item記錄都會參與累積,範圍參數的預設值表示在整個訊息中累積值。 [價格] 和 [數量] 欄位會傳送至乘法運算質。 法運算質的輸出會成為累計總和運算質的輸入。 累加總運算質的輸出是累積值,因為專案記錄是在輸入採購單中周遊。

注意

輸入的累計彙總發生在父記錄,由此產生輸入連結。 即使 累積 運算質從另一個運算質取得其輸入,累積匯總仍會透過輸入連結至運算質的父記錄,做為 累積 運算質的輸入。

將範圍參數變更為 1 (一) 並稍微修改輸出結構描述,得到類似下面的輸出:

<ns0:SummedPO xmlns:ns0="http://CumulativeFunctoid.SummedPO">  
    <From>Kevin F. Browne</From>  
    <To>Northwind Traders</To>  
    <ItemTotal>1999.95</ItemTotal>  
    <ItemTotal>39.5</ItemTotal>  
</ns0:SummedPO>  

將範圍參數設為 1 (一) 表示以相同父項累計項目或屬性的值。 在這裡, [價格 ] 和 [ 數量 ] 欄位具有 Item 做為父代,讓運算質加總每個個別 Item的值。

若將範圍參數設為 2,則此運算質會以相同父父代累計項目或屬性的值。 PriceQuantity欄位的父代是LineItems記錄。 因為實例訊息中只有一個 LineItems 記錄,所以結果與使用預設值相同:

<ns0:SummedPO xmlns:ns0="http://CumulativeFunctoid.SummedPO">  
    <From>Kevin F. Browne</From>  
    <To>Northwind Traders</To>  
    <POTotal>2039.45</POTotal>  
</ns0:SummedPO>  

注意

累積運算質 (,但 累積字串 運算質) 忽略非數值輸入。 例如,輸入值 "three" 會被忽略。

累計平均累計最小值累計最大運算質的行為類似于累計總和運算質。 累加字串會串連字號串,而不是匯總數值。

可用的運算質

累計運算質如下:

  • 累計平均
  • 累計串連
  • 累計最大值
  • 累計最小值
  • 累計總和

這些運算質的詳細資料位於 UI 指引和開發人員 API 命名空間參考中。

另請參閱