XCute
また、XCuteの開発手法はプログラミング言語での開発手法と大きく異なり、JavaやPHPを使い慣れたプログラマには敬遠されることもある。 Excelを使用しているとはいえ、実態はIF関数などを使用した条件分岐でロジックを組み立てる必要があり、広い意味ではプログラミング言語に近い考え方であると言える
とはいえ作成する機能・画面によってはプログラミングコードを使った開発の10倍以上の開発効率があるという開発事例も報告されており、使い所を間違わなければ非常に有効なソフトウェアと言える。
また、マイクロラボではエンドユーザコンピューティングを前面に打ち出し販売を展開しているが、XCuteを使用したソリューション販社も多く存在し、数千万円に及ぶ規模の案件で使用されることもある。
開発は株式会社マイクロラボ代表取締役宮森勝彌。 マイクロラボが東京電力のソフトウェアを請け負い開発していた頃、当時のパソコンに必ずインストールされていたジャストシステムのワードプロセッサ一太郎をインタフェースにデータベースと入出力する仕組みを開発した。 時代の流れとともに、一太郎からプラットフォームをExcelに移しXCuteの原型であるProles(プログラミングレスが語源)に発展し、現在のXCuteに至っている。
まず第一にExcelをベースにするため、プログラミングコードを記述する必要が無い。そのためプログラミングの経験がない者でもWebアプリケーションを手軽に開発できる。 数値の計算や文字列の操作、条件の分岐などもExcelのシート関数で制御することで実現する。 ウェブブラウザに送出するHTMLの生成は基本的にExcelのHTML生成エンジンを使用しているが、ExcelのHTML生成機能で表現できないフォームやテキストエリアなどのHTMLタグは開発者が記述する必要があり、それらのタグをひな型の特定の位置に記述するよう決められている。 これは「タグ差し込み機能」と呼ばれ、自由なHTMLタグを記述できるためフレームやスタイルを使ったデザインを重視した画面を作成したり、JAVAスクリプトを組み合わせることも可能である。 なお、XCuteのユーザは必ずしもWebシステムの開発に精通した者ばかりではないため、XCute Ver8から「ナビゲーション機能」が追加されタグ差し込みを補助する工夫がされている。
Excelをベースに開発するところから簡単なアプリケーションしか作れないと思われる側面もあるが、親子孫といった階層構造をもつデータの表現やクロス集計の入出力が可能であるなどDBツールとしての実力もかなり高い。
他にもWebアプリケーションを開発する上で必要な機能が用意されている
メールの送受信
バイナリファイルの添付
Excelファイルのダウンロード
排他機能
負荷分散機能
Cookie対応
SSL対応
マクロ(Excel VBA)の実行
いたずら(DoS攻撃・不正コード投入)防止機能
Excelのワークシートに作成した画面に対し、データベースの値を展開するセル位置を定義することでプログラミング言語を使用せずWebアプリケーションを開発できる。
Excelのワークシートに作成した画面を「ひな型」と呼び、データベースを展開するセル位置を決める作業を「マッピング」と呼んでいる。
接続できるデータベースは、Oracle DatabaseやMicrosoft SQL ServerなどのODBC対応データベースと、Microsoft AccessのMDB形式のファイルに対応しており、多くのデータベースソフトウェアと接続可能である。 また、バージョン10からはOracle、SQL Server、Db2において各データベースに特化したネイティブ接続に対応しており高速なデータアクセスを実現している。
「ひな型」に作成した画面はそのままHTML化されるため、グラフやピボットテーブルを使用したグラフィカルな画面もWeb化でき、Excelの自由度と相まって独自の社内Webシステムを開発・運用するツールとして多くの企業で使用されている。 しかしその反面、社内システムとして閉鎖的に使われることが多いため、XCuteの知名度はあまり高くない。