2010年3月16日火曜日

選択式アンケートをビューで集計する

アンケートの様なアプリケーションで、ダイアログリストやチェックボックスといったキーワードから選択する方式のフィールドが複数あるとき、どのキーワードが何個選択されたかを知るためのビューをフィールド毎に1つ作っていませんか?

これら複数のフィールドの値をまとめて一つのビューへ表示する方法があります。

以下、アンケートのアプリケーションを作成したときの事例です。

フォームには選択式の回答欄として、フィールドを9つ(フィールド名:A1~A9)設置しています。

ビューは1つ。「簡易集計」
ビューのプロパティで"データベースを最初に開くときすべてを省略する"を有効にします。

1列目:選択された値の数を表示します
ソート:なし、カテゴリなし
式:@IsCategory(@DocDescendants("%"; "%"; "%"); "")

2列目:選択式の項目の名前と値を階層表示します
展開できる行に三角アイコンを表示する:有効
ソート:昇順、種類:カテゴリ別、複数値を別のエントリで表示:有効
式:
empty := " (未回答)";
( "Q1\\" + @If( A1 = ""; empty; A1) ):
( "Q2\\" + @If( A2 = ""; empty; A2) ):
...省略...
( "Q8\\" + @If( A8 = ""; empty; A8) ):
( "Q9\\" + @If( A9 = ""; empty; A9) )


ここで2列目の式について簡単に説明します。

A1フィールドで何も選択しなかった場合、"Q1\\ (未回答)"となります。
A1フィールドで複数の値("みかん"と"りんご")を選択した場合は"Q1\\みかん":"Q1\\りんご"となります。
2つの円マーク(またはバックスラッシュ)で繋げた文字列を上のビューで表示すると2列目は

▼Q1
 ▼ (未回答)
 ▼みかん
 ▼りんご

のように表示されます。

0 件のコメント:

コメントを投稿