「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。
ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ
私は本社事業所に勤務する中堅社員です。
業務でMicrosoft Excelを使用して資料を作成しているお客様から、
等のご相談があり、dbSheetClientを使ったシステムを提案し、開発することになりました。
お客様に提案したものの、dbSheetClientを使用するのは初めてで、一から勉強しました。本稿では、dbSheetClientを使ってみた感想や使い方の手順等を紹介したいと思います。
dbSheetClientは、株式会社ニューコムが提供する、Microsoft Excelにデータベース機能とネットワーク機能を付加した開発支援ツールです。
(2025年3月に最新バージョン「dbSheet EX11」がリリースされています。弊社ではdbSheetClient2022を使用して開発を行いましたので、以降を「dbSheetClient」として説明します。)
dbSheetClientに表示するデータや入力されたデータはサーバー上のデータベースで管理します。
ユーザーはクライアントPC上のdbSheetClientの実行版からネットワーク経由でデータベースのデータを読み書きします。
dbSheetClientの画面は、Excelをそのまま表示するため、Excelファイルでの運用からdbSheetClientの運用に移行しても、ユーザーは違和感なく画面の確認や入力をすることができます。
図1. dbSheetClientの構成図
このようにdbSheetClientは今までExcelファイルで管理していたデータをデータベース化し、複数人で共通のデータを参照することができるツールになります。 dbSheetClientを使用する利点には、以下が挙げられます。
dbSheetClientの開発から運用までの簡単な流れを説明したいと思います。
現場で使用している既存のExcelファイルから、dbSheetClientで使用するデータベースと連携し易いExcelフォームへ改良します。
このフェーズの注意点として、データベースとの連携がし易くなるように、既存のExcelから大きく変えたフォームにしてしまうと、「既存のExcelファイル操作から違和感なく移行できる」というdbSheetClientの利点が生かせなくなってしまいます。逆に既存のエクエルと同じフォームにしてしまうと、後の開発フェーズが大変になってくるため、既存のExcelのフォームを保ちつつデータベースと連携し易いフォームを検討することが大事です。
このフェーズではデータの管理方法を検討し、データベースを作成します。 Excelのフォームに表示するデータや入力されるデータをどう扱うのか、ということになるため、実際にはExcelフォームの作成とセットで検討することになります。
dbSheetClientのリソースを登録します。
dbSheetClientにはプロジェクト/データベース/グループ/ユーザーの4つのリソースがあり、プロジェクトにデータベース・グループを、グループにユーザーを紐づけることができます。
ユーザーには管理者ユーザー/開発者ユーザー/一般ユーザーの3種類あり、後からでもユーザーの追加・変更は可能ですが、
このタイミングで少なくとも一人以上の管理者ユーザーを登録しておく必要があります。
また、プロジェクト開発を行うための開発者ユーザーの登録も必要です。
図2. dbSheetClientのリソース関係図
dbSheetClientのProjectEditorを使用してプロジェクト定義を行って開発します。
主に、メニュー定義/ボタン定義/タスク定義があります。
図3. タスク定義の例
開発したプロジェクト定義ファイルとExcelファイルをサーバーにアップロードします。そうするとユーザーはクライアントPCのdbSheetClient実行版からサーバーに接続して使えるようになります。
Excelファイルでの運用からdbSheetClientでの運用になるため、即運用に移るのではなく、仮運用でユーザーに操作していただき、操作感や改善点などの情報を収集します。 その上で実際の業務で運用できるように改善を行います。
仮運用で出た改善点を対応し、ようやく、運用となります。
dbSheetClientを使ってみて感じた注意点や感想を紹介したいと思います。
Excelを使用する場合はExcelの処理時間だけですが、dbSheetClientの場合は
を考慮する必要があります。
単純なリスト形式のExcelをdbSheetClientへ移行する場合は、短時間で処理できるので、それ程時間は気にならないですが、複雑なデータや大量のデータを扱う場合は時間がかかってしまいます。
開発では複雑なデータを扱って処理時間がかかってしまったので、以下の対策を取りました。
Excelの得意なこと、dbSheetClientの得意なことを理解して使うことが大事なのだと思います。
既存のExcelファイルは、お客様が長年にわたって管理しやすいように、運用しやすいように改善を積み重ねて来られたフォームです。既存のExcelファイルは、当然ながら必ずしもデータベースと連携しやすいように考慮されている訳ではありません。そのため、既存のExcelファイルのフォームを保ちつつ、データベースと連携しやすいフォームを検討する必要がありました。
など、いろいろと検討した記憶があります。また、お客様への説明・相談も必要です。お客様へ新しいフォームを説明したあと、お客様からご意見・ご要望をお聞きして再度検討し直したこともありました。
dbSheetClientのプロジェクト開発自体は、慣れてしまえばそれほど苦労なく対応できたと思いますが、このフォームの検討や調整に一番神経を使って対応したように思います。
今回、dbSheetClientを使ってみた感想を紹介させていただきましたが、いかがでしたでしょうか?
Excelファイルの運用をシステム化する際の参考になれば幸いです。
本稿ではdbSheetClientの具体的な機能や使い方までは紹介し切れませんでした。
また私が担当しているdbSheetClientの開発は、今後も他機能への展開が続いていきます。引き続き開発・運用を進めて、見えてきたテクニックや注意事項などを、またの機会に紹介させていただければ、と思います。
(T.M.)
関連ページへのリンク
関連するソフテックだより