corabo:業務の処理速度改善

電源オプションの設定を確認してみよう。

大量データを取り扱う、或いは手順が多く複雑である業務は、処理速度が相応に遅くなってしまいます。‥‥しかし果たして、本当にそれらの理由だけによるものなのでしょうか。ひょっとすればパソコンの設定で改善されるかもしれません。

f:id:xoblos:20180126161852p:plain

[コントロールパネル]―[すべてのコントロールパネル項目]―[電源オプション]を実行すると、上図のように「電源プランの選択」というものが出てきます。各プランは、それぞれどういう程合いで設定されるか明示されております。他に影響が出ないことを前提に、設定を変えてみてください。「省電力」のように電力消費とパフォーマンス低下から改善された例もあれば、逆に「高パフォーマンス」で電力消費もパフォーマンスも高くして改善された例もあります。特に、以下の環境に corabo が置かれているようであれば、参考にしてみてください。22時間、処理時間が短縮された前例もあります!

Hyper-VAWS

corabo:ログファイルのログレベル

ログの出力内容を変更する。

前回記事でログファイルに関してご案内しました。今回はファイルの中身に触れていきましょう。

"ログ" というからには、一連処理の開始~終了の出来事を明示してくれるものと考えますが‥‥人によっては、その内容は大雑把でも困ります。専門的表現だけで占められていても困ります。主要な部分が直ぐに見つけられない程詳細に出力されても困ります。

以下のログレベルから、必要とする情報を持ったレベルを選び、「<level value="" />」のダブルクォーテーション部分へ書き入れましょう。

Fatal:システム停止するような致命的障害
Error:システム停止までは及ばないが問題となる障害
Warn :障害ではない注意警告
Info :操作ログなどの情報
Debug:開発用のデバッグメッセージ
Trace:詳細なデバッグの出力

他にも「Emergency」「Alert」「Critical」「Severe」「Notice」
「Fine」「Finer」「Verbose」「Finest」などあり‥‥

corabo:ログファイルのサイズ上限と、1日に作成される個数を増やす

ログファイルのサイズ上限と、1日に作成される個数を増やすことができます。設定を変更したい場合は、以下の該当設定ファイルをメモ帳で開いてください。

(インストールフォルダが C: ドライブの場合の例です)

ブラウザ上の「coraboのログ」に対応
C:\xoBlos\web\corabo\Web.config

ブラウザ上の「サーバーの実行ログ」に対応
C:\xoBlos\bin\xoBlosServerHost.exe.config

ブラウザ上の「ロックサービスのログ」に対応
C:\xoBlos\svc\xoBlosLockSvcHost.exe.config

下記の箇所の value を書き換えて上書き保存してください。

<log4net>
(中略)
    <maximumfilesize value="1000KB"></maximumfilesize>
    <maxsizerollbackups value="10"></maxsizerollbackups>

maximumFileSize は、MB 表記にもできます。

Designer:整形記号「#」の三兄弟


データが来ない所に整形記号を置く。

xoBlos には、データの生成方法を操作する予約記号が幾つか用意されています。それは、行/列を処理用であることを示したり出力項目単位でデータ外の情報をあて込ませたりと、役目をそれぞれ持っています。いずれも「#」始まりで表記するもので、xoBlos では『整形記号』と呼んでいます。

f:id:xoblos:20171214162351p:plain

上図の表は‥‥収入が少ないながらも、とても家族――猫想いの方が付けているようですね。ここから行方向に単純抽出し、それを後述の各表に於ける入力データとしましょう。

#S

前回記事で、"Spacer" の略と言いました。最終出力結果上、無駄な行列は不要なので、削除する役目を持っています。不要ながら行列を設けているということは、xoBlos の処理用としているということですね。

年と月、それぞれを分類にするか見出しにするかで、設定箇所や設定数が変わります。復習を兼ねて、様々な表形式に対応してみましょう。

f:id:xoblos:20171214162402p:plain

f:id:xoblos:20171214162411p:plain

f:id:xoblos:20200323175425p:plain

それぞれの出力結果は、以下のようになります。

f:id:xoblos:20171214162428p:plain

#I

続いて登場したのは、"Insert" の略である記号です。これは、分類あるいは見出しの値が変わる度に挿入する情報として示します。

f:id:xoblos:20171214162812p:plain

上図例では、年の値が変わる度に、その年の値を紐付けた HP へ飛ぶリンク情報を挿入するようにしています。制御シートの赤強調文字を注意して見てください。「年」に関わる行は何処から何処までなのか、xoBlos のデータ処理部分は何処であるのか、それらを考えていくと各設定値に納得が行く筈です。出力結果は以下のようになります。

f:id:xoblos:20171214162947p:plain

間に行列を挿入できるということは、小計や中計をいれることも可能になりますね。「#S」の際にも、SUM関数の参照範囲を保持することで列挙しましたが、合わせて応用してみましょう。

f:id:xoblos:20171214162500p:plain

前節と同様、制御シートの赤強調文字に注意しましょう。出力結果は以下のようになります。

f:id:xoblos:20171214162509p:plain

#U

