演算子

複数のフィールドの総和やフィールド内の値の演算結果を別のフィールドに格納します。

準備

値の変更時に演算結果を表示

値の変更時に演算結果を表示するにはにはJavascriptを使用します。

  • wf_common.jsをヘッダ部分でインクルードしてください。
  • initSpValue('wf');をbodyタグのonLoad属性に追加してください。
演算対象のフィールド

演算対象となるフィールドはラジオボタン(radio)、チェックボタン(checkbox)、 コンボボックス(seslect)を指定できます。

フィールドの値には以下のような文字列により指定できます。 値の前に空白をはさんで文字列を含めることもできます。

  • 「値」
  • 「値@個数」
演算結果の格納のためのフィールド

演算結果を格納するフィールドの指定は以下の2種類あります。

  • 「読込専用のテキストフィールド」 name属性にカラム名、readonly属性を有効にし、alt属性に演算式を記述します。
  • 「非表示フィールド(type="hidden")」 name属性にカラム名、value属性に演算式を記述します。

例)


<head>
...
<script type="text/javascript" charset="UTF-8" src="wf_common.js">
...
</head>

<body onLoad="initSpValiable('wf');">
...
<input type="checkbox" value="価格 1000"/>
<input type="radio" value="商品1 1000@1"/>
<input type="radio" value="商品1 1000@2"/>
<input type="radio" value="商品1 1000@3"/>
...
</body>

演算式

  • 二項演算 +, -, /, *を使用できます。
  • 集計関数 MAX,MIN,SUM および ARG を使用できます。
  • 演算式は{% と %} の間に式を記述します。
  • 演算の対象となるカラムの値は「'カラム名'」で指定してください。

例1)

二項演算の例

値1:
<select name="値1">
	<option value="0">0</option>
	<option value="1">1</option>
	<option value="2">2</option>
	<option value="3">3</option>
	<option value="4">4</option>
	<option value="5">5</option>
</select><br />

値2:
<select name="値2">
	<option value="0">0</option>
	<option value="10">10</option>
	<option value="20">20</option>
	<option value="30">30</option>
	<option value="40">40</option>
	<option value="50">50</option>
</select><br />

+(加算):<input type="text" name="加算" alt="{%'値1'+'値2'%}" value="" readonly="readonly" /><br />
-(減算):<input type="text" name="減算" alt="{%'値1'-'値2'%}" value="" readonly="readonly" /><br />
*(乗算):<input type="text" name="乗算" alt="{%'値1'*'値2'%}" value="" readonly="readonly" /><br />
/(除算):<input type="text" name="除算" alt="{%'値1'/'値2'%}" value="" readonly="readonly" /><br />
				
CSV
値1値2加算減算乗算除算
450544620012.5

例2)

集計関数の例

商品1 <input type="checkbox" name="商品" value="商品1 5000" /><br />
商品2 <input type="checkbox" name="商品" value="商品2 5000" /><br />
商品3 <input type="checkbox" name="商品" value="商品3 5000" /><br />
商品4 <input type="checkbox" name="商品" value="商品4 5000" /><br />
商品5 <input type="checkbox" name="商品" value="商品5 5000" /><br />

合計:    <input type="text" name="合計"     value="" alt="{%SUM('商品')%}"   readonly="readonly" /><br />
最大値:  <input type="text" name="最大値"   value="" alt="{%MAX('商品')%}"   readonly="readonly" /><br />
最小値:  <input type="text" name="最小値"   value="" alt="{%MIN('商品')%}"   readonly="readonly" /><br />
平均値:  <input type="text" name="平均値"   value="" alt="{%AVG('商品')%}"   readonly="readonly" /><br />
カウント:<input type="text" name="カウント" value="" alt="{%COUNT('商品')%}" readonly="readonly" /><br />
				
CSV
商品合計最大値最小値平均値カウント
商品1 1000|商品3 3000|商品5 500090005000100030003