説明

表計算ファイルのバージョン変換システムおよびバージョン変換方法ならびにそのためのプログラム

【課題】クライアントPCにインストールされている表計算ソフトウェアのバージョンを意識する必要をなくし、また、開発・運用工数を大幅に削減することが可能なバージョン変換技術の提供。
【解決手段】サーバ101上に存在する表計算ファイル103をクライアントPC102上にインストールされた表計算ソフトウェア110のバージョンに自動変換するために、表計算ファイルのバージョン間の相違を吸収するための情報を管理する書式情報データベース108と、表計算ソフトウェア110のバージョンを収集するバージョン検索手段106と、収集した表計算ソフトウェアのバージョンと、表計算ファイル103のバージョンおよび設定情報と、書式情報データベース108の内容とに基づいて、表計算ファイル103を表計算ソフトウェア110のバージョンに自動変換するバージョン変換手段104を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表計算ファイルのバージョン変換技術に係り、特に、サーバ上に存在する表計算ファイルのバージョンと、該表計算ファイルを参照するクライアントコンピュータにインストールされている表計算ソフトウェア(以下、クライアントの表計算ソフトウェアという)のバージョンが相違する場合、そのバージョンの相違を自動的に吸収する技術に関するものである。
【背景技術】
【0002】
旧システムで定義・作成された帳票データを新システムに移植する従来の移植技術として、例えば特開2009−116632号公報(特許文献1)に記載されたものがある。
【0003】
特許文献1に記載されたものは、既存の監視制御システムなどの旧システムで定義・作成された帳票データと、新システムの表計算ソフトウェア用の帳票データの違いを、自動変換によって吸収した移植ができ、またリプレース費用を大幅に低減できる移植技術を提供することを目的としたものであり、その目的を達成するために、旧システムで定義・作成された帳票データの固定部データ(罫線情報、項目名、タイトルなど)と可変部データ(日付、計測値、履歴など)を個別に解析してテキスト形式データに一次変換する一次変換処理と、このテキスト形式データの固定部データと新システムの表計算ソフトウェアで定義する固定部データとの違いを吸収して、表計算ソフトウェア用の帳票データに二次変換し、これにテキスト形式データの可変部データを展開する二次変換処理を行うようにしたものである。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−116632号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載された移植技術を用いて、旧システムで定義・作成された帳票データを、新システムの表計算ソフトウェア用の帳票データに移植を行ったとしても、新システムの表計算ソフトウェア用の帳票データを参照するクライアントの表計算ソフトウェアのバージョンの相違により、定義された表示と異なる場合が生じる。
【0006】
その場合、新システムにおいて、クライアントの表計算ソフトウェアのバージョンに合わせて定義された表計算ソフトウェア用の帳票データをそれぞれ用意する必要が生じ、リプレースの移植工数に加え、バージョンの相違を吸収するための工数が新規に発生してくる。
【0007】
また、新システムの運用中に表計算ソフトウェア用の帳票データに修正が発生した場合、クライアントの表計算ソフトウェアのバージョンに合わせて定義された帳票データ全てに対して修正・確認作業を行う必要があり、保守工数も大幅に発生してくる。
【0008】
本発明の目的は、サーバ上に存在する表計算ファイルのバージョンと、該表計算ファイルを参照するクライアントの表計算ソフトウェアのバージョンが異なる場合であっても、システムで使用する表計算ソフトウェア用の帳票データ作成および修正時に、該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを意識する必要をなくし、また、開発・運用工数を大幅に削減することが可能なバージョン変換システムおよびバージョン変換方法ならびにそのためのプログラムを提供することを目的としている。
【課題を解決するための手段】
【0009】
本発明に係る表計算ファイルのバージョン変換技術は、上記目的を達成するために、サーバ上に存在する表計算ファイルのバージョンと、当該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンが異なる場合、クライアントPCにインストールされている表計算ソフトウェアのバージョンを自動で収集し、バージョン間の相違を吸収するための情報を管理する書式情報データベースを参照することによって、サーバ上に存在する表計算ファイルを、当該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンに自動変換することを特徴とするものである。
【0010】
より詳しくは、
a)本発明に係るバージョン変換システムは、サーバ上に存在する表計算ファイルをクライアントPC上にインストールされた表計算ソフトウェアのバージョンに自動変換するバージョン変換システムであって、表計算ファイルのバージョン間の相違を吸収するための情報を管理する書式情報データベースと、前記サーバ上に存在する表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを収集するバージョン検索手段と、該バージョン検索手段で収集した前記表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式情報データベースの内容とに基づいて、前記サーバ上に存在する表計算ファイルを、該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンに自動変換するバージョン変換手段と、を有することを特徴としている。
【0011】
b)また、上記a)において、前記書式情報データベースは、書式要素名(書式を規定する書式要素を一意に識別する名前)のバージョン間の相違を吸収するために設けられた、表計算ソフトウェアのバージョン毎に規定されている書式要素名を登録する書式要素名設定テーブルと、書式要素値(書式要素の属性を一意に識別する値)のバージョン間の相違を吸収するために設けられた、前記表計算ソフトウェアのバージョン毎に規定されている書式要素値を登録する書式要素値設定テーブルと、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)およびバージョンを登録するソフトウェア情報登録テーブルとからなり、前記バージョン変換手段は、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記バージョン検索手段によって収集されたクライアントPCにインストールされている表計算ソフトウェアのバージョンと、前記書式要素名設定テーブルと前記書式要素値設定テーブルとソフトウェア情報登録テーブルの内容とに基づいて、前記サーバ上に存在する表計算ファイルを前記クライアントPCの表計算ソフトウェアのバージョンの表計算ファイルに自動変換することを特徴としている。
【0012】
c)本発明に係るバージョン変換方法は、サーバ上に存在する表計算ファイルをクライアントPC上にインストールされた表計算ソフトウェアのバージョンに自動変換するバージョン変換方法であって、前記サーバ上に存在する表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを収集するバージョン検索手順と、該バージョン検索手段で収集した前記表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式情報データベースの内容とに基づいて、前記書式情報データベースを参照し、前記サーバ上に存在する表計算ファイルを、該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンに自動変換するバージョン変換手順とを有することを特徴としている。
【0013】
d)また、上記c)において、前記書式情報データベースは、書式要素名(書式を規定する書式要素を一意に識別する名前)のバージョン間の相違を吸収するために設けられた、表計算ソフトウェアのバージョン毎に規定されている書式要素名を登録する書式要素名設定テーブルと、書式要素値(書式要素の属性を一意に識別する値)のバージョン間の相違を吸収するために設けられた、前記表計算ソフトウェアのバージョン毎に規定されている書式要素値を登録する書式要素値設定テーブルと、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)およびバージョンを登録するソフトウェア情報登録テーブルとからなり、前記バージョン変換手順は、前記バージョン検索手段によって収集されたクライアントPCにインストールされている表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式要素名設定テーブルと前記書式要素値設定テーブルとソフトウェア情報登録テーブルの内容とに基づいて、前記サーバ上に存在する表計算ファイルを前記クライアントPCの表計算ソフトウェアのバージョンの表計算ファイルに自動変換する手順であることを特徴としている。
【0014】
e)本発明に係るプログラムは、コンピュータに、上記c)またはd)に記載のバージョン変換方法における各手順を実行させるためのプログラムである。
【発明の効果】
【0015】
本発明によれば、サーバ上に存在する表計算ファイルのバージョンと該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンが異なる場合、記サーバ上に存在する表計算ファイルをクライアントPCにインストールされている表計算ソフトウェアのバージョンに対応した表計算ファイルに自動で変換することが可能になるため、システムで使用する表計算ソフトウェア用の帳票データ作成および修正時に、当該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを意識する必要がなくなり、開発・運用工数を大幅に削減することが可能となる。
【図面の簡単な説明】
【0016】
【図1】本発明に係る表計算ファイルのバージョン変換システムの全体構成例を示す図である。
【図2−A】本発明に係る書式情報データベース(書式要素名設定テーブル)の構成例を示す図である。
【図2−B】本発明に係る書式情報データベース(書式要素値設定テーブル)の構成例を示す図である。
【図2−C】本発明に係る書式情報データベース(ソフトウェア情報登録テーブル)の構成例を示す図である。
【図3】本発明に係るバージョン検索手段(バージョン情報取得処理部)が行う処理のフローチャートである。
【図4−A】本発明に係るバージョン変換手段(書式変換処理部)が行う処理のフローチャートである(その1)。
【図4−B】本発明に係るバージョン変換手段(書式変換処理部)が行う処理のフローチャートである(その2)。
【図5】サーバ上に存在する表計算ファイル(変換前ファイル)とクライアントPC上に作成された表計算ファイル(変換後ファイル)の一例を示す図である。
【発明を実施するための形態】
【0017】
図1は、本発明に係る表計算ファイルのバージョン変換システムの全体構成例である。
【0018】
同図に示すように、本発明に係るバージョン変換システムは、サーバ101と、クライアントPC102と、サーバ101とクライアントPC102との間でデータを送受信するインターネットなどのネットワーク200で構成される。
【0019】
また、サーバ101は、クライアントPC102により参照される変換前の表計算ファイル103と、表計算ファイル103のバージョンを自動で変換するバージョン変換手段104を備える。
【0020】
さらに、バージョン変換手段104は、バージョン変換を行う書式変換処理部107と、バージョン間の相違を吸収するための情報を管理する書式情報データベース(マスタデータベース)108とを備える。
【0021】
クライアントPC102は、表計算ソフトウェア110と、クライアントPC102にインストールされている表計算ソフトウェア110のバージョンを自動的に取得するバージョン検索手段106を備える。
【0022】
また、バージョン検索手段106は、当該クライアントPC102にインストールされている表計算ソフトウェア110のバージョン情報の取得を行うバージョン情報取得処理部109を備える。表計算ファイル105は、サーバ101にある変換前の表計算ファイル103をクライアントPC102にインストールされている表計算ソフトウェア110のバージョンに対応して変換して得られる表計算ファイルを示している。
【0023】
図2−A,図2−Bおよび図2−Cは、書式情報データベース108に保存される3つのテーブル、すなわち<書式要素名設定テーブル>,<書式要素値設定テーブル>,および<ソフトウェア情報登録テーブル>を説明するための図であり、それぞれ(1)テーブル名、(2)テーブル項目、(3)データ例が示されている。以下、各テーブルについて詳細に説明する。
【0024】
(A)[書式要素名設定テーブル]について(図2−A参照)
(1)テーブル名[書式要素名設定テーブル]と名づけられたテーブルは、表計算ソフトウェアのバージョン毎に規定されている書式要素名(書式要素を一意に識別する名前)を登録するテーブルである。本テーブルは、書式要素名のバージョン間の相違を吸収するために設けられたテーブルである。
【0025】
(2)テーブル項目
書式要素名設定テーブルのデータ項目は、<機能グループ>,<バージョン>,<書式要素名>からなっている。
【0026】
<機能グループ>列には、同一の機能を持つ書式要素名をグループ化して登録する。
【0027】
<バージョン>列には、該当書式要素名が規定されている表計算ソフトウェアのバージョンを登録する。
【0028】
<書式要素名>列には、表計算ソフトウェアのバージョン毎に規定されている書式要素名を登録する。
【0029】
(3)データ例
書式要素名設定テーブルの各データ項目のデータ例を示す。
(イ)本例では、『シート名』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「SheetName」、バージョン「2003」では「WorkSheet」と規定されている)を、「シート名設定」という機能グループでまとめている。
【0030】
(ロ)本例では、『セル名』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「CellName」、バージョン「2003」では「WorkCell」と規定されている)を、「セル名設定」という機能グループでまとめている。
【0031】
(ハ)本例では、『行表示』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「Line」、バージョン「2003」では「Column」と規定されている)を、「行表示設定」という機能グループでまとめている。
【0032】
(ニ)本例では、『列表示』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「Sequence」、バージョン「2003」では「Row」と規定されている)を、「列表示設定」という機能グループでまとめている。
【0033】
(ホ)本例では、『セルの値』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「Variable」、バージョン「2003」では「Value」と規定されている)を、「セルの値設定」という機能グループでまとめている。
【0034】
(ヘ)本例では、『セルの色』という機能を一意に識別する書式要素名(表計算ソフトウェアのバージョン「2000」では「Tone」、バージョン「2003」では「Color」と規定されている)を、「セルの色設定」という機能グループでまとめている。
【0035】
(B)[書式要素値設定テーブル]について(図2−B参照)
(1)テーブル名[書式要素値設定テーブル]と名づけられたテーブルは、表計算ソフトウェアのバージョン毎に規定されている書式要素値(書式要素の属性を一意に識別する値)を登録するテーブルである。本テーブルは、書式要素値のバージョン間の相違を吸収するために設けられたテーブルである。
【0036】
(2)テーブル項目
書式要素値設定テーブルのデータ項目は、<機能グループ>,<属性グループ>,<バージョン>,<書式要素値>からなっている。
【0037】
<機能グループ>列には、上記[書式要素名設定テーブル]で登録した<機能グループ>列の中で、書式要素値の情報を指定する機能グループを登録する。
【0038】
<属性グループ>列には、同一の属性を持つ書式要素値をグループ化し登録する。
【0039】
<バージョン>列には、該当書式要素値が規定されている表計算ソフトウェアのバージョンを登録する。
【0040】
<書式要素値>列には、表計算ソフトウェアのバージョン毎に規定されている書式要素値を登録する。
【0041】
(3)データ例
(イ)機能グループ「行表示設定」内で、『表示』という属性を一意に識別する書式要素値(表計算ソフトウェアのバージョン「2000」では「YES」、バージョン「2003」では「TRUE」と規定されている)を、「表示」という属性グループでまとめている。
【0042】
よって、『行表示』という書式情報を、表計算ソフトウェアのバージョン「2000」を例にすると、
a)[書式要素名設定テーブル]⇒機能グループ「行表示設定」、書式要素名「Line」
b)[書式要素値設定テーブル]⇒機能グループ「行表示設定」、属性グループ「表示」、
c)書式要素値「YES」
ということになり、書式情報『「Line」=「YES」』と表すことが可能となる。
【0043】
同様にして、『行表示』という書式情報を、表計算ソフトウェアのバージョン「2003」を例にすると、書式情報『「Column」=「TRUE」』と表すことが可能となる。
【0044】
(ロ)なお、行表示設定の非表示の場合、列表示設定の表示の場合、列表示設定の非表示の場合も同様であるので、説明は省略する。
【0045】
(ハ)機能グループ「セルの色設定」内で、『赤』という属性を一意に識別する書式要素値(表計算ソフトウェアのバージョン「2000」では「#FF0000」、バージョン「2003」では「Red」と規定されている)を、「赤色」という属性グループでまとめている。
【0046】
よって、『セルの色が赤色』という書式情報を、表計算ソフトウェアのバージョン「2000」を例にすると、
a)[書式要素名設定テーブル]⇒機能グループ「セルの色設定」、書式要素名「Tone」
b)[書式要素値設定テーブル]⇒機能グループ「セルの色設定」、属性グループ「赤色」、
c)書式要素値「#FF0000」
ということになり、書式情報『「Tone」=「#FF0000」』と表すことが可能となる。
【0047】
同様にして、『セルの色が赤色』という書式情報を、表計算ソフトウェアのバージョン「2003」を例にすると、書式情報『「Color」=「RED」』と表すことが可能となる。
【0048】
(C)[ソフトウェア情報登録テーブル]について(図2−C参照)
(1)テーブル名[ソフトウェア情報登録テーブル]と名づけられたテーブルは、クライアントPCの表計算ソフトウェア情報を登録するテーブルである。本テーブルは、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)およびバージョンを取得するために設けられたテーブルである。
【0049】
(2)テーブル項目
ソフトウェア情報登録テーブルのデータ項目は、<MACアドレス>,<ソフトウェア名>,<バージョン情報>からなっている。
【0050】
a)<MACアドレス>列には、クライアントPCを一意に識別する値であるMACアドレスが登録される。
b)<ソフトウェア名>列には、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)が登録される。
c)<バージョン情報>列には、クライアントPCにインストールされている表計算ソフトウェアのバージョンが登録される。
【0051】
(3)データ例
本例におけるソフトウェア情報登録テーブルは、MACアドレス「00-07−E9−4D−C2−AA」で一意に識別されるクライアントPCに、表計算ソフトウェア「ソフトウェアA」のバージョン「1」がインストールされ、MACアドレス「00-07−E9−4D−C2−BB」で一意に識別されるクライアントPCに、表計算ソフトウェア「ソフトウェアB」のバージョン「2000」がインストールされ、MACアドレス「00-07−E9−4D−C2−CC」で一意に識別されるクライアントPCに、表計算ソフトウェア「ソフトウェアC」のバージョン「2003」がインストールされていることを表している。
【0052】
図3は、本発明に係るバージョン検索手段106のバージョン情報取得処理部109が行う処理のフローチャートである。本処理は、クライアントPC102の起動時に自動実行される。
【0053】
(a)バージョン検索手段106のバージョン情報取得処理部109は、表計算ソフトウェア110のインストール情報を確認するために、クライアントPC102のレジストリ検索を実行する(ステップS301)。
【0054】
(b)表計算ソフトウェア110のインストール情報が、レジストリに存在するかの判定を行う(ステップS302)。
【0055】
(c)判定の結果、表計算ソフトウェアのインストール情報が、レジストリに存在する場合(ステップS302:Y)、[ソフトウェア情報登録テーブル]306(図2−C参照)の<MACアドレス>列に「クライアントPCのMACアドレス」、<ソフトウェア名>列に「表計算ソフトウェア名」、<バージョン情報>列に「表計算ソフトウェアのバージョン」を登録する(ステップS303)。
【0056】
(d)[ソフトウェア情報登録テーブル]306への登録後、または表計算ソフトウェアのインストール情報が、レジストリに存在しなかった場合(ステップS302:N)、バージョン検索手段106が指定する全てのレジストリ項目の検索を実行したかどうかの判定を行う(ステップS304)。
【0057】
(e)バージョン検索手段106が指定する全てのレジストリ項目の検索を行っていない場合(ステップS304:N)、次のレジストリ検索項目に移動し(ステップS305)、レジストリ検索の処理を繰り返す。なお、全てのレジストリ項目の検索を行った場合(ステップS304:Y)、本プログラムの処理を終了する。
【0058】
図4は、バージョン変換手段104の書式変換処理部107が行う処理のフローチャートであり、大きく分けて、(1)変換準備処理フェーズ、(2)変換処理(シート名設定)フェーズ、(3)変換処理(セル名設定)フェーズ、(4)変換処理(行表示設定)フェーズ、(5)変換処理(列表示設定)フェーズ、(6)変換処理(セルの値設定/設定情報)フェーズ、(7)全シートへの反映処理からなる。本処理は、サーバ101上に存在する表計算ファイル103を、クライアントPC102の表計算ソフトウェア110によって開く時に自動実行される。
【0059】
(1)変換準備処理フェーズ
本フェーズは、バージョン変換手段104の書式変換処理部107により行われるバージョン変換処理の準備処理フェーズである。
【0060】
(a)バージョン変換手段104の書式変換処理部107は、サーバ101上に存在する表計算ファイル103のバージョンを取得する(ステップS401)。
【0061】
(b)次に、[ソフトウェア情報登録テーブル]432(図2−C参照)の検索を行い、クライアントPC102の表計算ソフトウェア情報を取得する(ステップS402)。
【0062】
ここで、検索条件は<MACアドレス>列で、取得値は<ソフトウェア名>列および<バージョン情報>列のデータである。
【0063】
(c)クライアントPC102の表計算ソフトウェア110のバージョン情報を取得できたかどうかを判定する(ステップS403)。
【0064】
(d)クライアントPC102の表計算ソフトウェア110のバージョン情報を取得できた場合(ステップS403:Y)、サーバ101上に存在する表計算ファイル103のバージョンと同一かどうかの判定を行う(ステップS404)。
【0065】
(e)クライアントPC102の表計算ソフトウェア110のバージョン情報を取得できなかった場合(ステップS403:N)、または、クライアントPC102の表計算ソフトウェア110のバージョン情報とサーバ上に存在する表計算ファイルのバージョンが同一の場合(ステップS404:Y)、本プログラムの処理を終了する。
【0066】
(f)クライアントPC102の表計算ソフトウェア110のバージョン情報と、サーバ101上に存在する表計算ファイル103のバージョンが同一でない場合(ステップS404:N)、クライアントPC102の表計算ソフトウェア110のバージョン情報にて、クライアントPC102上に表計算ファイル105を新規作成する(ステップS405)。
【0067】
なお、以下の説明では便宜的に、サーバ101上に存在する表計算ファイル103を「変換前ファイル」、クライアントPC102上に新規作成された表計算ファイル105を「変換後ファイル」と称することとする。
【0068】
(2)変換処理(シート名設定)フェーズ
本フェーズは、バージョン変換手段104の書式変換処理部107により行われるシート名設定の変換処理のフェーズである。
【0069】
(a)サーバ101上に存在する「変換前ファイル」103よりシート名を取得する(ステップS406)。なお、バージョン「2000」のファイル内の任意シートより「人事」というシート名を取得する場合の例を『』内に示す。
【0070】
{処理1}[書式要素名設定テーブル]433(図2−A参照)の検索を行い、書式要素名を取得する。
【0071】
この場合の検索条件は、<機能グループ>列:「シート名設定」という値『「シート名設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』であり、取得値として、<書式要素名>列『「SheetName」』が得られる。
【0072】
{処理2}次に、サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。
【0073】
この場合の検索条件は、書式要素名:{処理1}で取得した書式要素名『「SheetName」』であり、取得値として、書式要素名「SheetName」に設定されている値『「人事」』が得られる(図5(a)参照)。
【0074】
(b)クライアントPC102上に作成された「変換後ファイル」105にシート名を設定する(ステップS407)。なお、バージョン「2003」のファイル内の任意シートに「人事」というシート名を設定する場合の例を『』内に示す。
【0075】
{処理3}[書式要素名設定テーブル]433の検索を行い、書式要素名を取得する。
【0076】
この場合の検索条件は、<機能グループ>列:「シート名設定」という値『「シート名設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素名>列『「WorkSheet」』が得られる。
【0077】
{処理4}次に、クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に値を設定する。
【0078】
この場合の検索条件は、書式要素名:上記{処理3}で取得した書式要素名『「WorkSheet」』であり、設定値として、{処理2}で取得した値『「人事」』が得られる。
【0079】
よって、変換処理(シート名設定)フェーズで行われる処理は、本例の場合、『「SheetName」=「人事」』⇒『「WorkSheet」=「人事」』となる(図5(b)参照)。
【0080】
(c)サーバ101上に存在する「変換前ファイル」103の全てのシート名に対して変換処理を実施したかの判定を行う(ステップS408)。全てのシート名に対して実施していない場合は、次のシート名に移動し(ステップS409)、変換処理(シート名設定)を繰り返し実行する。
【0081】
(3)変換処理(セル名設定)フェーズ
表計算ソフトウェアにはセルの範囲を指定する機能があり、変換前ファイルのうち、例えば、A4〜E11の範囲に対して「セルの範囲」というセル名を付与することができる。本フェーズは、バージョン変換手段104の書式変換処理部107により行われるセル名設定の変換処理のフェーズである。
【0082】
(a)サーバ101上に存在する「変換前ファイル」103よりセル名を取得する(ステップS410)。以下、バージョン「2000」のファイル内の任意セルより「セルの範囲」というセル名を取得する場合の例を『』内に示す。
【0083】
{処理1} [書式要素名設定テーブル] 434の検索を行い、書式要素名を取得する。
【0084】
この場合の検索条件は、<機能グループ>列:「セル名設定」という値『「セル名設定」』、<バージョン>列:「変換前ファイル」のバージョン 『「2000」』であり、取得値として、<書式要素名>列『「CellName」』が得られる。
【0085】
{処理2}サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。この場合の検索条件は、書式要素名:{処理1}で取得した書式要素名『「CellName」』であり、取得値として、書式要素名「CellName」に設定されている値『「セルの範囲」』が得られる。
【0086】
(b)クライアントPC102上に作成された「変換後ファイル」105にセル名を設定する(ステップS411)。以下、バージョン「2003」のファイル内の任意セルに「セルの範囲」というセル名を設定する場合の例を『』内に示す。
【0087】
{処理3} [書式要素名設定テーブル]434の検索を行い、書式要素名を取得する。
【0088】
この場合の検索条件は、<機能グループ>列:「セル名設定」という値『「セル名設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』
であり、取得値として、<書式要素名>列『「WorkCell」』が得られる。
【0089】
{処理4}クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に値を設定する。
【0090】
この場合の検索条件は、書式要素名:{処理3}で取得した書式要素名『「WorkCell」』であり、設定値として、{処理2}で取得した値『「セルの範囲」』が得られる。
【0091】
よって、変換処理(セル名設定)フェーズで行われる処理は、本例の場合、『「CellName」=「セルの範囲」』 ⇒ 『「WorkCell」=「セルの範囲」』となる。
【0092】
(c)サーバ101上に存在する「変換前ファイル」103の全てのセル名に対して変換処理を実施したかの判定を行う(ステップS412)。全てに実施していない場合は、次のセル名に移動し(ステップS413)、変換処理(セル名設定)を繰り返し実行する。
【0093】
(4)変換処理(行表示設定)フェーズ
本フェーズは、バージョン変換手段104の書式変換処理部107により行われる行表示設定の変換処理フェーズである。
【0094】
(a)サーバ101上に存在する「変換前ファイル」103より行表示属性を取得する(ステップS414)。なお、バージョン「2000」のファイル内の任意行が「非表示」であるという属性を取得する場合の例を『』内に示す。
【0095】
{処理1} [書式要素名設定テーブル]435の検索を行い、書式要素名を取得する。
【0096】
この場合の検索条件は、<機能グループ>列:「行表示設定」という値『「行表示設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』であり、取得値として、<書式要素名>列『「Line」』が得られる。
【0097】
{処理2}サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。
【0098】
この場合の検索条件は、書式要素名:{処理1}で取得した書式要素名『「Line」』であり、取得値として、書式要素値に設定されている値 =書式要素値『「NO」』が得られる。
【0099】
{処理3}[書式要素値設定テーブル]435の検索を行い、属性グループを取得する。
【0100】
この場合の検索条件は、<機能グループ>列:「行表示設定」という値『「行表示設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』、<書式要素値>列:{処理2}で取得した値『「NO」』であり、取得値として、<属性グループ>列『「非表示」』が得られる。
【0101】
(b)クライアントPC102上に作成された「変換後ファイル」105に行表示属性を設定する(ステップS415)。なお、バージョン「2003」のファイル内の任意行に「非表示」であるという属性を設定する場合の例を『』内に示す。
【0102】
{処理4}[書式要素名設定テーブル]435の検索を行い、書式要素名を取得する。
【0103】
この場合の検索条件は、<機能グループ>列:「行表示設定」という値『「行表示設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素名>列『「Column」』が得られる。
【0104】
{処理5}[書式要素値設定テーブル]435の検索を行い、書式要素値を取得する。
【0105】
この場合の検索条件は、<機能グループ>列:「行表示設定」という値『「行表示設定」』、<属性グループ>列:{処理3}で取得した値『「非表示」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素値>列『「FALSE」』が得られる。
【0106】
{処理6}クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に書式要素値を設定する。
【0107】
この場合の検索条件は、書式要素名:{処理4}で取得した書式要素名『「Column」』であり、設定値として、{処理5}で取得した値『「FALSE」』が得られる。
【0108】
よって、変換処理(行表示設定)フェーズで行われる処理は、本例の場合、『「Line」=「NO」』 ⇒ 『「Column」=「FALSE」』となる。
【0109】
(c)サーバ101上に存在する「変換前ファイル」103の全ての行に対して変換処理を実施したかの判定を行う(ステップS416)。全てに実施していない場合は、次の行に移動し(ステップS417)、変換処理(行表示設定)を繰り返し実行する。
【0110】
(5)変換処理(列表示設定)フェーズ
本フェーズは、バージョン変換手段104の書式変換処理部107により行われる列表示設定の変換処理フェーズである。
【0111】
(a)サーバ101上に存在する「変換前ファイル」103より列表示属性を取得する(ステップS418)。なお、バージョン「2000」のファイル内の任意列が「表示」であるという属性を取得する場合の例を『』内に示す。
【0112】
{処理1}[書式要素名設定テーブル]436の検索を行い、書式要素名を取得する。
【0113】
この場合の検索条件は、<機能グループ>列:「列表示設定」という値『「列表示設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』であり、取得値として、<書式要素名>列『「Sequence」』が得られる。
【0114】
{処理2}サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。
【0115】
この場合の検索条件は、書式要素名:{処理1}で取得した書式要素名『「Sequence」』であり、取得値として、書式要素名に設定されている値 =書式要素値『「YES」』が得られる。
【0116】
{処理3}[書式要素値設定テーブル]436の検索を行い、属性グループを取得する。
【0117】
この場合の検索条件は、<機能グループ>列:「列表示設定」という値『「列表示設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』、<書式要素値>列:{処理2}で取得した値『「YES」』であり、取得値として、<属性グループ>列『「表示」』が得られる。
【0118】
(b)クライアントPC102上に作成された「変換後ファイル」105に列表示属性を設定する(ステップS419)。なお、バージョン「2003」のファイル内の任意列に「表示」であるという属性を設定する場合の例を『』内に示す。
【0119】
{処理4}[書式要素名設定テーブル]436の検索を行い、書式要素名を取得する。
【0120】
この場合の検索条件は、<機能グループ>列:「列表示設定」という値『「列表示設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素名>列『「Row」』が得られる。
【0121】
{処理5}[書式要素値設定テーブル]436の検索を行い、書式要素値を取得する。
【0122】
この場合の検索条件は、<機能グループ>列:「列表示設定」という値『「列表示設定」』、<属性グループ>列:{処理3}で取得した値『「表示」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素値>列『「TRUE」』が得られる。
【0123】
{処理6}クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に書式要素値を設定する。
【0124】
この場合の検索条件は、書式要素名:{処理4}で取得した書式要素名 『「Row」』であり、設定値として、{処理5}で取得した値『「TRUE」』が得られる。
【0125】
よって、変換処理(列表示設定)フェーズで行われる処理は、本例の場合、『「Sequence」=「YES」』 ⇒ 『「Row」=「TRUE」』となる。
【0126】
(c)サーバ101上に存在する「変換前ファイル」103の全ての列に対して変換処理を実施したかの判定を行う(ステップS420)。全てに実施していない場合は、次の列に移動し(ステップS421)、変換処理(列表示設定)を繰り返し実行する。
【0127】
(6)変換処理(セルの値設定/設定情報)フェーズ
本フェーズは、バージョン変換手段104の書式変換処理部107により行われるセルの値設定の変換処理フェーズ(A)と設定情報の変換処理フェーズ(B)である。
【0128】
(A)変換処理(セルの値設定)のフェーズ
(a)サーバ101上に存在する「変換前ファイル」103よりセルの値を取得する(ステップS422)。なお、バージョン「2000」のファイル内の任意セルに設定されている「文字列」という値を取得する場合の例を『』内に示す。
【0129】
{処理1}[書式要素名設定テーブル]437の検索を行い、書式要素名を取得する。
【0130】
この場合の検索条件は、<機能グループ>列:「セルの値設定」という値『「セルの値設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』であり、取得値として、<書式要素名>列『「Variable」』が得られる。
【0131】
{処理2}サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。
【0132】
この場合の検索条件は、書式要素名:{処理1}で取得した書式要素名『「Variable」』であり、取得値として、書式要素名に設定されている値『「文字列」』が得られる(図5(a)の(ロ)参照)。
【0133】
(b)クライアントPC102上に作成された「変換後ファイル」105にセルの値を設定する(ステップS423)。なお、バージョン「2003」のファイル内の任意セルに「文字列」という値を設定する場合の例を『』内に示す。
【0134】
{処理3}[書式要素名設定テーブル] 437の検索を行い、書式要素名を取得する。
【0135】
この場合の検索条件は、<機能グループ>列:「セルの値設定」という値『「セルの値設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素名>列『「Value」』が得られる。
【0136】
{処理4}クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に値を設定する。
【0137】
この場合の検索条件は、書式要素名:{処理3}で取得した書式要素名『「Value」』であり、設定値として、{処理2}で取得した値『「文字列」』が得られる(図5(b)の(ロ)参照)。
【0138】
よって、ここまでの変換処理(セルの値設定)フェーズで行われる処理は、本例の場合、『「Variable」=「文字列」』 ⇒ 『「Value」=「文字列」』となる。
【0139】
(B)変換処理(セルの設定情報)
(a)サーバ101上に存在する「変換前ファイル」103よりセルの設定情報(属性)を取得する(ステップS424)。なお、バージョン「2000」のファイル内の任意セルの色が「赤色」であるという属性を取得する場合の例を『』内に示す。
【0140】
{処理5}[書式要素名設定テーブル]438の検索を行い、書式要素名を取得する。
【0141】
この場合の検索条件は、<機能グループ>列:任意の機能グループ名(※上記(2)〜(5)、(6)Aの各変換処理フェーズにて使用していない機能グループ名が[書式要素名設定テーブル]より順次読込まれる)『「セルの色設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』であり、取得値として、<書式要素名>列『「Tone」』が得られる。
【0142】
{処理6}サーバ101上に存在する「変換前ファイル」103の設定情報の検索を行い、書式要素名に設定されている値を取得する。
【0143】
この場合の検索条件は。書式要素名:{処理5}で取得した書式要素名『「Tone」』であり、取得値として、書式要素名に設定されている値=書式要素値『「#FF0000」』が得られる。
【0144】
{処理7}[書式要素値設定テーブル]438の検索を行い、属性グループを取得する。
【0145】
この場合の検索条件は、<機能グループ>列:{処理5}で利用した機能グループ名『「セルの色設定」』、<バージョン>列:「変換前ファイル」のバージョン『「2000」』、<書式要素値>列:{処理6}で取得した値『「#FF0000」』であり、取得値として、<属性グループ>列『「赤色」』が得られる。
【0146】
(b)クライアントPC102上に作成された「変換後ファイル」105にセルの設定情報(属性)を設定する(ステップS425)。
なお、バージョン「2003」のファイル内の任意セルの色に「赤色」であるという属性を設定する場合の例を『』内に示す。
【0147】
{処理8}[書式要素名設定テーブル]438の検索を行い、書式要素名を取得する。
【0148】
この場合の検索条件は、<機能グループ>列:{処理5}で利用した機能グループ名『「セルの色設定」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素名>列『「Color」』が得られる。
【0149】
{処理9}[書式要素値設定テーブル]438の検索を行い、書式要素値を取得する。
【0150】
この場合の検索条件は、<機能グループ>列:{処理5}で利用した機能グループ名『「セルの色設定」』、<属性グループ>列:{処理7}で取得した値『「赤色」』、<バージョン>列:「変換後ファイル」のバージョン『「2003」』であり、取得値として、<書式要素値>列『「RED」』が得られる。
【0151】
{処理10}クライアントPC102上に作成された「変換後ファイル」105の設定情報の検索を行い、書式要素名に書式要素値を設定する。
【0152】
この場合の検索条件は、書式要素名:{処理8}で取得した書式要素名『「Color」』であり、設定値として、{処理9}で取得した値『「RED」』が得られる。
【0153】
よって、ここまでの変換処理(セルの設定情報)フェーズで行われる処理は、本例の場合、『「Tone」=「#FF0000」』⇒『「Color」=「RED」』となる。
【0154】
(c)サーバ101上に存在する「変換前ファイル」103の全てのセルの設定情報(属性)に対して変換処理を実施したかの判定を行う(ステップS426)。全てに実施していない場合は、次のセルの設定情報(属性)に移動し(ステップS427)、変換処理(セルの設定情報)を繰り返し実行する。
【0155】
(d)サーバ101上に存在する「変換前ファイル」103の全てのセルに対して変換処理を実施したかの判定を行う(ステップS428)。全てに実施していない場合は、次のセルに移動し(ステップS429)、変換処理(セルの値設定/設定情報)を繰り返し実行する。
【0156】
(7)全シートへの反映処理
(a)サーバ101上に存在する「変換前ファイル」103の全てのシートに対して、上記(4)〜(6)の各変換処理を実施したかの判定を行う(ステップS430)。全てに実施していない場合は、次のシートに移動し(ステップS431)、上記(4)〜(6)の各変換処理を繰り返し実行する。
【0157】
(b)全てのシートに対して変換処理が実施済の場合は、本プログラムの処理を終了する。
【0158】
上述した実施例における書式要素の種類は一例を示したものであり、これ以外の書式要素を含んでいてもよく、また、上記実施例に示した書式要素を全て含まなくてもよいことはいうまでもない。
【0159】
また、上記実施例では、書式情報データベース108が、書式要素名設定テーブル(図2−A),書式要素値設定テーブル(図2−B),ソフトウェア情報登録テーブル(図2−C)の3つのテーブルからなる場合を説明したが、これに限るものではなく、同様な内容が含まれていれば如何なるデータベースの形態を有していてもよい。
【0160】
なお、図3のフローチャートに示したバージョン検索手段106(バージョン情報取得処理部109)で行われる処理や機能、および、図4−Aおよび図4−Bのフローチャートに示したバージョン変換手段104(書式変換処理部107)で行われる処理や機能は、クライアントPC102およびサーバ101を構成するコンピュータに内蔵されるCPUやメモリや各種レジスタなどのハードウェア資源を用いて、各手段(各処理部)で実施される処理に対応するプログラムを実行することによって実現される。また、これらのプログラムは、FD、CD−ROM、DVDなどのコンピュータ読み取り可能な記録媒体や、インターネットなどのネットワークを介して市場に広く流通させることができる。
【符号の説明】
【0161】
101:バージョン変換システムがインストールされているサーバ
102:クライアントコンピュータ(クライアントPC)
103:変換対象となる表計算ファイル(変換前ファイル)
104:バージョン変換手段(表計算ファイルの書式要素を変換する手段)
105:変換処理後の表計算ファイル(変換後ファイル)
106:バージン検索手段(クライアントPCにインストールされている表計算ソフトウェアを検索する手段)
107:書式変換処理部(表計算ファイルの書式要素を変換する処理部)
108:書式情報データベース(書式要素情報を管理するマスタおよびクライアントPCのソフトウェア情報を登録するデータベース)
109:バージョン情報取得処理部(クライアントPCにインストールされている表計算ソフトウェアのバージョンを取得する処理部)
110:表計算ソフトウェア(クライアントPCにインストールされている表計算ソフトウェア)
306,432:書式情報データベース(ソフトウェア情報登録テーブル)
433,434,437:書式情報データベース(書式要素名設定テーブル)
435,436,438:書式情報データベース(書式要素名設定テーブルおよび書式要素値設定テーブル)

