TOP > Users > ORCA通信アーカイブ > vol.016

 ORCA通信

ORCA通信とはサイズから定期的に発行されるスペック作成のヒントと新規開発されるメニューのご案内です。


 ORCA通信 vol.016(2009/4/23発行)


ORCAユーザーの皆様、こんにちは。
第16回ORCA通信をお届けいたします。

INDEX
[1] 開発情報(バージョンアップ情報)
[2] スペック作成のヒント第十六回:これは使える!JavaScript  見本はこちら

[1] 開発情報:1.3.0へバージョンアップ!!

主な変更点は以下のとおりです。

■全体
丸ORCAのLinuxサーバ版を64bit対応しました。
 対応OS :RedHat ES4 update6, RedHat ES5(最新のバージョンをあてたもの)

■ORCA Core
丸対象者情報設定のインポート作成機能を追加しました。
丸設問詳細設定の設問の一括チェック、一括解除機能を追加しました。
丸集計表示設定のクロス集計のDLシートタイプ
 「1設問毎」・「セクション毎」・「全設問」を追加しました。
丸ダウンロードの集計表示設定をプルダウンで変更可能にしました。
 (ダウンロード時にダウンロードデータを変更できるようになりました。)
丸閲覧ユーザで閲覧ホワイトボードの素材をダウンロード出来るようにしました。
丸長いスクリプトを書くと、サーバーが落ちてしまうバグを修正しました。
 その他、いくつかのバグを修正しました。

■ORCA DataConverter
丸DataConverterの変換形式に楽クロスを追加しました。

インストールにWEBサーバーの再起動が必要です。
実査中のインストールは避けたほうがよいでしょう。
作業時間は30分程度です。(内サーバー停止時間は5分程度です。)

追ってご担当者様に連絡させていただきますのでメンテナンスのスケジュール調整をお願いいたします。


[2] スペック作成のヒント
第十六回:これは使える!Java Script


数字を入力してもらい、次のページで合計や計算された値を表示させるには自動回答設問を利用することで可能ですが、
同一ページで計算させるにはJavaScriptを使用します。
今回は、そのJavaScriptを使った「マトリクス形式の合計値表示」をご紹介いたします。

完成画面はこのような画面です。→こちら


■サンプルスペックの説明

BANK Java Scriptタブに以下を入力します。

var input_n = 8;選択肢数
var id_prefix = "Q16000_";マトリクス親の設問番号
var id_suffix = "xQ16010XN1";マトリクス子の設問番号
var dec_num = 0;入力桁数(0→整数、1→小数点第一位、2→小数点第二位・・)
var readonly_bgcolor = "#CCCCCC";合計値の背景色
(変更する箇所はこの最初の5行です↑↑)

var input_id_array = new Array();
var input_array = new Array();
var total_elem;

function init_total_elem()
{
        var total_id = id_prefix + input_n + id_suffix;
        total_elem = document.getElementById( total_id );
        if( total_elem )
        {
                total_elem.readOnly = true;
                total_elem.style.background = readonly_bgcolor;
        }
}

function calc_total()
{
        var total = 0;
        for( var i = 0; i < input_array.length; i++ )
        {
                var num = input_array[i].value;
                if( num != "" && ! isNaN( num ) )
                {
                        num = (num - 0).toFixed(dec_num);
                        input_array[i].value = num;
                        total -= -num;
                }
        }
        if( total_elem )
        {
                total_elem.value = (total - 0).toFixed(dec_num);
        }
}
function init()
{
        init_total_elem();
        for( var i = 1; i < input_n; i++ )
        {
                var wk_id = id_prefix + i + id_suffix;
                input_id_array.push( wk_id );
        }
        for( var i = 0; i < input_id_array.length; i++ )
        {
                var wk_elem = document.getElementById( input_id_array[i] );
                if( wk_elem )
                {
                        wk_elem.onblur = calc_total;
                        input_array.push( wk_elem );
                }
        }

        calc_total();
}

※BANK設定画面下の onload= の入力欄に init(); を入力します。

16000.Q/16010.Qマトリクス設問
16020.J合計値が100でなかったら16000.Qへバックジャンプします。

ジャンプ式

var $i;
var $total = 0;
for( $i = 1; $i < 8; $i += 1 )選択肢数
{
            $total += P[$i].Q16010.N;マトリクス子の設問番号
}
return ( $total != 100 );合計値にしたい数


スペックを添付いたしますので是非コピ-してお使いください!!
スペックダウンロード

今回のORCA通信はいかがでしたか。
ご不明な点等がございましたらお気軽にご連絡ください。

『こんな見本スクリプトが欲しい!』というご要望もお待ちしております。
どしどしお寄せください!!

それでは次回もお楽しみに!


  ページトップへ

vol.015へ vol.015へ vol.017へvol.017へ