最後に、"Upper" の略である記号を紹介します。これは「#I」と同様、分類あるいは見出しの値が変わる度に挿入する情報への操作になりますが、行であれば直上列であれば直左の情報を保持する役目を持っています。そのようなことが必要とされるケースとして、前節の末尾の画像をもう一度振り返ってみましょう。

4行目と 7行目に、各年単位で小計が入っています。しかし行そのものだけを見たら、「計」としか書かれておらず‥‥。何の計であるかまでを示すと、親切ですね。

しかしこの行は処理行としましたから、入力データの情報は置くことができません。そこで活躍するのがこの「#U」です。

f:id:xoblos:20171214162518p:plain

前節の末尾ケースとの違いは、上図の赤円内だけです。制御シートの内容に差はありません。出力結果は以下のようになります。

f:id:xoblos:20171214163310p:plain

「#U」をあてた行には、常に直上の情報を保持しています。それにより 4行目は「2016」の括り、7行目は「2017」の括りと判断され、綺麗に結合されました。

さて各出力結果に於いて、「参考に作ってみたけれど、見本のとおりに上手く罫線が引かれない!」という方がいらっしゃるのではないでしょうか。この整形記号を加えた上でも、xoBlos の動きを良く考え、手動で再現してみてください。‥‥何処でどのような行列のコピー貼り付けで、保持される罫線とそうでない罫線が分かれるか、判断できると思います。罫線の引き方については、前回記事を参考にしてみてください!

Windows:Windows のバージョン、サービスパックの確認方法

コントロールパネルの「システム」表示や、コンピューターの「プロパティ」には
Windows OS のバージョン、サービスパックが表示されるのが普通ですが、環境によっては表示されない場合があります。

そんなときのWindowsのバージョン確認方法ですが、コマンドプロンプトから
winver
と入力し、[Enter] します。

corabo:デフォルトポート 80 で動かす場合の設定

デフォルトポート 80 でcoraboを動かす場合の、IISの設定手順です。

『corabo 導入運用ガイド』では、ポート 8080 でcoraboを動かす場合の設定手順が記載されています。 8080 以外の、8081、8086、8089 などの他のポートを使う場合も、ポート設定を変えて同様の手順で設定できます。

ただし、デフォルトポート 80 の場合だけ、「Default Web Site」というサイトが最初から登録済みですので、どうしても 80 で動かしたい場合は、その下にWebアプリを設定することとなります。

f:id:xoblos:20171206154320p:plain

以下の手順で、デフォルトポート 80 でcoraboを動かせます。以下は、インストールフォルダが c:\xoBlos の場合の例です。

  1. [Default Web Site]  が、ポート 80 で設定されていることを確認します。
  2. [Default Web Site] の下に、[仮想ディレクトリの追加] で仮想ディレクトリ [xoBlos] を作成します。 c:\xoBlos\Web
  3. [corabo] を「アプリケーションへの変換」でアプリに変換します。
       c:\xoBlos\Web\corabo
  4. 下記のURLでcoraboの正常稼働を確認します。
    http://localhost/xoblos/corabo

corabo+Designer:WSH(Windows Script Host)のサーバーでの実行

xoBlosの手順から、WSHWindows Script Host)のVBScriptまたはJScriptJavaScriptを呼び出して実行できます。

DesignerでローカルPCで実行するときは、スクリプトファイルの拡張子(.vbs.js)に関連付いたwscript.exeで実行しても問題ないのですが、エラーメッセージをポップアップ表示するような処理(WScript.Echo など)を入れていると、サーバー実行時にはプロセスが待ちになってしまい、問題となります。

このため、coraboサーバーでの実行を考えての、最良のWSHスクリプトの呼び出し方のサンプル設定画面が下図です(VBScriptでのDesigner画面の設定例)。

 f:id:xoblos:20171119111216p:plain

関連付けられたアプリケーションで実行しますか?: いいえ

実行するファイル(必須): C:\Windows\System32\cscript.exe

コマンドライン引数: sample.vbs arg1 arg2 (←名前、引数、フォルダ配置は自由)

標準エラー出力を書き込むファイル: StdErr.txt (←名前、フォルダ配置は自由)

エラー時のメッセージファイル: StdErr.txt (←名前、フォルダ配置は自由)

 

上記のように設定した上で、スクリプト(この例ではVBScript)から

    WScript.StdErr.WriteLine "単価にエラーがありました。"

のようにエラーメッセージを出力すると、下図のように反映出力されます。

 

【Designer実行でのエラーメッセージ】

f:id:xoblos:20171119111230p:plain

【coraboブラウザ実行でのエラーメッセージ】

f:id:xoblos:20171119111248p:plain

スクリプトからの WScript.StdErr.WriteLine の部分を、WScript.StdOut.WriteLine にすれば、標準出力にもデータを出力できます。その場合は、設定画面の「標準出力を書き込むファイル」にファイル名を指定します。

スクリプト言語での記述の差を下記にまとめました。

VBScript

    WScript.StdErr.WriteLine "エラーメッセージ"

    WScript.StdOut.WriteLine TankaData

JScriptJavaScript)】

     WScript.StdErr.WriteLine("エラーメッセージ");

     WScript.StdOut.WriteLine(TankaData);

また、C:\Windows\System32\cscript.exe を実行できるように、coraboサーバーでのセキュリティ例外設定が必要ですので、忘れないようにしてください。