【特許請求の範囲】
【請求項1】
サーバ上に存在する表計算ファイルをクライアントPC上にインストールされた表計算ソフトウェアのバージョンに自動変換するバージョン変換システムであって、
表計算ファイルのバージョン間の相違を吸収するための情報を管理する書式情報データベースと、
前記サーバ上に存在する表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを収集するバージョン検索手段と、
該バージョン検索手段で収集した前記表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式情報データベースの内容とに基づいて、前記サーバ上に存在する表計算ファイルを、該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンに自動変換するバージョン変換手段と、
を有することを特徴とするバージョン変換システム。
【請求項2】
前記書式情報データベースは、書式要素名(書式を規定する書式要素を一意に識別する名前)のバージョン間の相違を吸収するために設けられた、表計算ソフトウェアのバージョン毎に規定されている書式要素名を登録する書式要素名設定テーブルと、書式要素値(書式要素の属性を一意に識別する値)のバージョン間の相違を吸収するために設けられた、前記表計算ソフトウェアのバージョン毎に規定されている書式要素値を登録する書式要素値設定テーブルと、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)およびバージョンを登録するソフトウェア情報登録テーブルとからなり、
前記バージョン変換手段は、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記バージョン検索手段によって収集されたクライアントPCにインストールされている表計算ソフトウェアのバージョンと、前記書式要素名設定テーブルと前記書式要素値設定テーブルとソフトウェア情報登録テーブルの内容とに基づいて、前記サーバ上に存在する表計算ファイルを前記クライアントPCの表計算ソフトウェアのバージョンの表計算ファイルに自動変換することを特徴とする請求項1に記載のバージョン変換システム。
【請求項3】
サーバ上に存在する表計算ファイルをクライアントPC上にインストールされた表計算ソフトウェアのバージョンに自動変換するバージョン変換方法であって、
前記サーバ上に存在する表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンを収集するバージョン検索手順と、
該バージョン検索手段で収集した前記表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式情報データベースの内容とに基づいて、前記書式情報データベースを参照し、前記サーバ上に存在する表計算ファイルを、該表計算ファイルを参照するクライアントPCにインストールされている表計算ソフトウェアのバージョンに自動変換するバージョン変換手順と
を有することを特徴とするバージョン変換方法。
【請求項4】
前記書式情報データベースは、書式要素名(書式を規定する書式要素を一意に識別する名前)のバージョン間の相違を吸収するために設けられた、表計算ソフトウェアのバージョン毎に規定されている書式要素名を登録する書式要素名設定テーブルと、書式要素値(書式要素の属性を一意に識別する値)のバージョン間の相違を吸収するために設けられた、前記表計算ソフトウェアのバージョン毎に規定されている書式要素値を登録する書式要素値設定テーブルと、クライアントPCにインストールされている表計算ソフトウェアの種類(名前)およびバージョンを登録するソフトウェア情報登録テーブルとからなり、
前記バージョン変換手順は、前記バージョン検索手段によって収集されたクライアントPCにインストールされている表計算ソフトウェアのバージョンと、前記サーバ上に存在する表計算ファイルのバージョンおよび設定情報と、前記書式要素名設定テーブルと前記書式要素値設定テーブルとソフトウェア情報登録テーブルの内容とに基づいて、前記サーバ上に存在する表計算ファイルを前記クライアントPCの表計算ソフトウェアのバージョンの表計算ファイルに自動変換する手順であることを特徴とする請求項3に記載のバージョン変換方法。
【請求項5】
コンピュータに、請求項3または4に記載のバージョン変換方法における各手順を実行させるためのプログラム。

【図1】
image rotate

【図2−A】
image rotate

【図2−B】
image rotate

【図2−C】
image rotate

【図3】
image rotate

【図4−A】
image rotate

【図4−B】
image rotate

【図5】
image rotate


【公開番号】特開2011−203923(P2011−203923A)
【公開日】平成23年10月13日(2011.10.13)
【国際特許分類】
【出願番号】特願2010−69491(P2010−69491)
【出願日】平成22年3月25日(2010.3.25)
【出願人】(000152985)株式会社日立情報システムズ (409)
【Fターム(参考)】