(57)【要約】【課題】エラーデータを効率よく取込むことができ、業務アプリケーションを開発する際のデータ取込システムの開発に係るコストを削減できるデータ取込システムを提供する。【解決手段】データ取込システムにおいて、レイアウト定義ファイルと、項目辞書ファイルと、取込ファイル２０３を取得し、レイアウト定義ファイルおよび項目辞書ファイルに基づいて、取込ファイル２０３に対するチェック処理を実行し、正常データを業務アプリケーションが使用する業務ＤＢ３０１に登録し、不正データが格納されるエラーデータファイル２０１、および不正データの取込データ内の位置情報、不正データに対応するエラーデータファイル２０１内の位置情報および不正データの内容が格納されるエラーメッセージファイル２０２を出力するバッチサーバ１０２とを備えた。【選択図】図１
2013200740.tif 000002
【特許請求の範囲】
【請求項１】
業務アプリケーションに対して、取込データの登録を行うデータ取込システムであって、
前記取込データのテーブルレイアウト情報が定義されたレイアウト定義ファイルと、
前記取込データの各項目における属性情報が定義された項目辞書ファイルと、
前記取込データを取得し、前記レイアウト定義ファイルおよび前記項目辞書ファイルに基づいて、前記取込データに対するチェック処理を実行し、正常データを前記業務アプリケーションが使用するデータベースに登録し、不正データが格納されるエラーデータファイル、および前記不正データの前記取込データ内の位置情報、前記不正データに対応する前記エラーデータファイル内の位置情報および前記不正データの内容が格納されるエラーメッセージファイルを出力する処理装置とを備えたことを特徴とするデータ取込システム。
【請求項２】
請求項１に記載のデータ取込システムにおいて、
前記エラーメッセージファイルは、前記不正データに対応する修正方法が格納されることを特徴とするデータ取込システム。
【請求項３】
請求項２に記載のデータ取込システムにおいて、
前記処理装置は、前記エラーメッセージファイルの内容を元に修正されたエラーデータファイルを取得し、前記修正されたエラーデータファイルを前記取込データとして処理することを特徴とするデータ取込システム。
【請求項４】
請求項１に記載のデータ取込システムにおいて、
前記処理装置は、複数種類のオペレーティングシステムおよび複数種類のデータベース管理システムで動作することを特徴とするデータ取込システム。
【請求項５】
請求項４に記載のデータ取込システムにおいて、
前記処理装置は、前記レイアウト定義ファイルおよび前記項目辞書ファイルを用いて、前記チェック処理を行うアドオンを登録することにより、前記チェック処理を追加することを特徴とするデータ取込システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、業務アプリケーションなどのシステム運用におけるデータ取込を行うデータ取込システムに関し、特に、大量データの一括登録に関するものである。
【背景技術】
【０００２】
製造業、卸売業向けの業務アプリケーションでは、品目データのような大量データを一括してデータベースに登録するシステム（以下データ取込システム）が必須となる。
【０００３】
このようなデータ取込システムとして、例えば、特開２０１２−２２３８６号公報（特許文献１）に記載のようなデータチェックを行いながらデータを取込むものがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２２３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のものは、正常データのみを取込むことが可能であるが、不正データを効率よく取込むための仕組みがない。
【０００６】
また、データ取込システムは、それを利用する業務アプリケーションの環境に依存することが多く、複数の業務アプリケーションで共通利用することができない。そのため、新規業務アプリケーションの開発時に専用のデータ取込システムも開発する必要が生じ、開発コスト増大の原因になっている。
【０００７】
また、従来のデータ取込システムでは、取込失敗時に適切なエラーメッセージが表示されないため、エラーの原因を特定できない場合や、取込に失敗したデータを修正後に再度取込むことができない場合等があり、運用面で問題を抱えているものもある。
【０００８】
そこで本発明の目的は、取込データから不正データのみを抽出したエラーデータファイルとデータ修正用のエラーメッセージファイルを出力することで、エラーデータを効率よく取込むことができ、業務アプリケーションを開発する際のデータ取込システムの開発に係るコストを削減できるデータ取込システムを提供することにある。
【０００９】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
【００１１】
すなわち、代表的なものの概要は、業務アプリケーションに対して、取込データの登録を行うデータ取込システムであって、取込データのテーブルレイアウト情報が定義されたレイアウト定義ファイルと、取込データの各項目における属性情報が定義された項目辞書ファイルと、取込データを取得し、レイアウト定義ファイルおよび項目辞書ファイルに基づいて、取込データに対するチェック処理を実行し、正常データを業務アプリケーションが使用するデータベースに登録し、不正データが格納されるエラーデータファイル、および不正データの取込データ内の位置情報、不正データに対応するエラーデータファイル内の位置情報および不正データの内容が格納されるエラーメッセージデータを出力する処理装置とを備えたものである。
【発明の効果】
【００１２】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
【００１３】
すなわち、代表的なものによって得られる効果は、新規に業務アプリケーションを開発する際に、データ取込システムの開発に係るコストを削減でき、また、差分データの取込を効率よく実行できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施の形態に係るデータ取込システムの構成を示す構成図である。
【図２】本発明の一実施の形態に係るデータ取込システムの取込ジョブ登録の処理を示すフローチャートである。
【図３】本発明の一実施の形態に係るデータ取込システムのバッチＤＢに格納されるジョブ管理テーブルのテーブル定義図を示す図である。
【図４】本発明の一実施の形態に係るデータ取込システムのバッチサーバによる取込ジョブの処理を示すフローチャートである。
【図５】本発明の一実施の形態に係るデータ取込システムのバッチサーバによる取込処理を示すフローチャートである。
【図６】本発明の一実施の形態に係るデータ取込システムで使用される項目辞書ファイルのデータ構成を示す構成図である。
【図７】（ａ）〜（ｃ）は本発明の一実施の形態に係るデータ取込システムで使用されるレイアウト定義ファイルのデータ構成を示す構成図である。
【図８】（ａ）、（ｂ）は本発明の一実施の形態に係るデータ取込システムで出力されるエラーメッセージファイルおよびエラーデータファイルの一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１６】
＜データ取込システムの構成＞
図１により、本発明の一実施の形態に係るデータ取込システムの構成について説明する。図１は本発明の一実施の形態に係るデータ取込システムの構成を示す構成図である。
【００１７】
図１において、データ取込システムは、例えばＴＳＶ（Ｔａｂ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ：タブ区切り）形式の取込ファイル２０３をインターネット経由でウェブアプリケーションサーバ１０１のファイル共有フォルダ１０４へ送信するクライアントコンピュータ１００と、クライアントコンピュータ１００からの取込要求に応じて、処理装置であるバッチサーバ１０２の取込ジョブ登録処理を起動し、取込ジョブをデータベースサーバ１０３のバッチＤＢ３０２に登録するウェブアプリケーションサーバ１０１と、バッチＤＢ３０２に登録された取込ジョブを読取り、ファイル共有フォルダ１０４に格納されている取込ファイル２０３中の取込データをデータベースサーバ１０３の業務ＤＢ３０１に登録し、検出されたエラー情報をエラーデータファイル２０１とエラーメッセージファイル２０２としてファイル共有フォルダ１０４に出力するバッチサーバ１０２と、取込対象データの登録対象となる業務ＤＢ３０１とバッチＤＢ３０２を含むデータベースサーバ１０３とから構成されている。
【００１８】
また、ウェブアプリケーションサーバ１０１は、クライアントコンピュータ１００からのエラー情報取得要求に応じて、ファイル共有フォルダ１０４からエラーデータファイル２０１とエラーメッセージファイル２０２をクライアントコンピュータ１００に送信する。
【００１９】
また、バッチサーバ１０２には、取込ファイル２０３中の取込データのテーブルレイアウト情報が定義されたレイアウト定義ファイルと、取込ファイル２０３中の取込データの各項目における属性情報が定義された項目辞書ファイルを有している。また、バッチサーバ１０２は、記憶領域となるメモリを有しており、各種データ処理時のデータが格納される。
【００２０】
また、データベースサーバ１０３のバッチＤＢ３０２には、ジョブ管理のためのジョブ管理テーブルが格納されている。
【００２１】
＜データ取込システムの動作＞
次に、図２〜図８により、本発明の一実施の形態に係るデータ取込システムの動作について説明する。図２は本発明の一実施の形態に係るデータ取込システムの取込ジョブ登録の処理を示すフローチャート、図３は本発明の一実施の形態に係るデータ取込システムのバッチＤＢに格納されるジョブ管理テーブルのテーブル定義図を示す図、図４は本発明の一実施の形態に係るデータ取込システムのバッチサーバによる取込ジョブの処理を示すフローチャート、図５は本発明の一実施の形態に係るデータ取込システムのバッチサーバによる取込処理を示すフローチャート、図６は本発明の一実施の形態に係るデータ取込システムで使用される項目辞書ファイルのデータ構成を示す構成図、図７は本発明の一実施の形態に係るデータ取込システムで使用されるレイアウト定義ファイルのデータ構成を示す構成図、図８は本発明の一実施の形態に係るデータ取込システムで出力されるエラーメッセージファイルおよびエラーデータファイルの一例を示す図である。
【００２２】
図３において、ジョブ管理テーブルは、ジョブ管理テーブルの項目３００として、取込ジョブを要求したクライアント情報と、取込ジョブを実行するタイミング情報、取込ジョブの実行結果に関する情報が定義されている。
【００２３】
例えば、カラム名として、クライアントの会社の会社コードの「会社コード」、会社コード毎に割り振られるＩＤの「シーケンス番号」、ジョブの機能ＩＤの「機能ＩＤ」、ジョブの実行形態の「実行タイプ」、ジョブの実行状態の「実行ステータス」、ジョブの停止状態の「停止区分」、ジョブの実行予定時刻の「実行予定日時」、ジョブの実行日時の「実行日時」、業務固有のパラメータの「起動パラメータ」、ジョブを何曜日に実行するかどうかのフラグの「指定曜日（日）」〜「指定曜日（土）」、ジョブの実行日の「指定日」、ジョブの実行時刻の「指定時刻」、ジョブの実行中に発生したエラーの内容の「エラーメッセージ」、更新ユーザのＩＤの「更新ユーザＩＤ」、更新日時の「更新日時」、作成日時の「作成日時」が定義され、それぞれの項目に対応するデータが格納されテーブルである。
【００２４】
図６において、項目辞書ファイルは、項目辞書ファイルの項目６００として、項目が属するテーブルの「テーブルＩＤ」と、項目の「カラムＩＤ」と、同一テーブル内における一意の番号である「シーケンスＮｏ」と、項目の「データ型」と、項目の「データ長」と、項目の「小数点桁数」と、項目が主キーであるかどうかを判定するための「主キーフラグ」と、項目にＮｕｌｌ値の入力を許容するかどうかを判定するための「ＮＵＬＬ値許容フラグ」と、項目の「デフォルト値」と、項目の小数値を切り捨てるかどうかを判定するための「整数丸めフラグ」が定義され、各データ名には、図６に示すような物理名が対応付けられており、それぞれの項目に対応するデータが格納されるテーブルである。
【００２５】
図７において、図７（ａ）に示すレイアウト定義ファイルのレイアウト定義ファイル属性一覧に含まれる属性７００は、取込ジョブを識別するための機能ＩＤの「ｉｄ」と、取込ジョブの名称である機能名称の「ｔｉｔｌｅ」と、取込対象のテーブルの物理名の「ｔａｂｌｅＮａｍｅ」と、取込対象データの列名の「ｄｂＦｉｅｌｄＮａｍｅ」と、取込データとして固定値を入力する際に使用する固定値の「ｌｉｔｅｒａｌ」と、採番データを入力する際に利用する採番テーブルのコード値の「ｎｕｍｂｅｒｉｎｇＣｏｄｅ」と、採番データを入力する際に利用する採番テーブルの名称値の「ｎｕｍｂｅｒｉｎｇＮａｍｅ」と、取込対象データが参照するマスタ名の「ｒｅｆＭａｓｔｅｒＮａｍｅ」と、取込対象データが参照するマスタの主キーの列名の「ｒｅｆＭａｓｔｅｒＰｒｉｍａｒｙＫｅｙＦｉｅｌｄ」と、取込対象データが参照するシステムデータのデータ型の「ｒｅｆＳｙｓｔｅｍＴｙｐｅ」と、取込対象データが必須であるかどうかを判定するためのフラグの「ｉｓＲｅｑｕｉｒｅｄ」と、業務システムからのデータ入力を判定するフラグの「ｉｓＳｙｓｔｅｍＩｎｐｕｔ」、取込対象データのデフォルト値の「ｄｅｆａｕｌｔＶａｌｕｅ」と、取込対象データに対して重複チェックを実行するかどうかを判定するためのフラグの「ｉｓＤｕｐｌｉｃａｔｅＣｈｅｃｋＡｃｔｉｖｅ」が定義されている。
【００２６】
このように定義された情報が、例えば、図７（ｂ）に示すレイアウト定義ファイル例７０１のような形式で使用され、品目データから構成される取込ファイル２０３のデータの取込に使用される。
【００２７】
また、図７（ｂ）に示すレイアウト定義ファイル例７０１の場合の取込ファイル２０３としては、図７（ｃ）に示す取込データファイル例７０２のような形式となる。
【００２８】
また、図８において、エラーメッセージファイル２０２には、取込ファイル２０３中のデータ項目に対して、データ項目の位置情報となる行数および列数とエラーデータファイル２０１中の行数とエラーの内容と修正方法を示すエラーメッセージが定義されている。
【００２９】
また、エラーデータファイル２０１には、取込ファイル２０３の中で、エラーデータを含むデータのレコードが定義されている。
【００３０】
取込ジョブ登録の処理としては、図２に示すように、まず、クライアントコンピュータ１００は、取込対象の取込ファイル２０３をウェブアプリケーションサーバ１０１に送信する（ステップＳ２００）。ウェブアプリケーションサーバ１０１は、取込対象の取込ファイル２０３をファイル共有フォルダ１０４に格納する（ステップＳ２０１）。
【００３１】
そして、ウェブアプリケーションサーバ１０１は、バッチサーバ１０２の取込ジョブ登録処理を起動して、データベースサーバ１０３のバッチＤＢ３０２にあるジョブ管理テーブルに取込ジョブを登録する（ステップＳ２０２）。
【００３２】
また、バッチサーバによる取込ジョブの処理としては、図４に示すように、まず、バッチサーバ１０２はデータベースサーバ１０３のバッチＤＢ３０２にアクセスしてジョブ管理テーブルを読込む（ステップＳ４００）。
【００３３】
そして、バッチＤＢ３０２にあるジョブ管理テーブルの実行予定日時とシステム時刻が一致し、かつ実行ステータスが「９」（未実行状態）のレコードを検索して、条件に一致するレコードのジョブを起動する（ステップＳ４０１）。
【００３４】
そして、トランザクション開始前に各業務機能で必要な処理を実行し（ステップＳ４０２）、その後、トランザクションを開始し、直後に各業務機能で必要な処理を実行する（ステップＳ４０３）。
【００３５】
そして、取込ファイル２０３のレイアウト情報が定義されているレイアウト定義ファイルを読込み、レイアウト定義データをメモリに格納し（ステップＳ４０４）、マスタ存在チェックに利用するマスタデータをデータベースサーバ１０３の業務ＤＢ３０１の各マスタから取得してメモリに格納する（ステップＳ４０５）。
【００３６】
そして、ウェブアプリケーションサーバ１０１のファイル共有フォルダ１０４に格納されている取込ファイル２０３に対してチェック処理を実行する（ステップＳ４０６）。
【００３７】
そして、例外が発生したかどうかを判定し（ステップＳ４０７）、ステップＳ４０７で例外が発生した場合には、バッチＤＢ３０２にあるジョブ管理テーブルの実行ステータスを「４」（実行完了）に更新し、エラーメッセージにエラーコードを登録する（ステップＳ４１１）。
【００３８】
ステップＳ４０７で、例外が発生しなかった場合には、データベースサーバ１０３の業務ＤＢ３０１に取込ファイル２０３から取得した業務データを登録する（ステップＳ４０８）。
【００３９】
そして、トランザクション終了前に各業務機能で必要な処理を実行し（ステップＳ４０９）、トランザクションを終了し、各業務機能で必要な処理を実行し（ステップＳ４１０）、バッチＤＢ３０２にあるジョブ管理テーブルを更新する（ステップＳ４１１）。
【００４０】
また、バッチサーバ１０２による取込処理としては、図５に示すように、まず、メモリに格納されている取込ファイル２０３のデータを１行分読込み（ステップＳ５００）、メモリから項目辞書データとレイアウト定義データを読込み、取込データに対して項目辞書チェックを実行する（ステップＳ５０１）。
【００４１】
そして、ステップＳ５０１でエラーが検出されたかどうかを判定し（ステップＳ５０２）、ステップＳ５０２でエラーが検出された場合には、エラーデータとエラーメッセージデータをメモリに格納する（ステップＳ５０６）。さらに、エラー件数が規定値以上かどうかを判定し（ステップＳ５０８）、ステップＳ５０８で規定値以上の場合には、メモリからエラー情報を取得してエラーデータファイル２０１とエラーメッセージファイル２０２を出力し（ステップＳ５０９）、処理を終了する。
【００４２】
ステップＳ５０８でエラー件数が規定値より小さい場合は、ステップＳ５００に戻り、次の行の読込に進む。
【００４３】
また、ステップＳ５０２でエラーが検出されなかった場合には、レイアウト定義データに基づいて業務チェックを実行し（ステップＳ５０３）、ステップＳ５０３でエラーが検出されたかどうかを判定し（ステップＳ５０４）、ステップＳ５０４でエラーが検出された場合には、エラーデータとエラーメッセージデータをメモリに格納する（ステップＳ５０６）。さらに、エラー件数が規定値以上かどうかを判定し（ステップＳ５０８）、ステップＳ５０８で規定値以上の場合には、メモリからエラー情報を取得してエラーデータファイル２０１とエラーメッセージファイル２０２を出力し（ステップＳ５０９）、処理を終了する。
【００４４】
また、ステップＳ５０４でエラーが検出されなかった場合には、読込んだデータをメモリに格納する（ステップＳ５０５）。
【００４５】
そして、取込ファイル２０３の全行分のデータを読み終える（ステップＳ５０７）まで、ステップＳ５００〜ステップＳ５０７の処理を繰り返す。
【００４６】
ステップＳ５０７で、取込ファイル２０３の全行分のデータを読み終えると、メモリからエラー情報を取得してエラーデータファイル２０１とエラーメッセージファイル２０２を出力し（ステップＳ５０９）、処理を終了する。
【００４７】
このように、本実施の形態では、取込ファイル２０３から不正データのみを抽出したエラーデータファイル２０１と、再取込データとしてエラー原因を詳細に記載したデータ修正用のエラーメッセージファイル２０２を出力することで、クライアントコンピュータ１００は、エラーメッセージファイル２０２を用いてエラーデータファイル２０１を修正し、エラーデータファイル２０１に対して取込を実行することにより、差分データの取込が可能となる。
【００４８】
また、取込ファイル２０３のテーブルレイアウト情報が定義されたレイアウト定義ファイルと、取込ファイル２０３の各項目における属性情報が定義された項目辞書ファイルを用いているため、利用対象の業務アプリケーションのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ：オペレーティングシステム）やＤＢＭＳ（ＤａｔａＢａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ：データベース管理システム）などの環境に依存しないデータ取込システムを構築することが可能となる。
【００４９】
また、レイアウト定義ファイルと、項目辞書ファイルを用いて処理するため、これらを用いて業務チェックを行うアドオンをサーバなどに登録することにより、業務チェックを追加することも可能となる。
【００５０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００５１】
例えば、本実施の形態では、取込ファイル２０３として、ＴＳＶ形式のデータの例で説明したが、取込ファイル２０３としては、取込む各データが区別できる形式であれば、ＣＳＶ（Ｃｏｍｍａ  Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ：カンマ区切り）など、他の形式の取込ファイル２０３を用いてもよい。
【産業上の利用可能性】
【００５２】
本発明は、製造業や流通業向けの業務システム等の大量のデータを取込む必要のあるシステムなどに広く適用可能である。
【符号の説明】
【００５３】
１００…クライアントコンピュータ、１０１…ウェブアプリケーションサーバ、１０２…バッチサーバ、１０３…データベースサーバ、２０１…エラーデータファイル、２０２…エラーメッセージファイル、２０３…取込ファイル、３０１…業務ＤＢ、３０２…バッチＤＢ。
【図１】
2013200740.tif 000003
【図２】
2013200740.tif 000004
【図３】
2013200740.tif 000005
【図４】
2013200740.tif 000006
【図５】
2013200740.tif 000007
【図６】
2013200740.tif 000008
【図７】
2013200740.tif 000009
【図８】
2013200740.tif 000010