利用「For 子句」篩選草地賽事
在上一編網誌中我們討論了在 While 子句中的 MCL 變數 {2},今次我們會討論在 For 子句中的另一 MCL 變數 {1}。為了集中注意力在 For 子句,在本文中我們把其他部份改為 「… 」,在實際應用時 「… 」 必須還原為原有的文字。
要篩選草地或非草地的賽事,我們會利用 HrIsTurf( ) 函數,這函數會在草地賽事中傳回 .T. ,而非草地的賽事則會傳回 .F.。
只計算草地賽事
JrCountBy( … , … , … ,’For HrIsTurf( )=.T. … ’)
只計算非草地賽事
JrCountBy( … , … , … ,’For HrIsTurf( )=.F. … ’)
計算所有與現賽賽道類別相同的賽事
JrCountBy( … , … , … ,’For HrIsTurf( )=’+Tran(HrIsTurf( )) … ‘)
利用 MCL 變數設定賽道類別
假如您不想限定賽道類別,您可以把整個 For 子句移除,您亦可以把 For 子句寫成 For .T.,亦即所有賽事都視作合乎條件。很多人都希望快速互換以下兩條件以作比較:
賽道類別相同(同泥草)的賽事 JrCountBy( … , … , … ,’For HrIsTurf( )=’+Tran(HrIsTurf( )) … ‘)
任何賽道類別的賽事 JrCountBy( … , … , … ,’For .T. … ‘)
最有效的方法是把條件放在 MCL 變數中,在「所有路程勝敗統計」檢視中我們選擇了 MCL 變數 {1}:
JrCountBy( … , … , … ,’For .T. ‘+{1} … )
當 {1} 的值為空白時,函數變成
JrCountBy( … , … , … ,’For .T. … ‘)
當 {1} 的值為「’ And HrIsTurf()=’+Tran(HrIsTurf())」時,函數變成
JrCountBy( … , … , … ,’For .T. And HrIsTurf( )=’+Tran(HrIsTurf( )) … ‘) 亦即
JrCountBy( … , … , … ,’For HrIsTurf( )=’+Tran(HrIsTurf( )) … ‘)
合併 MCL 變數
當您同時選擇多組變數時,由於每組變數的值都可能不同,各組變數將會用以下規則合併:
- 同一變數,投注樂會採用各已選組中最後一組的值,如果最後一組沒有數值 (即空白),投注樂會改用對上一已選組的變數值,如果這變數在所有已選的組皆沒有數值,則投注樂會採用變數的預設值。
- 假如您選取了變數名稱左方的 [使用白值] 方格,空白值會視作「無字字串」,並在變數組合併時不會被視作空白。

上圖的例子中,用戶選用了以下三變數組:
|
組名
|
變數 {1} (同泥草) 值
|
變數 {2} (日數) 值
|
|
同泥草 |
" And HrIsTurf()="+Tran(HrIsTurf()) |
|
|
騎師馬房: 90 日, 馬匹: 所有 |
|
90 |
|
騎師馬房: 120 日, 馬匹: 所有 |
|
120 |
投注樂自動把三組合併,變數 {1} 的值成為 " And HrIsTurf()="+Tran(HrIsTurf()) (由於其餘兩變數組中 {1} 為空白),變數 {2} 的值則成為 120(取最後一組的值)。