使用特定物件時,可以建立與其一併儲存的其他物件。
當您將某個物件與其他物件一起儲存時,便是以「內嵌」方式儲存該物件。您可以使用「內嵌」方式儲存篩選、群組與計算的項目。例如,您可以建立一個群組,作為分析的一部分。當您儲存分析時,會以「內嵌」方式將群組與分析一併儲存。
除了以內嵌方式儲存這些物件,也可以將它們與 Oracle BI 展示目錄主題區域一起儲存為個別物件。當獨立儲存物件時,即成為「具名」物件。具名物件可重複使用,因為您可以建立一個物件並多次使用於任何包含具名物件中指定資料欄的分析、儀表板 (針對篩選) 或儀表板頁面 (針對篩選)。更新與儲存具名物件時,這些更新會立即套用至使用具名物件的所有物件。
例如,以內嵌方式將群組與分析一併儲存時,可將群組儲存為目錄中獨立的物件。之後,可以從「目錄」窗格中套用具名群組至其他分析。
指定篩選、群組與計算的項目一般會儲存至其相對主題區域資料夾。
藉由將物件儲存至主題區域資料夾,可確保建立相同主題區域的分析時,可以使用這些物件。
儲存在「/我的資料夾」資料夾中的具名物件僅供您使用。儲存在「/共用資料夾」資料夾中的物件可供具有存取資料夾許可權的其他使用者使用。如果「/我的資料夾」資料夾或「/共用資料夾」資料夾中不存在主題區域資料夾,則會自動建立主題區域資料夾。儲存物件時,「另存新檔」對話方塊會顯示預設儲存路徑「/我的資料夾/主題區域內容/<主題區域>」。不過,對話方塊的「資料夾」區域會持續顯示目錄中主題區域資料夾的所有執行處理。
您可將篩選儲存為內嵌篩選或指定篩選。
如果您在「分析」編輯器之「準則」頁籤的「篩選」窗格中建立內嵌篩選,您可以選擇將內嵌篩選儲存為指定篩選。指定篩選也可以在分析層次建立,或是從全域頁首建立為獨立的物件。
指定篩選可以篩選內嵌在儀表板中的所有或部分分析,或是內嵌在相同儀表板頁面上的分析。
儲存群組和計算的項目可讓那些函數在應用程式中重複使用。
您可將群組與計算的項目儲存為內嵌或具名物件:
在編輯及儲存檢視時,或在「複合版面配置」中工作時,如果建立群組或計算的項目,該群組或計算的項目會以內嵌方式與分析一併儲存。
使用「選擇步驟」窗格時:
您可將步驟內的群組或計算的項目儲存為目錄中的具名物件。
您可以將資料欄的一組步驟或產生的成員清單儲存為具名物件。如果其中一個步驟包含計算的項目,您就無法將一組步驟儲存為一個群組。
如需新增已儲存群組至分析的相關資訊,請參閱新增群組至其他分析。
以具名物件方式將計算的項目或群組儲存至目錄:
顯示「選擇步驟」窗格。
按一下計算的項目或群組的連結,然後按一下另存計算的項目或另存群組,即可顯示「另存新檔」對話方塊。
完成對話方塊,將物件儲存至目錄。
以群組方式將一組步驟儲存至目錄:
顯示「選擇步驟」窗格。
按一下資料欄名稱最右側的儲存選擇步驟按鈕。
完成儲存選擇步驟對話方塊,以群組方式將群組儲存至目錄。
使用篩選和選擇步驟可限制執行分析所顯示的結果,讓結果能夠回答特定的問題。
篩選和選擇步驟若再配合您為分析所選取的資料欄,可決定結果包含的內容。根據篩選和選擇步驟,只會顯示符合準則的結果。例如,根據您所從事的行業,您可以使用篩選和選擇步驟,瞭解前十名績效最佳人員、特定品牌的銷售金額、利潤最高的客戶等等。
另一種類型的篩選稱為提示,可套用至儀表板中的所有項目。您可在執行時期使用提示來完成選擇步驟和篩選。如需詳細資訊,請參閱儀表板和分析中的提示。
Oracle BI Enterprise Edition 提供「篩選」檢視和「選擇步驟」檢視,您可以將它們新增至分析,以顯示套用至分析的任何篩選或選擇步驟。新增這些檢視可以協助使用者瞭解分析中顯示的資訊。如需如何新增檢視至分析的詳細資訊,請參閱新增要在儀表板中顯示的檢視。
篩選和選擇步驟均是套用在資料欄層次,提供兩種限制分析中資料的方法。
篩選永遠會先套用在資料欄,之後才套用任何選擇步驟。套用步驟時會根據其指定的順序。篩選和選擇步驟有各種差異。
篩選
您可以直接將篩選套用至屬性資料欄和計量資料欄。您必須在查詢聚總前先套用篩選,才能影響查詢和計量產生的值。例如,假設成員清單聚總總計為 100。經過一段時間之後,有更多成員符合準則並通過篩選,因而使得聚總總計增加為 200。
選擇步驟
選擇步驟是查詢聚總後套用並只影響顯示的成員,不影響產生的聚總值。例如,假設階層式成員清單聚總總計為 100。若使用選擇步驟移除其中一個成員,則聚總總計仍維持 100。
您可以為屬性資料欄與階層式資料欄建立選擇步驟。選擇步驟是針對每個資料欄,無法跨越多個資料欄。因為屬性資料欄沒有聚總成員,因此相較於階層式資料欄,在屬性資料欄使用選擇步驟與篩選的差異不大。當計量資料欄顯示在「選擇步驟」窗格中時,您無法為之建立步驟,因此不受步驟影響。計量可用來建立屬性與階層式資料欄的條件步驟,像是大於一百萬元的銷售。
指定分析中所要包含的資料成員時,您會從資料來源建立資料的選擇項目。
每個選擇項目均會針對特定資料欄的一組成員指定準則,例如 Product 或 Geography。每個選擇項目均包含一或多個步驟。步驟是一個會影響選擇項目的指示,例如新增值中包含 ABC
的 Product 成員。執行步驟的順序會影響資料的選擇。每個步驟會將作用累加至先前步驟的結果,而非作用於該資料欄的所有成員。
您可以在「選擇步驟」窗格中檢視這些選擇步驟。建立步驟的方式如下:
當您新增資料欄至分析時,會自動建立一個包含所有成員的選擇步驟,除非您明確新增特定的成員。當您在「結果」頁籤中拖放要新增至分析的資料欄成員時,也會自動建立步驟。例如,假設您將「年度」階層式資料欄的 FY2007 和 FY2008 成員拖放至樞紐分析表。便會建立新增 FY2007、FY2008 選擇步驟。
當您新增群組與計算的項目時,會自動建立步驟。
當您使用滑鼠右鍵互動 (例如新增相關的或僅保留),為特定階層式資料欄或屬性資料欄重新定義資料的選擇項目時,會自動建立步驟。若要移除這些選擇步驟,請使用像移除群組或移除計算的項目滑鼠右鍵互動選項。請參閱檢視中的滑鼠右鍵互動以瞭解其他資訊。
您可以使用「選擇步驟」窗格直接建立步驟,為特定階層式資料欄或屬性資料欄重新定義資料的選擇項目。您可以從「結果」頁籤、「準則」頁籤與部分檢視編輯器等位置,顯示「選擇步驟」窗格。
選擇步驟為下列其中一種類型:
成員的明確清單 — 步驟可以包含資料欄的成員清單,例如 Boston、New York、Kansas、South。對於階層式資料欄,成員可以來自不同的階層層次。對於屬性資料欄,成員只能來自該資料欄。
條件步驟 — 可以指定根據條件 (有許多類型,包含根據計量或根據上下限值) 從某個資料欄選取成員的步驟。此成員清單為動態清單,在執行時期決定。
根據階層步驟 — 可讓您選取成員時選取關係類型的階層式資料欄步驟。您可以選取家族關係 (例如子項或父項)、特定階層層次 (僅限以層次為基礎的階層) 或層次關係 (僅限以層次為基礎的階層)。
群組與計算的項目 — 步驟可以包含群組或計算的項目。您只能將群組與計算的項目用於「新增」步驟;您無法將它們用於「僅保留」或「移除」步驟。
如需相關資訊,請參閱使用群組和計算的項目。
註:
使用選擇步驟時,如果您搜尋階層式資料欄中非文字 (例如日期或時間) 的成員,搜尋將不會產生任何結果。您可以在「選擇步驟」窗格中建立步驟,此窗格可以在不同的位置顯示。
您可以建立選擇步驟,以提供指定從資料來源選擇資料時的準則說明。當您將資料欄新增至分析後,就會新增隱含的從所有成員開始步驟。「所有」表示套用篩選後的所有資料欄成員。
例如,您可以建立一個步驟來為「辦公室」資料欄中的下列成員指定準則:Baltimore、Austin 以及 Athens。
使用者可以在「結果」頁籤中建立選擇步驟,以選擇對他們而言最重要的資料。
當您使用滑鼠右鍵互動 (例如新增相關相目或僅保留) 為檢視中的特定階層式資料欄或屬性資料欄重新定義資料的選擇項目時,就會自動建立選擇步驟。請參閱檢視中的滑鼠右鍵互動。
新增選擇步驟至分析後,您可以移至分析編輯器的「結果」頁籤,新增「選擇步驟」檢視至分析。如果您新增「選擇步驟」檢視,使用者就可以在執行時期檢視套用至分析的選擇步驟。如需有關新增選擇步驟檢視的詳細資訊,請參閱「結果」頁籤的「選擇步驟」編輯器。
將選擇步驟儲存為群組物件,即可在許多地方重複使用這些步驟。
如果您已建立一組選擇步驟,則您可以將該組步驟當作群組物件來儲存及重複使用 (如以內嵌或具名方式儲存群組與計算的項目中所述)。
如果您的儲存區域是針對雙資料欄設定,則可以在雙資料欄上建立選擇步驟。
若要在雙資料欄上建立選擇步驟,請選取該資料欄的顯示值,便會使用對應這些顯示值的程式碼值自動評估步驟。
如果您使用雙資料欄,則請小心使用「新建計算的項目」對話方塊。您可以為計算的項目自訂公式包含位置運算子 (例如 $1),從資料集中第一個資料列指定資料欄。當您包含位置運算子時,評估公式時顯示值無法對應程式碼值。
如需有關雙資料欄的資訊,請參閱瞭解雙資料欄功能。
請使用下列程序來開啟及編輯已儲存的篩選。
若是編輯及儲存指定篩選,您對篩選所做的變更會傳輸到使用該篩選的位置。
此 SQL 函數可讓您新增非標準篩選。
本節提供下列有關使用 EVALUATE_PREDICATE 函數的主題:
如需有關此函數的詳細資訊,請參閱 Logical SQL Reference Guide for Oracle Business Intelligence Enterprise Edition。
您可以新增 EVALUATE_PREDICATE 函數作為內嵌篩選子句。
您無法將此函數用於階層式資料欄。當您無法以 Oracle BI EE 篩選運算子建立適當的篩選子句時,請使用此函數。此函數目的為布林傳回類型的資料庫函數,且僅能用於 SQL 函數。對於 EVALUATE_PREDICATE 的支援並未延伸至所有多維資料來源。此外,EVALUATE_PREDICATE 無法用於 XML 資料來源。
若要新增 EVALUATE_PREDICATE 函數成為內嵌篩選子句,管理員必須授予您「新增 EVALUATE_PREDICATE 函數」權限。
範例
下列範例示範如何使用 EVALUATE_PREDICATE 函數。此範例要求 Products.P4 Brand 值超過 6 個字元。執行後,此範例會傳回 P4 Brand 資料欄中資料長度超過 6 個字元的任何資料列 (例如 BizTech 和 HomeView)。
SELECT 0 s_0, "A - Sample Sales"."Products"."P3 LOB s_1, "A - Sample Sales"."Products"."P4 Brand" s_2, "A - Sample Sales"."Base Facts"."1- Revenue" s_3 FROM "A - Sample Sales" Where EVALUATE_PREDICATE('length(%1)>6',"A - Sample Sales"."Products"."P4 Brand"). ORDER BY 1,2,3
此程序描述如何將 EVALUATE_PREDICATE 函數新增至內嵌篩選。
請注意,您無法在階層式資料欄使用此函數。如需詳細資訊,請參閱如何搭配篩選使用 EVALUATE_PREDICATE 函數?和 Logical SQL Reference Guide for Oracle Business Intelligence Enterprise Edition。
如果您要篩選分析中的資料,您可以套用任何指定的篩選。
使用下列程序套用指定篩選至分析。
使用 AND 與 OR 布林運算子結合與群組資料欄篩選,可讓您建立複雜篩選,而無需瞭解 SQL 敘述句。
您可以利用分組或結合資料欄篩選,建立 Oracle BI EE 篩選分析的優先順序。
您可以建立與編輯邏輯 SQL WHERE 子句以作為篩選。
一般情況不需要此功能,此功能主要針對需要進階篩選功能的使用者。如需 SQL 子句的描述,請參閱 Logical SQL Reference Guide for Oracle Business Intelligence Enterprise Edition。
註:
將篩選轉換為 SQL 敘述句之後,您就只能在「進階 SQL 篩選」對話方塊中檢視及編輯篩選項目。屆時您將無法再使用「編輯篩選」對話方塊來檢視和編輯篩選。計算的計量是從其他計量衍生並透過公式建立的計量。
建立計算的計量:
執行下列其中一個動作:
若要為包含「複合版面配置」內之資料欄的資料檢視建立計算的計量,請按一下「分析編輯器:結果」頁籤上的新建計算的計量按鈕。
若要為「複合版面配置」內的特定資料檢視建立計算的計量,請編輯該特定資料檢視,然後按一下「結果」頁籤資料檢視編輯器上的新建計算的計量按鈕。
註:
您無法將計算的計量新增至直接資料庫查詢或結合的要求。完成「新建計算的計量」對話方塊。如需有關資料欄公式的資訊,請參閱編輯資料欄的公式。
按一下確定按鈕。
編輯計算的計量:
您可以從分析編輯器的「準則」頁籤編輯計算的計量。
您可以建立群組或計算的項目,作為在熱力矩陣、表格、樞紐分析表、格子圖或圖表中顯示資料的方式。
群組與計算的項目可讓您新增資料來源中不存在的「成員」至資料欄。這些成員亦稱為「自訂成員」。
群組為您所選取成員的靜態清單,或由選擇步驟產生的靜態或動態清單。群組是由成員所代表。您可以展開為階層式資料欄建立的群組,但無法展開為屬性資料欄建立的群組。
群組會使用顯示它的計量資料欄的現有聚總函數。聚總是從 Oracle BI 伺服器的最低明細層次往上執行,但不會重複計數值。
計算的項目是成員之間的運算,由無法展開的單一成員代表。當建立計算的項目時,便是新增在其中選取如何聚總項目的新成員,例如,「總計」或「平均」或自訂公式。計算是在聚總層次執行,而非在最低明細層次。
建立群組或計算的項目時,若選取所有的檢視選項,群組與計算的項目就都會成為整個分析的選擇步驟。因此,兩者皆套用至該分析的所有檢視。這些群組與計算的項目皆可儲存為內嵌或具名物件。如需相關資訊,請參閱以內嵌或具名方式儲存物件。
如果您透過選取目前的檢視選項建立特定檢視的群組或計算的項目,該群組或計算的項目只適用於特定的作用中檢視。
群組 (在其他產品中亦稱為「儲存的選擇項目」) 指的是使用者定義的資料欄成員。
群組可以為成員清單,或是可執行產生成員清單的一組選擇步驟。所有成員必須來自相同的屬性資料欄或階層式資料欄,在階層式資料欄中,成員可以來自不同的階層層次。群組會依照其新增的順序,永遠顯示在資料欄清單的底部 (如「選擇步驟」窗格中所顯示)。群組可以包含成員或其他群組。您可以建立自訂群組,然後將它加到檢視內的資料欄。
您可以將群組儲存至目錄並重複使用群組。例如,您可以將群組套用至分析與儀表板資料欄提示或變數提示。若在提示套用群組,則提示會在執行時期向使用者顯示群組為選項清單選項,或顯示群組成員為選項清單選項。如需使用者選取群組或資料欄成員時以提示覆寫選擇步驟的相關資訊,請參閱將選擇步驟覆寫為資料欄提示。
計算的項目是成員之間的運算,由單一成員代表。
計算的項目可讓您覆寫 Oracle BI 儲存區域中指定的預設聚總規則,以及針對現有分析由設計工具選擇的聚總規則。您可以使用自訂公式 (此為預設) 或結合選取的成員與函數 (例如,SUM),以定義計算的項目。
計算的項目是為使用者定義的資料欄成員。計算的項目可以包含成員或其他計算的項目。計算的項目依照其新增的順序,永遠顯示在資料欄清單的底部 (如「選擇步驟」窗格中所顯示)。您可以將計算的項目儲存至目錄並重複使用。
當您要以單一實體檢視與操控一組成員時,便可使用計算的項目。例如,您可以為下列項目定義計算的項目:
某個地理區域的主要客戶
高階產品
非標準期間 (例如 9 月的前 3 個禮拜)
您可以在不同位置為資料欄建立計算的項目。計算與套用至計量的預設聚總規則不同,如新增合計至表格和樞紐分析表中所述。計算的項目在內部是由 SQL SELECT 敘述句所處理,指示的函數則在結果集上執行。如需有關 SQL 函數的詳細資訊,請參閱 Logical SQL Reference Guide for Oracle Business Intelligence Enterprise Edition。
您可以使用群組或計算的項目,新增資料欄的新成員。
例如,您可以複查行動裝置所產生的收益,並且與其他產品類型的收益做比較。您可以針對「產品」資料欄建立「行動裝置」群組,其中包括「折疊型手機」和「智慧型手機」。使用以下程序來建立計算的項目或群組。
註:
Oracle Online Analytical Processing (OLAP) 若是分析的資料來源,使用群組時可能會出現錯誤。若群組包含在檢視中且出現錯誤訊息,則問題可能在於該分析中的計量資料欄使用外部聚總。請洽詢管理員,以實行下列其中一種可能的解決方法:
明確指定儲存區域中計量的聚總規則。
建立適當的值群組作為 Oracle OLAP 分析工作區的維度成員。
您可更新群組和計算的項目,以呈現對使用者最為有用的資訊。
您可以使用各種方式編輯群組和計算的項目:
在「選擇步驟」窗格中,按一下計算的項目或群組的連結,然後按一下編輯以顯示適當的對話方塊。
若已在目錄中儲存物件,請在目錄窗格中選取物件並按一下編輯以顯示適當的對話方塊。
在熱力矩陣、表格、樞紐分析表或格子圖 (外部邊緣上) 中,於群組或計算的項目按一下滑鼠右鍵並選取編輯群組或編輯計算的項目。
群組或計算的項目的值可能受到篩選和選擇步驟的影響,如下列清單所述:
篩選 — 群組或計算的項目僅使用篩選未移除的成員來評估。例如,若有 SUM (EAST + WEST) 的計算的項目,但是 WEST 已被篩選移除,則只有 EAST 總計會包含在計算的項目。若所有成員皆被移除,則會傳回空值,在熱力矩陣、表格、樞紐分析表或格子圖中會顯示為空白儲存格。
選擇步驟 — 當您建立選擇步驟時,可以新增群組或計算的項目至步驟。後續「僅保留」或「移除」步驟可能會參照群組或計算的項目中成員。
群組清單會受到後續步驟中保留或移除之成員的影響,但群組大綱值則維持不變。例如,假設 MyNewYork 群組包含 Albany 和 Buffalo 且其值為 100。假設 Albany 在稍後的步驟中移除。MyNewYork 群組的值仍為 100,但不再列示 Albany。
計算的項目不會受到後續步驟中保留或移除之成員的影響。
如果您移除所有檢視中使用目前的檢視選項按鈕所建立的群組或計算的項目,該群組或計算的項目會繼續存在,但是不會再加到後續新增的任何新檢視。
如果您移除所有檢視中使用所有的檢視選項按鈕所建立的群組或計算的項目,該群組或計算的項目會繼續存在,而且將會加到後續新增的任何新檢視。
使用滑鼠右鍵功能表移除群組或計算的項目時請注意下列事項:
從儀表板頁面內的檢視 — 計算的項目或群組只會從目前的檢視移除。
從檢視編輯器內的檢視 — 計算的項目或群組只會從所有的檢視移除。
您可以新增群組至在其他分析中建立的同一個資料欄。
新增至分析的群組可以是成員清單或一組選擇步驟。如需有關這些群組的資訊,請參閱將選擇步驟儲存為群組物件。
若要新增群組,您可以使用「結果」頁籤,或者在「目錄」窗格中執行此作業。您也可以使用下列方式新增群組:
在「編輯成員步驟」對話方塊的動作方塊中,選取從群組或計算的項目開始,然後從「可用」清單的「目錄」窗格中選取群組。
在「選擇步驟」窗格中,按一下適當資料欄的接著,新建步驟,選取新增群組或計算的項目,選取選取現有群組和計算的項目,然後在產生的對話方塊中選取群組。
使用群組和計算的項目時,可能需要使用「巢狀」結構;例如在群組內建立群組。
下列清單提供巢狀群組與計算的項目的各種案例:
群組可以使用巢狀結構;亦即,群組可以包含其他群組。巢狀群組為「簡維」。例如,假設 my_favorite_countries 群組包含 my_favorite_cities 群組。當您在表格中顯示及展開 my_favorite_countries 群組時,並不會見到 my_favorite_cities 群組。而是見到 my_favorite_cities 群組的成員值。
計算的項目可以使用巢狀結構;亦即計算的項目可以包含其他計算的項目。
群組不可包含計算的項目,計算的項目也不可包含群組。
使用選擇步驟時:
您可以儲存選擇步驟,這些選擇步驟包含群組或計算的項目為在執行時期產生其結果的一系列步驟,或是作為靜態並每次重新顯示的結果。
您可以使用「目錄」窗格,套用儲存的步驟選擇項目的群組。若是如此,當儲存的選擇項目包含計算的項目步驟時,您只能新增該群組的成員。您無法新增群組本身。
若要瞭解計算的項目,您必須對 SQL 有基本的瞭解。
本節中的範例與說明假設您對於 SQL 敘述句及其語法有基本的瞭解。這些範例中顯示的語法適用於新建計算的項目對話方塊中的「自訂公式」函數。範例為假設性質。並非所有可能的計算的項目皆會顯示。
範例 6-1 取得目前計量的值
本範例顯示取得 SoftDrinkA、SoftDrinkB 與 SoftDrinkC 各項產品之目前計量的值 (例如銷售金額) 並加總值所需使用的程式碼。
如此等同於從「函數」清單中選取「總計」,然後輸入或按一下 'SoftDrinkA','SoftDrinkB','SoftDrinkC',將它們新增至「函數」欄位。
sum('SoftDrinkA','SoftDrinkB','SoftDrinkC')
範例 6-2 取得目前計量最小值
本範例顯示取得 SoftDrinkA 或 SoftDrinkB 當中較低者之最小目前計量 (例如銷售金額) 所需使用的程式碼。
min('SoftDrinkA','SoftDrinkB')
在本範例和上一個範例中,會針對外層 (例如 Product 層) 中的每個成員執行每個功能計算的項目。例如,若 Year 與 Product 置於軸上,而先前計算的項目有一個是在 Product 層上建立,則會每年計算結果。
範例 6-3 取得外層中每個項目的值
本範例顯示取得外層 (例如 Year 與 Product) 中每個項目值並予以相加所需使用的程式碼。
不需指定屬性資料欄的具名項目 (例如 SoftDrinkA),而是指定 $n 或 $-n,其中的 n 為指示項目資料列位置的整數。若指定 $n,則會從第 n 列取得計量。若指定 $-n,則會從最後一列算起的第 n 列取得計量。
例如,對於銷售金額,$1 會從資料集的第一列取得計量,$-1 會從資料集的最後一列取得計量。
sum(*)
範例 6-4 取得計量值並總計
本範例顯示從第一、第二與第三列取得項目之目前計量 (例如銷售金額) 並予以總計所需使用的程式碼。
sum($1,$2,$3)
範例 6-5 新增銷售值
本範例顯示新增 SoftDrinkA、SoftDrinkB 與 SoftDrinkC 之銷售所需使用的程式碼。請注意,範例中顯示的兩個計算的項目是相等的。亦即,Sum 是預設函數;因此可以省略。
'SoftDrinkA' + 'SoftDrinkB' + 'SoftDrinkC'
sum('SoftDrinkA','SoftDrinkB','SoftDrinkC')
範例 6-6 新增銷售值並傳回最大值
本範例顯示新增 SoftDrinkA 的銷售與 diet SoftDrinkA 的銷售,接著新增 SoftDrinkB 的銷售與 diet SoftDrinkB 的銷售,然後傳回這兩個金額當中之最大值所需使用的程式碼。
max('SoftDrinkA' + 'diet SoftDrinkA', 'SoftDrinkB' + 'diet SoftDrinkB')