(57)【特許請求の範囲】
【請求項１】
利用者によって予め作成された汎用表計算ソフトのテンプレートごとに、別途作成された業務データベースのデータを入出力するための入出力方法を定義した入出力定義情報を対応付けて、記憶装置に登録するテンプレート登録手段、
及びこのテンプレート登録手段によって登録された上記テンプレートのうちの選択されたテンプレートに対応する上記入出力定義情報にしたがって、上記業務データベースのデータを当該テンプレートに対して出力し、汎用表計算ソフトの帳票とするデータ出力手段を備えたことを特徴とするデータ入出力装置。
【請求項２】
上記データ出力手段によって出力された上記汎用表計算ソフトの帳票の修正を行う際に、入力データの規制を行う入力規制設定手段を備えたことを特徴とする請求項１記載のデータ入出力装置。
【請求項３】
上記汎用表計算ソフトの帳票のデータに基づき、上記業務データベースを更新するデータ更新手段を備えたことを特徴とする請求項１または請求項２記載のデータ入出力装置。
【請求項４】
上記データ出力手段は、上記業務データベースのデータを上記汎用表計算ソフトのテンプレートに対して出力するに当たり、上記業務データベースを検索し、出力用のデータを取得する出力用データ検索手段を有することを特徴とする請求項１〜請求項３のいずれかに記載のデータ入出力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば電力会社工務部門の電力設備管理業務や自治体での道路設備維持管理業務分野などの管理対象設備の維持管理業務に用いられるデータを、汎用表計算ソフトに対して入出力するデータ入出力装置に関するものである。
【背景技術】
【０００２】
従来の管理対象設備の維持管理業務を行う維持管理業務システムにおいて、業務に用いる業務データベースのデータを帳票として出力するとき、維持管理業務システムを介してＥｘｃｅｌ（登録商標、以下同じ）形式のテンプレートに出力する、という方法が一般的である。
また、帳票のデータを用いて業務データベースを更新するときは、Ｅｘｃｅｌ形式の帳票のデータを維持管理業務システムに取り込む、という方法が一般的である。以下、これをＥｘｃｅｌ入出力システムと呼ぶことにする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１５９６０号公報（第３〜６頁、図１）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のＥｘｃｅｌ入出力システムでは、維持管理業務システムが用意したＥｘｃｅｌテンプレートに対してしかデータを出力することができず、利用者が作成したＥｘｃｅｌテンプレートにはデータを出力することができない。
このため、利用者が作成したＥｘｃｅｌテンプレートにデータを出力するためには、維持管理業務システムが用意したＥｘｃｅｌテンプレートに出力されたデータを利用者が作成したＥｘｃｅｌテンプレートに複写する必要があり、利用者の作業効率が悪いという問題があった。
また、出力されたＥｘｃｅｌ帳票に対し、利用者がデータを修正するとき、修正データが正しい値であるかどうかを確認できず、Ｅｘｃｅｌ帳票を維持管理業務システムに取り込んだときに業務データベースの更新が失敗するという問題があった。
【０００５】
この発明は、上記のような課題を解決するためになされたものであり、利用者によって作成された汎用表計算ソフトのテンプレートを用いて、業務データベースと汎用表計算ソフトの帳票との間のデータ入出力を行うデータ入出力装置を得ることを目的としている。
【課題を解決するための手段】
【０００６】
この発明に係わるデータ入出力装置においては、利用者によって予め作成された汎用表計算ソフトのテンプレートごとに、別途作成された業務データベースのデータを入出力するための入出力方法を定義した入出力定義情報を対応付けて、記憶装置に登録するテンプレート登録手段、及びこのテンプレート登録手段によって登録されたテンプレートのうちの選択されたテンプレートに対応する入出力定義情報にしたがって、業務データベースのデータを当該テンプレートに対して出力し、汎用表計算ソフトの帳票とするデータ出力手段を備えたものである。
【発明の効果】
【０００７】
この発明は、以上説明したように、利用者によって予め作成された汎用表計算ソフトのテンプレートごとに、別途作成された業務データベースのデータを入出力するための入出力方法を定義した入出力定義情報を対応付けて、記憶装置に登録するテンプレート登録手段、及びこのテンプレート登録手段によって登録されたテンプレートのうちの選択されたテンプレートに対応する入出力定義情報にしたがって、業務データベースのデータを当該テンプレートに対して出力し、汎用表計算ソフトの帳票とするデータ出力手段を備えたので、利用者によって作成された汎用表計算ソフトのテンプレートのうちの選択されたテンプレートに対して、業務データベースのデータを出力し、汎用表計算ソフトの帳票とすることができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１、２によるデータ入出力装置のソフトウェア構成を示す図である。
【図２】この発明の実施の形態１、２によるデータ入出力装置のデータベース構成を示す図である。
【図３】この発明の実施の形態１、２によるデータ入出力装置のシステム構成を示す図である。
【図４】この発明の実施の形態１、２によるデータ入出力装置のＥｘｃｅｌ入出力アプリケーションの機能構成を示す図である。
【図５】この発明の実施の形態１、２によるデータ入出力装置の業務データベースの構成例（１）を示す図である。
【図６】この発明の実施の形態１、２によるデータ入出力装置の業務データベースの構成例（２）を示す図である。
【図７】この発明の実施の形態１によるデータ入出力装置での入出力定義を示す図である。
【図８】この発明の実施の形態１によるデータ入出力装置のＥｘｃｅｌテンプレート登録装置の処理を示すフローチャートである。
【図９】この発明の実施の形態１によるデータ入出力装置のデータ出力装置の機能構成を示す図である。
【図１０】この発明の実施の形態１によるデータ入出力装置のデータ出力装置の処理を示すフローチャートである。
【図１１】この発明の実施の形態１によるデータ入出力装置のＥｘｃｅｌ出力用データ検索装置の処理を示すフローチャートである。
【図１２】この発明の実施の形態１によるデータ入出力装置の検索条件作成における比較演算子を示す図である。
【図１３】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の処理を示すフローチャートである。
【図１４】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＝固定行数）の出力定義データと検索データを示す図である。
【図１５】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＝固定行数）を示す図である。
【図１６】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＜固定行数）の出力定義データと検索データを示す図である。
【図１７】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＜固定行数）を示す図である。
【図１８】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＞固定行数）の出力定義データと検索データを示す図である。
【図１９】この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＞固定行数）を示す図である。
【図２０】この発明の実施の形態１によるデータ入出力装置の項目出力装置の処理を示すフローチャートである。
【図２１】この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＝１）の出力定義データと検索データを示す図である。
【図２２】この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＝１）を示す図である。
【図２３】この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＞１）の出力定義データと検索データを示す図である。
【図２４】この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＞１）を示す図である。
【図２５】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の処理を示すフローチャートである。
【図２６】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）の帳票データと入出力定義を示す図である。
【図２７】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）の取得表データリストとＳＱＬを示す図である。
【図２８】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）のコードテーブルの更新を示す図である。
【図２９】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）の帳票データを示す図である。
【図３０】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）の入出力定義と取得項目データリストとＳＱＬを示す図である。
【図３１】この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）のコードマスタの更新を示す図である。
【図３２】この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌの入力規制機能での利用者設定ダイアログを示す図である。
【図３３】この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌの入力規制機能での利用者設定ダイアログのリスト定義項目とデータ長定義項目を示す図である。
【図３４】この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の処理を示すフローチャートである。
【図３５】この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の出力データ例の出力定義データと検索データを示す図である。
【図３６】この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の出力データ例を示す図である。
【発明を実施するための形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態について説明する。
図１は、この発明の実施の形態１によるデータ入出力装置のソフトウェア構成を示す図である。
図１において、利用者１０１によって利用されるデータ入出力装置１００は、次のようなソフトウェア構成である。
Ｅｘｃｅｌ入出力アプリケーション１０２は、Ｅｘｃｅｌへのデータ入出力を行うアプリケーションであり、利用者１０１の指示によって動作する。データベース操作部１０３は、Ｅｘｃｅｌ入出力アプリケーション１０２の指示によって、利用者の要求に応じてデータベース１０４の処理を行い、結果をＥｘｃｅｌまたはＥｘｃｅｌ入出力アプリケーション１０２に返す。
データベース１０４は、Ｅｘｃｅｌ入出力アプリケーション１０２が利用するデータベースであり、業務データベース１０５とＥｘｃｅｌ定義データベース１０６を有する。
業務データベース１０５は、利用者が業務で利用するデータベースである。
Ｅｘｃｅｌ定義データベース１０６は、Ｅｘｃｅｌへのデータ入出力における定義情報を格納する。業務データをＥｘｃｅｌのどのテンプレートに出力するか、そのどこに出力するかなどを定義している。
データベース操作部１０３が、データベース１０４へのデータ検索および追加、更新を司り、Ｅｘｃｅｌ入出力アプリケーション１０２が、データベース操作部１０３を操作し、利用者１０１はＥｘｃｅｌ入出力アプリケーション１０２を操作する構成となっている。
【００１０】
図２は、この発明の実施の形態１によるデータ入出力装置のデータベース構成を示す図である。
図２において、Ｅｘｃｅｌ定義データベース１０６の内容を示している。
Ｅｘｃｅｌテンプレート定義テーブル２０１は、Ｅｘｃｅｌテンプレート定義の保存データを格納するテーブルである。Ｅｘｃｅｌシート定義テーブル２０２は、Ｅｘｃｅｌテンプレート定義におけるシート定義の情報を格納するテーブルである。Ｅｘｃｅｌ項目定義テーブル２０３は、Ｅｘｃｅｌテンプレート定義テーブル２０１とＥｘｃｅｌシート定義テーブル２０２における項目定義の情報を格納するテーブルである。
【００１１】
図３は、この発明の実施の形態１によるデータ入出力装置のシステム構成を示す図である。
図３において、データベース装置３０１は、データベース１０４が配置されるサーバ装置である。アプリケーションサーバ装置３０２は、データベース操作部１０３とＥｘｃｅｌ入出力アプリケーション１０２が配置されるサーバ装置である。表示・入力装置３０３は、Ｅｘｃｅｌ入出力アプリケーション１０２が処理した結果を表示するとともにＥｘｃｅｌ入出力アプリケーション１０２への入力画面を表示する装置である。
この発明は、サーバとクライアントで構成されるＷｅｂシステムである。
【００１２】
図４は、この発明の実施の形態１によるデータ入出力装置のＥｘｃｅｌ入出力アプリケーションの機能構成を示す図である。
図４において、Ｅｘｃｅｌテンプレート登録装置４０１（テンプレート登録手段）は、利用者が予め作成したＥｘｃｅｌテンプレート４０５（汎用表計算ソフトのテンプレート）に対し、データを入出力するための定義を行い、入出力定義４０６（入出力定義情報）とする。データ出力装置４０２（データ出力手段）は、Ｅｘｃｅｌテンプレート登録装置４０１によって定義された入出力定義４０６に従ってデータ出力を行う。これによりＥｘｃｅｌ帳票４０７（汎用表計算ソフトの帳票）が作成される。
なお、データ出力装置４０２により出力されるデータは、図１の業務データベース１０６の利用者指定のテーブルのデータを、利用者が指定した検索条件によって検索された検索データである。
Ｅｘｃｅｌ入力支援設定装置５０３（入力規制設定手段）は、データ出力装置５０２によって出力されたＥｘｃｅｌ帳票４０７に対し、Ｅｘｃｅｌ入力規制機能を付加する。なお、Ｅｘｃｅｌ帳票４０７は、Ｅｘｃｅｌテンプレート４０５にデータが入った状態のものである。
データ更新装置４０４（データ更新手段）は、データ出力装置５０２とＥｘｃｅｌ入力支援設定装置５０３によって出力されたＥｘｃｅｌ帳票４０７を利用してデータ更新を行う。データ更新されたＥｘｃｅｌ帳票は、業務データベース１０５に登録される。
【００１３】
図５は、この発明の実施の形態１によるデータ入出力装置の業務データベースの構成例（１）を示す図である。
図５と図６は、本システムの対象となる設備維持管理業務の業務データベース１０５の内容を示し、業務データベース１０５は、設備に関する情報を持つ設備台帳、設備台帳の各設備に紐付く事故障害台帳、点検台帳、添付文書台帳で構成される。図５は、そのうちの設備台帳５０１と事故障害台帳５０２を示す。
図５において、各台帳（設備台帳５０１と事故障害台帳５０２）は、個々の情報を識別するためのオブジェクトＩＤ、各オブジェクトＩＤ同士を紐付けるための親オブジェクトＩＤを持つ。例えば、図５の場合、設備台帳５０１のオブジェクトＩＤ（１００００００２）が、事故障害台帳５０２の親オブジェクトＩＤに存在するため、オブジェクトＩＤ（１００００００２）には、事故障害情報が紐付いていることになる。
【００１４】
また、各台帳は基本台帳と拡張台帳の２つで構成される。基本台帳は、各台帳のオブジェクトＩＤ全てに共通の項目を持つ台帳であり、拡張台帳は、オブジェクトＩＤの種類によって管理する項目が異なる台帳である。この種類を区別するコードを拡張区分コードといい、拡張区分コードの数だけ拡張台帳が存在することになる。
例えば、図５の場合、設備台帳における基本台帳５０３のオブジェクトＩＤ（１００００００２）は、拡張区分コードＧＥをもつため、拡張台帳＿ＧＥ５０５の同オブジェクトＩＤに拡張区分コードＧＥ固有の管理項目が存在する。また、オブジェクトＩＤ（１００００００３）は、拡張区分コードＰＯをもつため、拡張台帳＿ＰＯ５０４の同オブジェクトＩＤに前述の拡張区分ＧＥとは異なる管理項目が存在する。
【００１５】
図６は、この発明の実施の形態１によるデータ入出力装置の業務データベースの構成例（２）を示す図である。
図６において、図５の各台帳の項目名はカラム定義テーブル５０６が管理している。業務データベース１０５のデータには、利用者の入力によって更新されるデータと、利用者が直接入力することなく、リストからデータを選択して更新するデータの２つがある。
このうち、リストからデータを選択するとき、そのリストに含まれるデータを「コード」という。また、コードをグループにまとめたものを「コードグループ番号」という。コードグループ番号は、コードグループテーブル５０７、コードはコードテーブル５０８によってそれぞれ管理される。
【００１６】
図７は、この発明の実施の形態１によるデータ入出力装置での入出力定義を示す図である。
図７は、Ｅｘｃｅｌテンプレート登録装置４０１が登録を行う入出力定義４０６である。Ｅｘｃｅｌシート定義６０１は、検索データを出力するＥｘｃｅｌテンプレートのシートに関する情報を定義する。
Ｅｘｃｅｌ項目定義６０２は、業務データベース１０５のデータ入出力対象テーブル（図５、図６参照）を選択し、選択したテーブルの項目のデータをＥｘｃｅｌシート定義６０１で定義したシートに対し、入出力するための位置を定義する。
Ｅｘｃｅｌテンプレート定義６０３は、データを入出力するＥｘｃｅｌテンプレート４０５に関する情報を定義する。
【００１７】
これらは、Ｅｘｃｅｌ定義データベース１０６に登録される。Ｅｘｃｅｌシート定義６０１は、Ｅｘｃｅｌシート定義テーブル２０２に登録される。Ｅｘｃｅｌ項目定義６０２は、Ｅｘｃｅｌ項目定義テーブル２０３に登録される。Ｅｘｃｅｌテンプレート定義６０３は、Ｅｘｃｅｌテンプレート定義テーブル２０１に登録される。
【００１８】
図８は、この発明の実施の形態１によるデータ入出力装置のＥｘｃｅｌテンプレート登録装置の処理を示すフローチャートである。
【００１９】
図９は、この発明の実施の形態１によるデータ入出力装置のデータ出力装置の機能構成を示す図である。
図９においては、Ｅｘｃｅｌ出力用データ検索装置８０１（出力用データ検索手段）は、データ出力に用いるＥｘｃｅｌテンプレートを、実施の形態１で登録したＥｘｃｅｌテンプレートの中から選択し、出力する検索データの検索条件を作成し、検索したデータを保持する。データ出力形式判定装置８０２は、Ｅｘｃｅｌ出力用データ検索装置８０１で選択したＥｘｃｅｌテンプレートの入出力定義情報から出力形式を判定する。固定行表出力装置８０３は、データ出力形式判定装置８０２から得られたデータ出力形式に応じてＥｘｃｅｌテンプレートに固定行の表として出力を行う。項目出力装置８０４は、データ出力形式判定装置８０２から得られたデータ出力形式に応じてＥｘｃｅｌテンプレートの１つの項目に対して出力を行う。
【００２０】
図１０は、この発明の実施の形態１によるデータ入出力装置のデータ出力装置の処理を示すフローチャートである。
図１１は、この発明の実施の形態１によるデータ入出力装置のＥｘｃｅｌ出力用データ検索装置の処理を示すフローチャートである。
【００２１】
図１２は、この発明の実施の形態１によるデータ入出力装置の検索条件作成における比較演算子を示す図である。
図１２において、比較演算子の名称と記号が示されている。比較演算子の左辺は出力項目であり、右辺は検索の値である。
【００２２】
図１３は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の処理を示すフローチャートである。
【００２３】
図１４は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＝固定行数）の出力定義データと検索データを示す図である。
図１４において、出力定義データ１３０１と、検索データ１３０３が示され、検索データ１３０３として、９件が検索されている。
図１５は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＝固定行数）を示す図である。
図１５において、テンプレート２（１３０２）にデータ出力された出力結果１３０４が示されている。
【００２４】
図１６は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＜固定行数）の出力定義データと検索データを示す図である。
図１６において、出力定義データ１４０１と、検索データ１４０３が示され、検索データ１４０３として、２件が検索されている。
図１７は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＜固定行数）を示す図である。
図１７において、テンプレート２（１４０２）にデータ出力された出力結果１４０４が示されている。
【００２５】
図１８は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＞固定行数）の出力定義データと検索データを示す図である。
図１８において、出力定義データ１５０１と、検索データ１５０３が示され、検索データ１５０３として、２３件が検索されている。
図１９は、この発明の実施の形態１によるデータ入出力装置の固定行表出力装置の出力データ例（検索データ件数＞固定行数）を示す図である。
図１９において、テンプレート２（１５０２）にデータ出力された３シートに亘る出力結果１５０４が示されている。
【００２６】
図２０は、この発明の実施の形態１によるデータ入出力装置の項目出力装置の処理を示すフローチャートである。
【００２７】
図２１は、この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＝１）の出力定義データと検索データを示す図である。
図２１において、出力定義データ１７０１と、検索データ１７０３が示され、検索データ１７０３として、１件が検索されている。
図２２は、この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＝１）を示す図である。
図２３において、テンプレート３（１７０２）にデータ出力された出力結果１７０４が示されている。
【００２８】
図２３は、この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＞１）の出力定義データと検索データを示す図である。
図２３において、出力定義データ１８０１と、検索データ１８０３が示され、検索データ１８０３として、３件が検索されている。
図２４は、この発明の実施の形態１によるデータ入出力装置の項目出力装置の出力データ例（検索データ件数＞１）を示す図である。
図２４において、テンプレート３（１８０２）にデータ出力された３シートに亘る出力結果１８０４が示されている。
【００２９】
次に、動作について説明する。
まず、Ｅｘｃｅｌ入出力アプリケーション１０２のＥｘｃｅｌテンプレート登録装置４０１の動作について説明する。
利用者が予め作成したＥｘｃｅｌテンプレート４０５に対し、Ｅｘｃｅｌテンプレート登録装置４０１によって入出力定義４０６を登録し、データ出力装置４０２によってデータを出力して、Ｅｘｃｅｌ帳票４０７とするようになっている。
【００３０】
図７は、Ｅｘｃｅｌテンプレート登録装置４０１によって登録が行われるＥｘｃｅｌ入出力定義４０６である。Ｅｘｃｅｌテンプレート登録装置４０１は、検索データを出力するＥｘｃｅｌテンプレート４０５のシートに関する情報を定義するＥｘｃｅｌシート定義６０１と、業務データベース１０５のデータ入出力対象テーブルを選択し、選択したテーブルの項目のデータをＥｘｃｅｌシート定義６０１で定義したシートに対し、入出力するための位置を定義するＥｘｃｅｌ項目定義６０２と、データを入出力するＥｘｃｅｌテンプレートに関する情報を定義するＥｘｃｅｌテンプレート定義６０３とを定義し、Ｅｘｃｅｌ定義データベース１０６に登録する。
【００３１】
Ｅｘｃｅｌシート定義６０１は、データを入出力するシート名、出力形式、出力方向、コメントを定義する。出力形式は、固定行表出力、項目出力の２つの出力形式から選択することができる。出力方向は縦方向出力または横方向出力を選択することができる。Ｅｘｃｅｌシート定義６０１は、Ｅｘｃｅｌシート定義テーブル２０２に登録される。
Ｅｘｃｅｌ項目定義６０２は、Ｅｘｃｅｌシート定義６０１で定義されたデータ入出力対象テーブルにおいて、出力対象となる項目の名称、その項目のデータを入出力するためのＥｘｃｅｌテンプレート４０５における項目位置を定義する。項目位置は列／行またはセルを指定することができる。Ｅｘｃｅｌ項目定義６０２は、Ｅｘｃｅｌ項目定義テーブル２０３に登録される。
また、Ｅｘｃｅｌテンプレート定義６０３は、データ入出力に用いるＥｘｃｅｌテンプレート４０５の指定を行う。Ｅｘｃｅｌテンプレート定義６０３は、Ｅｘｃｅｌテンプレート定義テーブル２０１に登録される。
【００３２】
次に、図８により、Ｅｘｃｅｌテンプレート登録装置４０１の処理について説明する。
利用者が表示装置３０３を用いて、予め作成したＥｘｃｅｌテンプレート４０５を登録するためのリクエストを出すと、Ｅｘｃｅｌテンプレート登録装置４０１は、Ｅｘｃｅｌシート定義６０１を入力するための画面を表示装置３０３に表示する（ステップＳ７０１）。利用者は表示装置３０３よりＥｘｃｅｌシート定義６０１を入力する（ステップＳ７０２）。
Ｅｘｃｅｌシート定義６０１において、出力形式の選択を行う。出力形式に固定行表出力を選択したとき、表の開始行と終了行、データ出力方向（縦／横）を定義として入力する必要がある。また、出力形式に可変行表出力を選択したとき、表の開始行、データ出力方向（縦／横）と定義として入力する必要がある。
出力形式が表出力（固定行表出力または可変行表出力）の場合は、表範囲開始行と表範囲終了行とデータの出力方向を定義する。データ出力方向は、縦と横を選択することができる。出力方向が縦のとき、表範囲開始行と表範囲終了行には、Ｅｘｃｅｌシートの「行の数字」を指定する。一方、出力方向が横のとき、範囲開始行と表範囲終了行には、Ｅｘｃｅｌシートの「列のアルファベット」を指定する。出力形式に項目出力を選択したときは、何も定義しない。
【００３３】
Ｅｘｃｅｌシート定義６０１の入力完了後、Ｅｘｃｅｌシート定義６０１の入力データを保持する（ステップＳ７０３）。
【００３４】
次に、Ｅｘｃｅｌテンプレート登録装置６０１は、Ｅｘｃｅｌ項目定義６０２を入力するための画面を表示装置３０３に表示する（ステップＳ７０４）。
利用者は、検索データを入出力するためのテーブルを業務データベース１０５より選択する（ステップＳ７０５）。ここで、選択できるテーブルの対象は、設備台帳（基本台帳）、設備台帳（拡張台帳）、事故障害台帳（基本台帳）、事故障害台帳（拡張台帳）、点検台帳（基本台帳）、点検台帳（拡張台帳）、添付文書台帳（基本台帳）、添付文書台帳（拡張台帳）である。
次に、利用者は、選択したテーブルの項目から入出力項目を選択し、選択した入出力項目のデータをＥｘｃｅｌテンプレート４０５に対し、入出力する項目位置を入力する（ステップＳ７０５）。これがＥｘｃｅｌ項目定義６０２の入力である。
出力形式が表出力の場合、項目位置は列／行を指定する。出力方向が縦のとき、項目位置は列を指定し、出力方向が横のとき、項目位置は行を指定する。項目出力の場合、項目位置はセルを指定する。
Ｅｘｃｅｌ項目定義６０２の入力完了後、Ｅｘｃｅｌ項目定義６０２の入力データを保持する（ステップＳ７０６）。
【００３５】
次に、Ｅｘｃｅｌテンプレート登録装置４０１は、Ｅｘｃｅｌテンプレート定義６０３を入力するための画面を表示装置３０３に表示する（ステップＳ７０７）。
利用者は、表示装置３０３より、利用者が予め作成したＥｘｃｅｌテンプレート４０５を選択し、Ｅｘｃｅｌテンプレート定義６０３が入力される（ステップＳ７０８）。
入力完了後、Ｅｘｃｅｌテンプレート定義６０３の入力データを保持する（ステップＳ７０９）。
最後に、Ｅｘｃｅｌテンプレート登録装置４０１は、ステップＳ７０３、Ｓ７０６、Ｓ７０９で保持したＥｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３の各入力データをＥｘｃｅｌ定義データベース１０６に登録する。
【００３６】
次に、データ出力装置４０２により、Ｅｘｃｅｌテンプレート４０５にデータが出力されるまでの動作について、図１０を用いて説明する。
まず、Ｅｘｃｅｌ出力用データ検索装置８０１が作動し、利用者が設定した入出力定義４０６と検索条件に基づき、出力するデータを業務データベース１０５から検索するデータ検索を行う（ステップＳ９０１）。
次に、データ出力形式判定装置８０２から得られたデータ出力形式に応じてＥｘｃｅｌテンプレート４０５に出力を行うが、この出力形式ごとに出力装置が異なる。
データ出力形式判定装置８０３は、Ｅｘｃｅｌ出力用データ検索装置８０１で選択したＥｘｃｅｌテンプレート情報より、Ｅｘｃｅｌシート定義６０１の出力形式を取得し、固定行表出力装置８０３及び項目出力装置８０４のうちのいずれを動作させるかの判別を行う（ステップＳ９０２）。
出力形式が固定行表のとき、固定行表出力装置８０３が動作する（ステップＳ９０３）。出力形式が項目出力のとき、項目出力装置８０４が動作する（ステップＳ９０４）。
【００３７】
次に、出力する検索データを取得するＥｘｃｅｌ出力用データ検索装置８０１の処理について、図１１を用い、図５、図６を参照して説明する。
図１１は、Ｅｘｃｅｌ出力用データ検索装置８０１により、業務データベース１０５を検索する処理のフローを示している。
図１１で、まず、利用者が表示装置３０３を用いて、利用者が予め作成したＥｘｃｅｌテンプレート４０５に検索データを出力するリクエストを出す。Ｅｘｃｅｌ出力用データ検索装置８０１は、実施の形態１によってＥｘｃｅｌ定義データベース１０６に登録したＥｘｃｅｌテンプレート４０５の選択画面を表示装置３０３に表示する（ステップＳ１００１）。
利用者は、表示装置３０３より検索データ出力に用いるＥｘｃｅｌテンプレート４０５を選択する（ステップＳ１００２）。Ｅｘｃｅｌテンプレート４０５の選択完了後、Ｅｘｃｅｌ出力用データ検索装置８０１は、選択されたＥｘｃｅｌテンプレート４０５における入出力定義４０６を読み込み、入出力定義４０６の中から、Ｅｘｃｅｌ項目定義６０２のテーブル名を取得する（ステップＳ１００３）。
【００３８】
次に、取得したテーブル名を用いて、業務データベース１０５のカラム定義テーブル５０６から取得したテーブルの項目名を取得し、表示装置３０３に表示する（ステップＳ１００４）。
次に、利用者は、表示装置３０３を用いて、Ｅｘｃｅｌテンプレート４０５に出力する項目を選択する（ステップＳ１００５）。このとき、基本台帳と拡張台帳では、出力できる項目が異なる。
基本台帳では、基本台帳の項目のみ出力項目として選択することができるが、拡張台帳では、拡張台帳と基本台帳の両方の項目を出力項目として選択することができる。
次に、Ｅｘｃｅｌ出力用データ検索装置８０１は、項目のソート順を設定する画面を表示装置３０３に表示する（ステップＳ１００６）。利用者は、ソート順を指定する（ステップＳ１００７）。ここで、ソート順が指定されないときは、カラム定義テーブル５０６における項目番号の若い順に項目をソートする。
【００３９】
次に、Ｅｘｃｅｌ出力用データ検索装置８０１は、検索条件を作成する画面を表示装置３０３に表示させる（ステップＳ１００８）。
利用者は、表示装置３０３を用いて検索条件を作成する（ステップＳ１００９）。この検索条件作成時も、出力項目選択と同様に、基本台帳と拡張台帳では、検索に使用できる項目が異なる。基本台帳を検索するときは、基本台帳の項目のみを検索条件作成に使用することができ、拡張台帳を検索するときは、拡張台帳と基本台帳の両方の項目を検索条件作成に使用することができる。なお、検索条件は必ず作成する必要はなく、検索無しの全データを出力することが可能であるということは言うまでもない。
【００４０】
検索条件は「項目名＝値」などの式で作成する。この式における等号（＝）以外にも、不等号や前方／後方一致などの比較演算子を使用することができる。検索条件として使用できる比較演算子の一覧を図１２に示す。
例えば、図５において、設備台帳の基本台帳５０３の項目「異動年月日」が２０１００２１５以下のときの検索条件式は、「異動年月日≦２０１００２１５」となり、基本台帳５０３のオブジェクトＩＤ（１００００００１，１００００００２，１００００００３）のデータと、拡張台帳が取得される。検索条件は、数に制限なく作成することができ、複数の検索条件を「ＡＮＤ」や「ＯＲ」などの論理演算子を用いて組み合わせることもできる。
【００４１】
次に、固定行表に出力し、データ件数に合わせて表の罫線を削除する固定行表出力装置８０３の処理について説明する。
データ出力形式判定装置８０２の判定結果が固定行表出力のとき、固定行表出力装置８０３が起動する。
次に、この固定行表出力装置８０３の動作について図１３を用いて説明する。
まず、出力に当たり、Ｅｘｃｅｌシート定義６０１より固定行表の開始行と終了行を用いて固定行表の行数を計算する（ステップＳ１２０１）。これを固定行数とすると、固定行数は（終了行−開始行＋１）である。次に、Ｅｘｃｅｌ出力用データ検索装置８０１で検索したデータの件数を取得する（ステップＳ１２０２）。
【００４２】
次に、検索データ件数と固定行数の比較を行う（ステップＳ１２０３）。検索データ件数＝固定行数のとき、Ｅｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３に基づいて検索データ件数分の検索データをＥｘｃｅｌテンプレート４０５に固定行表として出力する（ステップＳ１２０５）。このときの出力データ例を図１３、図１４に示す。
図１３の出力定義データ１３０１より、固定行表の行数は９である。検索データ１３０３の件数は９件であるため、検索データ件数＝固定行数となる。このとき、出力結果１３０４となる。
【００４３】
ステップＳ１２０３の比較で、検索データ件数＝固定行数でないとき、検索データ件数＜固定行数かどうかの比較を行う（ステップＳ１２０４）。検索データ件数＜固定行数のとき、「検索データ件数＝固定行数のとき」と同様に検索データをＥｘｃｅｌテンプレート４０５に出力する（ステップＳ１２０５）。しかし、上記の方法で出力を行うと、Ｅｘｃｅｌテンプレート４０５に出力するデータの検索データ件数と固定行表の終了行数の差は何も出力されず、空白となり、表の不要範囲となる。このとき、以下の方法によって、不要範囲のセルの罫線を消去する（ステップＳ１２０６）。
【００４４】
まず、利用者が指定したＥｘｃｅｌテンプレート４０５のＥｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２より、不要範囲を取得する。具体的に、Ｅｘｃｅｌシート定義６０１の表範囲開始行と表範囲終了行を取得する。不要範囲の開始行は（表範囲開始行＋データ件数）となる。
また、Ｅｘｃｅｌ項目定義６０２より、データ項目の開始列と終了列を取得することにより、不要範囲の開始セルと終了セルを計算することができ、不要範囲を取得することができる。
次に、不要範囲の開始行のセルを全て選択する。不要範囲の開始行の１つ前の行は表の最終行であるため、不要範囲の開始行のセルの上部は罫線を維持し、その他の下・左・右の罫線を消去する。
【００４５】
一方、Ｅｘｃｅｌシート定義６０１において、出力方向が「横方向」の場合、セルの左部の罫線を維持し、その他の上・下・右の罫線を消去する。次に、不要範囲において、前記の不要範囲開始行以外のセルを全て選択する。このときは、選択した各セルの上・下・左・右の罫線を全て消去する。このときの出力データ例を図１６、図１７に示す。
【００４６】
図１６の出力定義データ１４０１より、固定行表の行数は９である。検索データ１４０３の件数は２であるため、検索データ件数＜固定行数となる。このとき検索データの出力結果１４０４となる。
出力定義データ１４０１で定義したシート「Ａ」に出力項目の検索データが全て出力される。例えば、出力項目が発変電所コードのとき、出力定義データ１４０１の出力項目位置「Ａ列」の開始行２行目から、縦方向に検索データが全て出力される。
このとき、不要範囲のセルは「Ａ１０」、「Ｂ１０」、「Ｃ１０」である。１０行目は不要範囲の開始行であるため、各セルの下・左・右の罫線が消去され、データ件数に合わせて表の罫線が終了となる。このとき、出力結果１４０４となる。
【００４７】
一方、ステップＳ１２０４で、検索データ件数＞固定行数のとき、まず、出力対象のシートを（（検索データ件数／固定行数）の商）の枚数分複写する（ステップＳ１２０７）。次に、Ｅｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３に基づいて全検索データのうち、先頭から固定行数分の検索データを出力対象シート（１枚目）に出力する（ステップＳ１２０８）。
次に、ステップＳ１２０８で、Ｅｘｃｅｌテンプレート４０５に出力しなかった未出力分の検索データとその件数を検索データとして更新し（ステップＳ１２０９）、ステップＳ１２０２へ戻る。ステップＳ１２０３において、検索データ件数≦固定行数になるまで、ステップＳ１２０４〜Ｓ１２０９を繰り返す。
なお、２回目のステップＳ１２０３において出力するシートは２枚目、３回目のステップＳ１２０３において出力するシートは３枚目・・・とする。この出力データ例を図１８、図１９に示す。
【００４８】
図１８の出力定義データ１５０１より、固定行表の行数は９である。検索データ１５０３の件数は２３件であるため、検索データ件数＞固定行数となる。このとき、シート「Ａ」を２枚複写しており、検索データ１５０３が３枚のシート「Ａ（１）」、「Ａ（２）」、「Ａ（３）」に全てに出力される。このとき、「検索データ件数＜固定行数」であるため、上記の通り、不要範囲はシート「Ａ（３）」におけるセル「Ａ７」〜「Ｃ１０」であり、６行目で表が終了となる。このとき、出力結果１５０４となる。
【００４９】
次に、利用者が予め作成したＥｘｃｅｌテンプレート４０５に対し、１つの項目に出力する項目出力装置８０６の動作について説明する。
データ出力形式判定装置８０２の判定結果が項目出力のとき、項目出力装置８０５が起動する。
【００５０】
次に、この項目出力装置８０５の動作について、図２０を用いて説明する。
図２０で、まず、出力に当たり、Ｅｘｃｅｌ出力用データ検索装置８０１で検索した検索データの件数を取得する（ステップＳ１６０１）。
次に、検索データ件数が１であるかどうかを判別する（ステップＳ１６０２）。
検索データ件数が１であるとき、Ｅｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３に基づいて、検索データをＥｘｃｅｌテンプレート４０５に出力する（ステップＳ１６０３）。このときの出力データ例を図２１、図２２に示す。
図２１の検索データ１７０３の件数は１件であるため、このときの検索データの出力結果１７０４となる。出力定義データ１７０１で定義したシート「Ｃ」に出力項目の検索データが１件（全検索データ分）出力される。
例えば、出力項目がコードグループ番号のとき、出力定義データ１７０１の出力項目位置「Ａ２」に検索データ「０００４」が出力される。
【００５１】
一方、ステップＳ１６０２で、検索データが１でないとき、検索データが１件以上か０件であるかを判別する（ステップＳ１６０４）。
検索データ件数＞１のとき、まず、出力対象のシートを（検索データ件数−１）の枚数分複写する（ステップＳ１６０５）。次に、Ｅｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３に基づいて、全検索データのうち、先頭の１件分の検索データを出力対象シート（１枚目）に出力する（ステップＳ１６０６）。
次に、ステップＳ１６０６で、Ｅｘｃｅｌテンプレート４０５に出力しなかった未出力分の検索データとその件数を検索データとして更新し（ステップＳ１６０７）、ステップＳ１６０１へ戻る。
【００５２】
ステップＳ１６０２において、検索データ件数が１になるまで、ステップＳ１６０４〜ステップＳ１６０７を繰り返す。なお、２回目のステップＳ１６０６において、出力するシートは２枚目、３回目のステップＳ１６０６において出力するシートは３枚目・・・とする。この出力データ例を図２３、図２４に示す。
図２３の検索データ１８０３の件数は３件であるため、検索データ件数＞１となる。このとき、出力結果１８０４となる。このとき、シート「Ｃ」を２枚複写しており、検索データが３枚のシート「Ｃ（１）」、「Ｃ（２）」、「Ｃ（３）」に全て出力される。
【００５３】
一方、ステップＳ１６０４で、検索データ＝０のときは、検索データの出力をしないで終了する。
【００５４】
実施の形態１によれば、検索データを利用者が予め作成したＥｘｃｅｌテンプレートに固定行の表、項目として出力することができる。
また、出力されたシートの最終番号のシートにおいて、データ件数＜固定行数のとき、表の不要範囲を特定し、罫線を消去することができ、検索データ出力後に利用者が罫線消去する操作に要する時間を削減することができる。
【００５５】
実施の形態２．
実施の形態２は、固定行表出力装置８０３、項目出力装置８０４によって出力されたＥｘｃｅｌ帳票４０７に対し、入力規制を設定するＥｘｃｅｌ入力支援設定装置４０３（図４参照）と、Ｅｘｃｅｌ帳票４０７を更新し、更新結果を業務データベース１０５に取り込ませるデータ更新装置４０４（図４参照）についてのものである。
なお、実施の形態２は、図１〜図６の構成である。
【００５６】
図２５は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の処理を示すフローチャートである。
【００５７】
図２６は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）の帳票データと入出力定義を示す図である。
図２６において、帳票データ２００１と入出力定義２００４が示されている。
図２７は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）の取得表データリストとＳＱＬを示す図である。
図２７において、取得表データリスト２００５と、業務データベース１０５を更新するためのＳＱＬ２００６が示されている。
図２８は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（表出力）のコードテーブルの更新を示す図である。
図２８において、コードテーブル（更新前）２００７と、コードテーブル（更新後）２００８が示されている。
【００５８】
図２９は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）の帳票データを示す図である。
図２９において、帳票データ２１０１が示されている。
図３０は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）の入出力定義と取得項目データリストとＳＱＬを示す図である。
図３０において、入出力定義２１０３と取得項目データリスト２１０４と、業務データベース１０５を更新するためのＳＱＬ２１０５が示されている。
図３１は、この発明の実施の形態２によるデータ入出力装置のデータ更新装置の更新データ例（項目出力）のコードマスタの更新を示す図である。
図３１において、コードマスタ（更新前）２１０６とコードマスタ（更新後）２１０７が示されている。
【００５９】
図３２は、この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌの入力規制機能での利用者設定ダイアログを示す図である。
図３２において、「リスト」入力規制ダイアログ２２０１と、「文字列（長さ指定）」入力規制ダイアログが示されている。
図３３は、この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌの入力規制機能での利用者設定ダイアログのリスト定義項目とデータ長定義項目を示す図である。
図３３において、リスト定義項目２２０２と、データ長定義項目２２０４が示されている。
【００６０】
図３４は、この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の処理を示すフローチャートである。
【００６１】
図３５は、この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の出力データ例の出力定義データと検索データを示す図である。
図３５において、出力定義データ２４０１と、検索データ２４０３が示されている。
図３６は、この発明の実施の形態２によるデータ入出力装置のＥｘｃｅｌ入力支援設定装置の出力データ例を示す図である。
図３６において、出力結果（リスト選択可）２４０４と、不正データ入力エラー（リスト）２４０５と、不正データ入力エラー（データ長）２４０６とが示されている。
【００６２】
次に、動作について説明する。
実施の形態２は、実施の形態１において出力したＥｘｃｅｌ帳票４０７に対し、データの修正を行い、修正済みのデータによって業務データベース１０５を更新する場合のものである。この機能は、データ更新装置４０４によって実現することができる。
利用者が、表示装置３０３を用いて、データ更新を行なうためのＥｘｃｅｌ帳票４０７を指定し、データ更新を行うためのリクエストを出すと、データ更新装置４０４が動作する。
【００６３】
次に、データ更新装置４０４の動作について、図２５を用いて説明する。
まず、利用者が、表示装置３０３によって指定したＥｘｃｅｌ帳票４０７より、Ｅｘｃｅｌテンプレート登録装置４０１で定義したＥｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２、Ｅｘｃｅｌテンプレート定義６０３を取得する（ステップＳ１９０１）。
次に、Ｅｘｃｅｌシート定義６０１の出力形式を判定する（ステップＳ１９０２）。出力形式が表出力のとき、Ｅｘｃｅｌ項目定義６０２の表終了判定項目によって、表の終了行を判定し、データをリスト形式で取得する（ステップＳ１９０３）。ここで、終了行の判定方法としては、終了判定項目のデータがＥｘｃｅｌ帳票４０７に入力されていない場合、その前の行を表の終了行とする。
次に、ステップＳ１９０３で取得したデータより、データ更新用のＳＱＬを発行し、データベース操作部１０３が、業務データベース１０５の更新を行う（ステップＳ１９０５）。
【００６４】
これについて、図２６〜図２８のデータ例を用いて説明する。
帳票２００１（Ｅｘｃｅｌ帳票）のデータを更新するとき、入出力定義２００４の出力形式が表出力であるため、帳票２００１の表終了判定行は１４行目である。また、入出力定義２００４において、終了判定項目が「略称」である場合、帳票２００１の表終了判定行は７行目となる。
以降、入出力定義２００４に従ったデータ更新について説明する。
このとき、データを取得表データリスト２００５として取得する。帳票２００１の更新データ２００２、２００３より、業務データベース１０５を更新するためのＳＱＬ２００６を発行し、これを実行させる。業務データベース１０５のコードテーブル（更新前）２００７は、更新前のテーブルであり、コートテーブル（更新後）２００８は更新後のテーブルである。
【００６５】
ステップＳ１９０２で、出力形式が項目出力のとき、Ｅｘｃｅｌシート定義６０１のシート名とＥｘｃｅｌ項目定義６０２の項目位置からデータをリスト形式で取得する（ステップＳ１９０４）。シート名がＡのとき、Ａ（１）、Ａ（２）、Ａ（３）のように、括弧に連番が振られるため、連番が途切れるまでデータの取得を行う。
なお、Ａ（１）、Ａ（２）、Ａ（４）のように、連番に空きがある場合は、連番が途切れた時点で終了するため、Ａ（２）のシートのデータまで取得され、Ａ（４）のシートのデータは取得されない。
次に、ステップＳ１９０４で取得したデータより、データ更新用のＳＱＬを発行し、データベース操作部１０３が、業務データベース１０５の更新を行う（ステップＳ１９０５）。これについて、図２９〜図３１のデータ例を用いて説明する。
【００６６】
帳票２１０１（Ｅｘｃｅｌ帳票）のデータを更新するとき、入出力定義２１０３の出力形式が項目であるため、帳票２１０１のシート「Ｃ」の連番Ｃ（１）、Ｃ（２）、Ｃ（３）のセル「Ａ２」と「Ｂ２」の項目データを、取得項目データリスト２１０４として取得する。
帳票２１０１の更新データ２１０２より、業務データベース１０５を更新するためのＳＱＬ２１０５を発行し、これを実行させる。
コードマスタ（更新前）２１０６は、更新前のテーブルの例であり、コードマスタ（更新後）２１０７は、更新後のテーブルである。
【００６７】
このように、データ更新装置４０４により、Ｅｘｃｅｌ帳票４０７の修正データにより業務データベース１０５を更新することができるが、更新時に修正データが業務データベース１０５に設定されている値または条件に一致していないとき、業務データベース１０５の更新が失敗してしまうため、利用者がデータ出力装置４０２で出力したＥｘｃｅｌ帳票４０７をＥｘｃｅｌにて修正するとき、修正したデータに対して正常であるかどうかをチェックさせるための入力支援機能が必要になる。
【００６８】
Ｅｘｃｅｌには、「入力規制」という機能が存在する。入力規制機能は、指定したセルのデータをチェックする機能である。
図３２は、Ｅｘｃｅｌファイルにて利用者が手動で設定する入力規制のダイアログである。入力規制ダイアログの「入力値の種類」の中で、実施の形態２では、「リスト」入力規制ダイアログ２２０１、「文字列（長さ指定）」入力規制ダイアログ２２０３の２つにおいて、値を設定し、利用者が手動で設定しなくても、出力されたＥｘｃｅｌ帳票４０７に入力規制機能を提供できるようにしている。
【００６９】
次に、Ｅｘｃｅｌ入力支援設定装置４０３の動作について、図３４を用いて説明する。
まず、Ｅｘｃｅｌ出力用データ検索装置８０１より指定されたＥｘｃｅｌテンプレート４０５のＥｘｃｅｌシート定義６０１、Ｅｘｃｅｌ項目定義６０２より、出力項目を１つずつ取得し（ステップＳ２３０１）、取得した出力項目のデータ出力範囲を取得する（ステップＳ２３０２）。
次に、Ｅｘｃｅｌ項目定義６０２の項目名より、各出力項目においてカラム定義テーブル５０６の「コードグループ番号」、「最小データ長」、「最大データ長」のデータを取得する（ステップＳ２３０３）。
【００７０】
次いで、ある出力項目において、コードグループ番号の有無を確認する（ステップＳ２３０４）。
コードグループ番号のデータが存在するとき、「リスト」による入力支援を行う。このとき、コードグループ番号に紐付くコード一覧をコードテーブル５０８より取得する（ステップＳ２３０５）。次に、ステップＳ２３０２で取得したデータ出力範囲において、「リスト」入力規制ダイアログ２２０１のリスト定義項目２２０２を取得する（ステップＳ２３０６）。
次に、ステップＳ２３０５で取得したコード一覧をリスト定義項目２２０２の「元の値」に設定する。リスト定義項目２２０２の「空白を無視する」、「ドロップダウンリストから選択する」はＯＮと設定する。
次に、リスト定義項目２２０２の「エラーメッセージ」に「リストより選択してください」を設定する（ステップＳ２３０７）。
【００７１】
例えば、図３５において、Ｅｘｃｅｌ出力用データ検索装置８０１より指定したＥｘｃｅｌテンプレート４０５の入出力定義２４０１より、出力項目「拡張区分」のステップＳ２３０２で取得されるデータ出力範囲はセル（Ａ２〜Ａ４）である。
入出力定義２４０１より、「拡張区分」はカラム定義テーブル５０６のカラム番号１００５のデータである。このデータには、コードグループ番号（ＡＡ）が存在するため、コードテーブル５０８からコードグループ番号（ＡＡ）に紐付くコード一覧（ＰＯ、ＧＥ）を取得し、セル（Ａ２〜Ａ４）に対するリスト定義項目２２０２に設定する。この出力結果２４０４（図３６）になる。
図３６の出力結果２４０４で、出力されたＥｘｃｅｌテンプレート４（２４０２）のシート「Ａ」のセル（Ａ２〜Ａ４）において、プルダウンによるリスト選択を行うことができるようになる。
また、利用者がプルダウン（ＰＯ、ＧＥ）以外の文字列を入力したとき、「リストより選択してください」の文字２４０５が表示されるようになる。
【００７２】
一方、ステップＳ２３０４で、コードグループ番号のデータが存在しないとき、「文字列（長さ指定）」による入力支援を行う。このとき、「文字列（長さ指定）」入力規制ダイアログ２２０３のデータ長定義項目２２０４を取得する（２３０８）。
次に、ステップＳ２３０８で取得した最小データ長と最大データ長を「文字列（長さ指定）」入力規制ダイアログ２２０３のデータ長定義項目２２０４の「最小値」と「最大値」に設定する。データ長定義項目２２０４の「空白を無視する」はＯＮと設定する。
次に、データ長定義項目２２０４の「エラーメッセージ」に「入力されたデータの長さが範囲外です」を設定する（ステップＳ２３０９）。
【００７３】
例えば、図３５において、Ｅｘｃｅｌ出力用データ検索装置８０１より指定したＥｘｃｅｌテンプレート４０５の入出力定義２４０１より、出力項目「所内人数」のステップＳ２３０２で取得されるデータ出力範囲はセル（Ｃ２〜Ｃ４）である。入出力定義２４０１より、テーブルＩＤが「設備台帳（拡張台帳＿ＰＯ）」であるため、「所内人数」はカラム定義テーブル５０６のカラム番号１００６のデータである。このデータには、コードグループ番号が存在しないため、カラム番号１００６の最小データ長１と最大データ長１０をセル（Ｃ２〜Ｃ４）に対するデータ長定義項目２２０４に設定する。この結果２４０６（図３６）になる。
図３６の結果２４０６で、出力されたＥｘｃｅｌテンプレート４０５のシート「Ａ」のセル（Ｃ２〜Ｃ４）において、利用者がデータ長１〜１０以外の文字列を入力したとき、「入力されたデータの長さが範囲外です」の文字が表示されるようになる。
【００７４】
ステップＳ２３０１〜Ｓ２３０９の処理が完了後、出力項目が他にないかどうかを確認する（ステップＳ２３１０）。出力項目があれば、ステップＳ２３０１へ戻り、ステップＳ２３０２〜ステップＳ２３０９を実行する。出力項目がなければ、処理を終了する。
【００７５】
実施の形態２の効果について説明する。
従来では、業務データベースのデータが出力されたＥｘｃｅｌ帳票には、利用者が帳票データを修正するときに、修正したデータが正常であることを確認することができず、利用者が直接データベースを見て確認しなければならなかった。
実施の形態２によれば、出力したＥｘｃｅｌ帳票の各データに対して、リスト選択支援、データ長チェック支援を行うことができ、利用者の帳票修正における作業時間を削減することができる。
また、Ｅｘｃｅｌ帳票の修正したデータに基いて、業務データベースを更新するとき、更新時にデータの不正によって発生するエラーを削減することができる。
【符号の説明】
【００７６】
１００  データ入出力装置
１０１  利用者
１０２  Ｅｘｃｅｌ入出力アプリケーション
１０３  データベース操作部
１０４  データベース
１０５  業務データベース
１０６  Ｅｘｃｅｌ定義データベース
２０１  Ｅｘｃｅｌテンプレート定義テーブル
２０２  Ｅｘｃｅｌシート定義テーブル
２０３  Ｅｘｃｅｌ項目定義テーブル
３０１  データベース装置
３０２  アプリケーションサーバ装置
３０３  表示・入力装置
４０１  Ｅｘｃｅｌテンプレート登録装置
４０２  データ出力装置
４０３  Ｅｘｃｅｌ入力支援設定装置
４０４  データ更新装置
４０５  Ｅｘｃｅｌテンプレート
４０６  入出力定義
４０７  Ｅｘｃｅｌ帳票
５０１  設備台帳
５０２  事故障害台帳
５０３  基本台帳
５０４、５０５  拡張台帳
５０６  カラム定義テーブル
５０７  コードグループテーブル
５０８  コードテーブル
６０１  Ｅｘｃｅｌシート定義
６０２  Ｅｘｃｅｌ項目定義
６０３  Ｅｘｃｅｌテンプレート定義
８０１  Ｅｘｃｅｌ出力用データ検索装置
８０２  データ出力形式判定装置
８０３  固定行表出力装置
８０４  項目出力装置
【図１】
0005645627.tif 000002
【図４】
0005645627.tif 000003
【図５】
0005645627.tif 000004
【図６】
0005645627.tif 000005
【図７】
0005645627.tif 000006
【図８】
0005645627.tif 000007
【図９】
0005645627.tif 000008
【図１０】
0005645627.tif 000009
【図１１】
0005645627.tif 000010
【図１２】
0005645627.tif 000011
【図１３】
0005645627.tif 000012
【図１４】
0005645627.tif 000013
【図１６】
0005645627.tif 000014
【図１８】
0005645627.tif 000015
【図２０】
0005645627.tif 000016
【図２１】
0005645627.tif 000017
【図２３】
0005645627.tif 000018
【図２５】
0005645627.tif 000019
【図２７】
0005645627.tif 000020
【図２８】
0005645627.tif 000021
【図３０】
0005645627.tif 000022
【図３１】
0005645627.tif 000023
【図３３】
0005645627.tif 000024
【図３４】
0005645627.tif 000025
【図３５】
0005645627.tif 000026
【図２】
0005645627.tif 000027
【図３】
0005645627.tif 000028
【図１５】
0005645627.tif 000029
【図１７】
0005645627.tif 000030
【図１９】
0005645627.tif 000031
【図２２】
0005645627.tif 000032
【図２４】
0005645627.tif 000033
【図２６】
0005645627.tif 000034
【図２９】
0005645627.tif 000035
【図３２】
0005645627.tif 000036
【図３６】
0005645627.tif 000037