# XCuteの仕組み

Excelとデータベースを連携して、ノンプログラミングで簡単にWeb化。
一般的なWebアプリ開発はJavaなどの言語を用いたプログラミング作業が必要ですが、
DBとExcelの連携ツールXCuteとExcelに置き換えることで、プログラミング知識がなくとも5〜10倍の構築スピードで開発できます。

## データの流れ（リクエスト処理）
1. クライアントのブラウザからリクエストが発行されると、サーバー側のExcelへ連絡されます。
2. XCuteがOracleなどのDBへSQL文を投げて結果セットを受け取ります。
3. これをExcelへ貼り付けExcelシートを作成します。
4. ExcelシートをExcelのHTML保存機能でHTML化してクライアントのブラウザへ応答します。

## 技術的な位置づけ
XCuteは、インターネットからみればCGIアプリであり、HTTPサーバーとExcelサイドの通信はCGIが行います。
実際にリクエストを解析しHTMLファイルを作成するのは、ExcelとXCuteです。
HTML作成や画面制御などその他すべてはExcelの役割です。

## 開発手順（3STEP）
| STEP | 内容 |
|---|---|
| STEP 1 ひな型の作成 | Excelで自由にレイアウトした画面を作り、空の帳票（ひな型）を作成します。 |
| STEP 2 ひな型とDBの紐付け | XCuteにデータベースを接続し、ひな型のセルにテーブルの列などを関連付けます。この紐付け情報を使いDBデータをExcelに書き出し・読み込みします。 |
| STEP 3 Web配信 | ひな型をHTML化あるいはExcelブックのままWeb配信。IISやApacheなどのWebサーバ経由でブラウザに表示します。 |

## フロントエンドの選択肢
フロントエンドのインターフェースとして、**WebブラウザとExcelの両方**が利用できます。
ブラウザあるいはExcelで入力された値をサーバー側のExcelに戻しDBの更新も可能です（＝クライアント側はロジックを一切知らない）。

## コストメリット事例
- 茨城セキスイハイム株式会社：4,500万円の開発を自社で
- オルガノ株式会社：構築コストを1/5〜1/10に
- ブックオフコーポレーション株式会社：店舗・本部間データ収集
- オリンパス株式会社：人材育成関連データ収集

## 課題 → 解決パターン（ユースケース別）
| 課題 | XCuteの解決 | 参考事例 |
|---|---|---|
| Excel/Accessで作ったアプリを共有できない | データ資産をそのままWeb化して共有管理 | 伊勢半／シナノケンシ／新日本無線 |
| 各拠点からのExcel収集がメールで非効率 | そのままWebアプリ化し提出状況・記入漏れを自動管理 | ブックオフ／市進／成学社 |
| 週次・月次レポート作成の繰り返し作業 | DB連携で単純作業を排除。既存Excelと同じ形式で出力 | オリンパス／茨城セキスイハイム |
| BIツールのライセンス費用が高い | ライトユーザ向け閲覧専用Web画面を低コスト提供 | 東ソー物流／アイシン精機／前田建設工業 |
| クロス表・ピボットをDB連携で使いたい | Excelをそのまま入出力画面として利用（3,000行規模の例も） | 山下設計／オンヨネ／イイダ |
| AS400などレガシーデータを活用したい | PHP等の言語開発不要、ExcelベースでWeb化 | イイダ／日本梱包運輸倉庫 |