TALLY レジスターの指定

TALLY レジスターは、リテラル値を追加オペランドとして、TALLY レジスターをサポートする関数 の関数に提供する場合に定義されます。オペランドの数が決まっている関数では、リテラル・オペランドは、特定の関数に定義されているオペランドを超えた、次の定位置オペランドです。オペランドの数が不定の関数では、関数オペランドを区切るため、および次のオペランドを TALLY リテラルとして示すためにヌル・オペランドが必要です。

例 1
IF FLD_CO(1,8,c,'a',,'Number of records with "a"') then
  chg_out('a','c',0,,,,'Number of strings changed from "a" to "c"')
以下の TALLY 報告書が生成されます。
TALLY summary report
---------------------------------------------------------
Number of records with "a"                     4
Number of strings changed from "a" to "c"     32
注: FLD_CO は、不定数の検索リテラルを持つことができます。その結果、TALLY レジスターは ,,'Number of records with "a" によって指定されます。

CHG_OUT では、ヌル定位置区切り文字は必要ないため、TALLY リテラルを 7 番目のオペランドにする必要があります。

例 2
*FASTREXX
if fld_tm(1,'01'x) then do;
  OVLY_OUT('**',1,2,,, 'Count of first 2 chars set to "**"')
  return
end;
produces this tally report:
TALLY summary report ------------------------------------------------------ Count of first 2 chars set to "**" 4