IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社オービックの特許一覧

特許7584370情報処理装置、情報処理方法及び情報処理プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-07
(45)【発行日】2024-11-15
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
   G06F 3/0481 20220101AFI20241108BHJP
【FI】
G06F3/0481
【請求項の数】 5
(21)【出願番号】P 2021119673
(22)【出願日】2021-07-20
(65)【公開番号】P2023015721
(43)【公開日】2023-02-01
【審査請求日】2023-12-19
(73)【特許権者】
【識別番号】398040527
【氏名又は名称】株式会社オービック
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】吉井 聡
(72)【発明者】
【氏名】馬場 健人
(72)【発明者】
【氏名】上野 剛光
【審査官】冨永 昌彦
(56)【参考文献】
【文献】特開2004-094763(JP,A)
【文献】特開2018-037017(JP,A)
【文献】特開2003-216886(JP,A)
【文献】特開2002-358297(JP,A)
【文献】米国特許出願公開第2018/0067916(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/048 - 3/04895
G06F 9/044 - 9/0451
(57)【特許請求の範囲】
【請求項1】
複数のセルで形成されるテーブルにおける、前記セルの結合処理を行う情報処理装置であって、
前記セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出部と、
被結合セルに隣接する隣接セルに設定されている前記結合設定が、セル同士の結合を指示する結合設定である場合に、前記被結合セルに隣接する前記隣接セルを前記被結合セルに結合処理する結合処理部と、を備え、
前記結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、
前記結合処理部は、前記隣接セルに設定されている前記結合設定に含まれる前記真偽値が、前記隣接セルを使用することを示す「真」の値であった場合に、前記隣接セルを前記被結合セルに結合しない状態で前記隣接セルを表示し、前記隣接セルを使用しないことを示す「偽」の値であった場合に、前記隣接セルを前記被結合セルに結合処理すること
を特徴とする情報処理装置。
【請求項2】
前記検出部は、前記被結合セルの右隣に隣接する前記隣接セルに設定されている前記結合設定を検出し、
前記結合処理部は、前記被結合セルの右隣に隣接する前記隣接セルを、前記被結合セルに結合処理することで、前記被結合セルを行方向に沿った方向に拡大すること
を特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記検出部は、行方向に沿って並設されたセルを、順に前記隣接セルに設定して、前記結合設定の検出を行うこと
を特徴とする請求項2に記載の情報処理装置。
【請求項4】
複数のセルで形成されるテーブルにおける、前記セルの結合処理を行う情報処理装置における情報処理方法であって、
検出部が、前記セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出ステップと、
被結合セルに隣接する隣接セルに設定されている前記結合設定が、セル同士の結合を指示する結合設定である場合に、結合処理部が、前記被結合セルに隣接する前記隣接セルを前記被結合セルに結合処理する結合処理ステップと、を備え、
前記結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、
前記結合処理ステップでは、前記隣接セルに設定されている前記結合設定に含まれる前記真偽値が、前記隣接セルを使用することを示す「真」の値であった場合に、前記隣接セルを前記被結合セルに結合しない状態で前記隣接セルを表示し、前記隣接セルを使用しないことを示す「偽」の値であった場合に、前記隣接セルを前記被結合セルに結合処理すること
を特徴とする情報処理方法。
【請求項5】
複数のセルで形成されるテーブルにおける、前記セルの結合処理を行う情報処理装置の情報処理プログラムであって、
コンピュータを、
前記セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出部と、
被結合セルに隣接する隣接セルに設定されている前記結合設定が、セル同士の結合を指示する結合設定である場合に、前記被結合セルに隣接する前記隣接セルを前記被結合セルに結合処理する結合処理部として機能させ、
前記結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、
前記結合処理部は、前記隣接セルに設定されている前記結合設定に含まれる前記真偽値が、前記隣接セルを使用することを示す「真」の値であった場合に、前記隣接セルを前記被結合セルに結合しない状態で前記隣接セルを表示し、前記隣接セルを使用しないことを示す「偽」の値であった場合に、前記隣接セルを前記被結合セルに結合処理すること、
を特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
今日において、画面に表示された帳票上の入力領域(セル)のうち、所望セルに対して所望の数値等を入力して帳票等を作成する帳票作成アプリケーションプログラムが知られている。
【0003】
例えば、特許文献1(特開2002-358297号公報)には、簡単な操作で表組み指定を可能とした表組み作成プログラムが開示されている。この表組み作成プログラムの場合、セル文字列を並べた第1のテキストデータと、編集レイアウトソフトを用いて第1のテキストデータをテキスト部分に関して仕上がり体裁で組版したドキュメントデータと、セルの結合指定または背景色指定を意味するフラグ文字で構成したテキストデータの3種類のデータファイルを入力して、表として組版されたドキュメントデータを自動作成する。また、複雑な表組みの指定を、対話的な画面で確認しながら実行可能とする。これにより、作業者の負荷を軽減し、簡単な操作で表組み指定を可能とすることができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2002-358297号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来は、セルを動的に結合する場合に、結合するセルの数に応じた累積的なパターン数のセルの結合設定操作が必要となる問題があった。
【0006】
本発明は、上記に鑑みてなされたものであって、簡単な設定操作で所望のセル同士を結合可能とした情報処理装置、情報処理方法及び情報処理プログラムの提供を目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するために、本発明に係る情報処理装置は、複数のセルで形成されるテーブルにおける、セルの結合処理を行う情報処理装置であって、セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出部と、被結合セルに隣接する隣接セルに設定されている結合設定が、セル同士の結合を指示する結合設定である場合に、被結合セルに隣接する隣接セルを被結合セルに結合処理する結合処理部と、を備え、結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、結合処理部は、隣接セルに設定されている結合設定に含まれる真偽値が、隣接セルを使用することを示す「真」の値であった場合に、隣接セルを被結合セルに結合しない状態で隣接セルを表示し、隣接セルを使用しないことを示す「偽」の値であった場合に、隣接セルを被結合セルに結合処理する。
【0008】
また、上述した課題を解決し、目的を達成するために、本発明に係る情報処理方法は、複数のセルで形成されるテーブルにおける、セルの結合処理を行う情報処理装置における情報処理方法であって、検出部が、セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出ステップと、被結合セルに隣接する隣接セルに設定されている結合設定が、セル同士の結合を指示する結合設定である場合に、結合処理部が、被結合セルに隣接する隣接セルを被結合セルに結合処理する結合処理ステップと、を備え、結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、結合処理ステップでは、隣接セルに設定されている結合設定に含まれる真偽値が、隣接セルを使用することを示す「真」の値であった場合に、隣接セルを被結合セルに結合しない状態で隣接セルを表示し、隣接セルを使用しないことを示す「偽」の値であった場合に、隣接セルを被結合セルに結合処理する。
【0009】
また、上述した課題を解決し、目的を達成するために、本発明に係る情報処理プログラムは、複数のセルで形成されるテーブルにおける、セルの結合処理を行う情報処理装置の情報処理プログラムであって、コンピュータを、セルに対して設定されている、少なくともセル同士の結合を指定するための結合設定を検出する検出部と、被結合セルに隣接する隣接セルに設定されている結合設定が、セル同士の結合を指示する結合設定である場合に、被結合セルに隣接する隣接セルを被結合セルに結合処理する結合処理部として機能させ、結合設定は、セルを使用するか否かを示すセルの使用の真偽値を含み、結合処理部は、隣接セルに設定されている結合設定に含まれる真偽値が、隣接セルを使用することを示す「真」の値であった場合に、隣接セルを被結合セルに結合しない状態で隣接セルを表示し、隣接セルを使用しないことを示す「偽」の値であった場合に、隣接セルを被結合セルに結合処理する。
【発明の効果】
【0010】
本発明によれば、簡単な設定操作で所望のセル同士を結合できるという効果を奏する。
【図面の簡単な説明】
【0011】
図1図1は、テーブルの一例を示す図である。
図2図2は、テーブルの構成を説明するための図である。
図3図3は、テーブルの行及び列を説明するための図である。
図4図4は、結合したセルの表示形態を示す図である。
図5図5は、テーブルの各セルに対する設定データの一例を示す図である。
図6図6は、参考例となる仕訳入力システムにおける列スパンの設定を説明するための図である。
図7図7は、セルの位置が変更された実行画面を示す図である。
図8図8は、実施の形態の仕訳入力システムのシステム構成を示す図である。
図9図9は、アプリケーションWebサーバ装置の構成を示す図である。
図10図10は、業務支援プログラムによって表示され、開発ユーザにより操作される設定画面の一例を示す図である。
図11図11は、設定画面の明細部の分析2のセルに対して、「表示する」の表示結合設定がされた例を示す図である。
図12図12は、明細部の分析2のセルに対して、「左に結合させる」の表示結合設定がされた例を示す図である。
図13図13は、ヘッダ部の分析2のセルに対して、「左に結合させる」の表示結合設定がされた例を示す図である。
図14図14は、「条件に応じて制御」の表示結合設定を示す図である。
図15図15は、変数設定画面の一例を示す図である。
図16図16は、セルの動的結合設定の一例を示す図である。
図17図17は、セルの表示結合設定を「条件に応じて制御」に設定した場合に、開発データベースに保存される設定データの一例を示す図である。
図18図18は、動的状態制御を実行するためのプログラムの一例を示す図である。
図19図19は、起動イベントハンドラにおけるAPI呼び出し処理のフローチャートである。
図20図20は、起動イベントハンドラにおけるAPI呼び出し処理の詳細設定を示す図である。
図21図21は、API呼び出し処理のデータ構造を示す図である。
図22図22は、業務支援プログラムに基づくアプリケーションWebサーバ装置の動作の流れを示すフローチャートである。
図23図23は、定義済み起動イベントハンドラの実行処理の模式図である。
図24図24は、動的状態制御の評価処理を説明するための模式図である。
図25図25は、明細分析2セルの表示結合設定の動的状態制御の評価を行うフローチャートである。
図26図26は、各分析セルに設定されている変数の値の一例を示す図である。
図27図27は、評価部による、明細分析セル2の表示結合設定の評価動作を説明するための図である。
図28図28は、評価部による、明細分析セル3の表示結合設定の評価動作を説明するための図である。
図29図29は、評価部による、明細分析セル4の表示結合設定の評価動作を説明するための図である。
図30図30は、評価部による、明細分析セル5の表示結合設定の評価動作を説明するための図である。
図31図31は、演算部による列スパンの計算動作の流れを示すフローチャートである。
図32図32は、動的状態制御の評価処理で静的な設定値に置き換えられた全てのセルの表示結合設定を、行インデックス及び列インデックスの順に並べた図である。
図33図33は、図32に示した全てのセルのうち、同じ行のセル同士を順に並べた図である。
図34図34は、分析1のセルに対するセル結合処理を示す模式図である。
図35図35は、分析2のセルに対するセル結合処理を示す模式図である。
図36図36は、分析3のセルに対するセル結合処理を示す模式図である。
図37図37は、分析4のセルに対するセル結合処理を示す模式図である。
図38図38は、分析5のセルに対するセル結合処理を示す模式図である。
【発明を実施するための形態】
【0012】
以下、本発明に係る情報処理装置、情報処理方法及び情報処理プログラムを適用した実施の形態となる仕訳入力システムを、図面に基づいて詳細に説明する。なお、本実施形態により本発明が限定されるものではない。
【0013】
[概要]
まず、実施の形態となる仕訳入力システムでは、内部が格子状に分かれた表である「テーブル」を表示する。このテーブルは、「セル」と呼ばれる複数のマス目(分割領域)で形成されている。業務ユーザは、このセルに対して所望の文字及び数値等を入力し、仕訳帳等の作成を行う。
【0014】
図1は、テーブルの一例を示す図である。実施の形態の仕訳入力システムでは、開発ユーザにより、ローコード開発ツールに基づいて、図1(a)に示す設定画面が作成される。また、実施の形態の仕訳入力システムでは、実施の形態となる仕訳入力システムでは、設定画面に基づいて表示される、図1(b)に示す実行画面に対して、仕訳帳等の作成を行う業務ユーザにより所望の文字及び数値等が入力されることで、仕訳帳等が作成される。
【0015】
図2は、テーブルの構成を説明するための図である。このうち、図2(a)は、設定画面に表示されるテーブルの構成を、図2(b)は、実行画面に表示されるテーブルの構成を、それぞれ示している。この図2(a)及び図2(b)からわかるように、テーブルは、項目名を表示する領域であるヘッダ部、及び、データを表示する領域である明細部を備える。設定画面では1つ明細分の配置が定義される。「明細」は、一塊のデータを意味する。テーブルでは、同じ形をした(同じ名前の項目群を持つ)複数のデータ(明細)を、縦に並べて表示する。
【0016】
図3は、このようなテーブルの行及び列を説明するための図である。図3(a)は、セルを結合しない状態で1つの明細を作成した、3行5列のテーブルを示している。テーブルを縦横に分割した場合において、図3(b)に示すように水平方向の集合を「行(row)」といい、図3(c)に示すように垂直方向の集合を「列(column)」という。図3(d)は、1行目の1列目及び2列目のセルが結合された状態、1行目の3列目及び4列目のセルが結合された状態、2行目の1列目及び2列目のセルが結合された状態、及び、2行目の3列目及び4列目のセルが結合された状態を、それぞれ示している。
【0017】
図4は、結合したセルの表示形態を示す図である。このうち、図4(a)は、結合されたセルを備える設定画面の一例を示し、図4(b)は、結合されたセルを備える実行画面の一例を示している。この図4(a)及び図4(b)からわかるように、セルを結合するように設定することで、表示したい文字数が多い場合でも、文字列の全ての文字を結合したセル内に表示できる。
【0018】
図5は、テーブルの各セルに対する設定データの一例を示す図である。このうち、図5(a)は、ヘッダ部の各セルに対する設定データの一例を、図5(b)は、明細部の各セルに対する設定データの一例を、それぞれ示している。
【0019】
図5(a)に示すように、ヘッダ部のヘッダ総勘定科目セル~ヘッダ分析5セルに対しては、セル識別名、行インデックス、列インデックス、列スパン、及び、ラベルが設定される。また、図5(b)に示すように、明細部の明細総勘定科目セル~明細分析5セルに対しては、セル識別名、行インデックス、列インデックス及び列スパンが設定される。
【0020】
行インデックスは、何行目のセルであるかを表す数値である。例えばM行目(Mは自然数)の行に属するセルの行インデックスは「M」である。列インデックスは、何列目のセルであるかを表す数値である。N列目(Nは自然数)の列に属するセルの列インデックスは「N」である。列スパンは、 何列分を結合するかを表す数値である。
【0021】
なお、セルの結合は、列方向(水平方向)のセル同士を結合してもよいし、行方向(垂直方向)のセル同士を結合してもよい。以下、列方向(水平方向)のセル同士を結合することとして、説明を進める。
【0022】
[参考例の仕訳入力システムにおけるセルの動的結合動作]
実施の形態の仕訳入力システムに対して参考例となる仕訳入力システムのセルの動的結合動作を説明する。一例として、図1(b)に示した実行画面において、分析2~分析5は、個社要件によって「使用する」及び「使用しない」がそれぞれ変わることとする。個社要件とは、仕訳入力システムを導入する顧客企業毎の業務要件である。なお、ローコード開発ツールでは、広い業務要件をカバーする仕様を標準アプリケーションとして作成し、各社導入時に、この標準アプリケーションから不要なものを非表示にする場合もある。また、分析2~分析5は、複数の画面で使用される共通の項目とする。このため、分析2~分析5に対する「使用する」及び「使用しない」の設定は、各画面で設定するのではなく、共通に設定し、その設定値は、後述する業務データベース(図8の符号7)に記憶することが好ましい。
【0023】
しかし、参考例となる仕訳入力システムでは、分析2~分析5の4項目に対して、それぞれ「使用する」及び「使用しない」の2通りの設定を行っていた。このため、参考例となる仕訳入力システムは、図6に示すように、列スパンの設定に、2の4乗で計16通りの設定が必要となり、セルの結合に煩雑な設定操作を必要とする問題があった。
【0024】
また、図1(b)の実行画面の場合、分析2~分析5の4項目が、同じ行に並んで配置されているが、この分析2~分析5を、図7に示すように異なる行に配置変更する場合、セルの結合設定も、再設定する必要があった。
【0025】
このため、実施の形態の仕訳入力システムでは、業務支援プログラム(情報処理プログラムの一例)の開発時に開発ユーザが、「左のセルの列スパン」ではなく「未使用セルを左に結合させるか否か」のセルの結合設定を行う。これにより、セルの結合設定に要する手間を大幅に削減でき、簡単にセルの結合設定を行うことができる。また、実施の形態の仕訳入力システムは、条件に応じたセルの結合設定の設定制御(動的状態制御)も可能とする。
【0026】
垂直方向よりも水平方向にセルの領域を広げる方が、メリットが多い。また、未使用になる項目(セル)は右側に配置されることが多い。すなわち、どの企業でも使用される重要な項目(セル)は先頭(左)寄りに置かれることが多い。このため、未使用セルは、右方向でなく左方向のセルに結合させる。これにより、結合させるセルの方向が予め決まっているため、開発ユーザが、左右のいずれかのセルのうち、結合させるセルを、その都度指定する手間を省くことができる。
【0027】
[システム構成]
次に、実施の形態の仕訳入力システムのシステム構成を説明する。図8は、実施の形態の仕訳入力システムのシステム構成を示す図である。この図8に示すように、実施の形態の仕訳入力システムは、開発者用コンピュータ装置1、ローコード開発Webサーバ装置2、開発データベース3、アプリケーションWebサーバ装置4(情報処理装置の一例)、業務支援装置5、業務API(Application Programming Interface)6及び業務データベース7を有している。
【0028】
開発者用コンピュータ装置1は、Webブラウザ8により、例えばインターネット等の所定のネットワークを介してローコード開発Webサーバ装置2と通信を行う。ローコード開発Webサーバ装置2は、開発者用コンピュータ装置1に対してローコード開発ツールを提供している。開発者は、ローコード開発Webサーバ装置2で提供されるローコード開発ツールを用いて、開発者用コンピュータ装置1を操作して業務支援プログラムを作成する。これにより、開発者用コンピュータ装置1で作成された業務支援プログラムは、ローコード開発Webサーバ装置2を介して開発データベース3に保存される。
【0029】
アプリケーションWebサーバ装置4は、開発者用コンピュータ装置1で作成された業務支援プログラムの定義データを、開発データベース3から取得する。また、アプリケーションWebサーバ装置4は、取得した定義データに基づいて、業務支援プログラムを生成する。そして、アプリケーションWebサーバ装置4は、生成した業務支援プログラムに基づいて、業務APIを介して業務データベース7から業務データを取得し、実行画面を生成して業務支援装置5に提供する。また、アプリケーションWebサーバ装置4は、業務支援装置5により、実行画面を介して生成された業務データを、業務API6を介して業務データベース7に供給し、業務データの更新を行う。
【0030】
業務支援装置5は、Webブラウザ9及びインターネット等のネットワークを介してアプリケーションWebサーバ装置4と通信を行う。業務支援装置5は、業務支援プログラムに基づいてアプリケーションWebサーバ装置4により生成された実行画面を取得する。業務ユーザにより、実行画面を介して入力処理された業務データは、Webブラウザ9及びネットワークを介してアプリケーションWebサーバ装置4に送信される。これにより、アプリケーションWebサーバ装置4により、業務データベースの業務データが、業務支援装置5から受信した新たな業務データに更新される。
【0031】
(アプリケーションWebサーバ装置構成)
図9は、アプリケーションWebサーバ装置4の構成を示す図である。この図9に示すように、アプリケーションWebサーバ装置4は、記憶部12、制御部13、通信インターフェース部14を備えている。通信インターフェース部14は、例えばインターネット等の所定のネットワーク15を介して、ローコード開発Webサーバ装置2及び業務支援装置5に接続されている。また、通信インターフェース部14は、ネットワーク15及び業務API6を介して業務データベース7に接続されている。
【0032】
制御部13は、通信制御部21、定義取得部22及びアプリ生成部23を備えている。通信制御部21は、開発データベース3及び業務API6を介して業務データベース7と通信を行う。定義取得部22は、開発データベース3から定義データを取得する。アプリ生成部23は、取得された定義データに基づいて、業務支援プログラムを生成し、記憶部12に展開する。
【0033】
また、制御部13は、この業務支援プログラムを実行することで、実行部24、評価部25、演算部26及び画面生成部27の各機能を実現する。画面生成部27は、実行画面を生成して業務ユーザの業務支援装置5に提供する。実行部24は定義済み起動イベントハンドラを実行し、評価部25は動的状態制御の評価を行う。また、演算部26は、列スパンの計算を行う。このような各機能の動作は、図22のフローチャート等を用いて後述する。
【0034】
なお、制御部13の通信制御部21~画面生成部27は、業務支援プログラム等によりソフトウェアで実現してもよいし、全部又は一部を、IC(Integrated Circuit)等のハードウェアで実現してもよい。
【0035】
また、業務支援プログラムは、インストール可能な形式又は実行可能な形式のファイル情報でCD-ROM、フレキシブルディスク(FD)などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、業務支援プログラムは、CD-R、DVD(Digital Versatile Disk)、ブルーレイ(登録商標)ディスク、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、業務支援プログラムは、インターネット等のネットワーク経由でインストールするかたちで提供してもよい。また、業務支援プログラムは、機器内のROM等に予め組み込んで提供してもよい。
【0036】
また、一例ではあるが、実施の形態の仕訳入力システムの場合、業務支援プログラムをローコード開発ツールにより作成している。このローコード開発ツールには、
1.「事前にソースコードもしくはバイナリプログラムを生成したものを格納、提供する」タイプ、
2.「実行のタイミングで逐次的に解釈されランタイムコードとして実行される」タイプ、
の2種類のタイプが存在するが、業務支援プログラムの作成に、いずれのタイプのローコード開発ツールを用いてもよい。
【0037】
(業務支援プログラムの特徴)
次に、開発ユーザにより作成され開発データベースに保存される業務支援プログラムは、以下の特徴を有している。図10は、業務支援プログラムによって表示され、開発ユーザにより操作される設定画面の一例を示している。実施の形態の仕訳入力システムでは、この図10に示すように、各セルに対する表示結合設定(結合設定の一例)として、「表示する」、「単純非表示」、「左に結合させる」、及び、「条件に応じて制御」の設定を可能としている。
【0038】
図11は、明細部の分析2のセルに対して、「表示する」の表示結合設定がされた例を示している。図11(a)は、設定画面例である。この場合、図11(b)に示すように、設定対象となるセルを示す識別名が「明細分析2セル」で、表示結合設定が「表示する」であることを示す定義データが開発データベース3に記憶される。図11(c)は、アプリケーションWebサーバ装置4の画面生成部27が、この定義データに基づいて生成して業務支援装置5に提供することで表示される実行画面の一例を示している。この場合、実行画面には、図11(c)に示すように明細部の分析2セルが結合されることなく表示される。
【0039】
これに対して、図12は、明細部の分析2のセルに対して、「左に結合させる」の表示結合設定がされた例を示している。図12(a)は、設定画面例である。この場合、図12(b)に示すように、設定対象となるセルを示す識別名が「明細分析2セル」で、表示結合設定が「左に結合させる」であることを示す定義データが開発データベース3に記憶される。図12(c)は、アプリケーションWebサーバ装置4の画面生成部27が、この定義データに基づいて生成して業務支援装置5に提供することで表示される実行画面の一例を示している。この場合、業務ユーザが操作する実行画面には、図12(c)に示すように明細部の分析2セルが左のセルに結合され、分析2セルは表示されない。すなわち、明細部の分析1のセルの表示領域が右側に延長されるかたち(右側に長くなるかたち)で表示される(2列分の幅)。
【0040】
図13は、ヘッダ部の分析2のセルに対して、「左に結合させる」の表示結合設定がされた例を示している。図13(a)は、設定画面例である。この場合、図13(b)に示すように、設定対象となるセルを示す識別名が「ヘッダ分析2セル」で、表示結合設定が「左に結合させる」であることを示す定義データが開発データベース3に記憶される。図13(c)は、アプリケーションWebサーバ装置4の画面生成部27が、この定義データに基づいて生成して業務支援装置5に提供することで表示される実行画面の一例を示している。この場合、業務ユーザが操作する実行画面には、図13(c)に示すようにヘッダの分析2セルが左のセルに結合され、分析2セルは表示されない。すなわち、ヘッダ部の分析1のセルの表示領域が右側に延長されるかたち(右側に長くなるかたち)で表示される(2列分の幅)。
【0041】
(動的状態制御)
次に、図14は、「条件に応じて制御」の表示結合設定を示す図である。図14(a)に示すように、明細部の分析2のセルに対して「条件に応じて制御」の表示結合設定が選択されると、条件設定ボタン30が表示される。この条件設定ボタン30が開発ユーザによりクリック操作されると、表示結合設定の条件設定を行うための、図14(b)に示す条件設定画面が表示される。この条件設定画面は、変数の設定項目、真偽値の設定項目、真偽値を満たす場合の表示結合設定項目、及び、真偽値を満たさない場合(それ以外の場合)の表示結合設定項目を備えている。
【0042】
変数は、画面上には表示されないが、業務ユーザの操作に応じて値の更新又は参照が行われる、いわば画面の隠し項目となっている。ローコード開発Webサーバ装置2に記憶されているローコード開発ツールは、「変数の宣言」、「変数への値セットの定義(後述する起動イベントハンドラの実行動作で説明する)」、及び、「変数を条件判定項目として使用する」との各機能を有する。
【0043】
変数は、予め宣言されている変数の中から選択される。具体的には、図15は、変数設定画面の一例を示す図である。図15(a)の例は、「分析2を使用する」、「分析3を使用する」及び「分析4を使用する」の各変数が予め設定済みである例を示している。このような変数設定画面において、さらに変数を追加する場合、開発ユーザは、変数設定画面に表示されている追加ボタン31をクリック操作する。
【0044】
追加ボタン31がクリック操作されると、図15(b)に示すように、変数のタイプの選択メニューがプルダウン表示される。この変数のタイプの選択メニューの例は、文字、数値、真偽値、日時及び時刻の各タイプの選択メニューが表示された例である。この選択メニューから変数の所望のタイプが選択されると、図15(c)に「変数1」として示すように、新たな変数が追加される。この変数の識別名は、図15(d)に示すように変更可能となっている。図15(d)は、「変数1」との識別名を、「分析5を使用する」との識別名に変更した例である。図15(e)は、このように設定された変数のデータ構造を示している。この図15(e)に示すように、各変数は、例えば真偽値等の「タイプ」と「分析2を使用する」等の「識別名」とが関連付けされて記憶される。
【0045】
再度、図14(b)の説明に戻る。この図14(b)の例は、「分析2を使用する」との変数が選択され、真偽値が「真」の条件を満たす場合に、分析2のセルを「表示する」との表示結合設定がされている例である。また、図14(b)の例は、真偽値が「真」の条件を満たさない場合は、分析2のセルを「左に結合させる」との表示結合設定がされている例である。このような設定の場合、実行時において、業務データベース7の設定値「分析2を使用する」が真の場合、明細分析2セルは表示され、偽の場合、明細分析2セルは左のセルに結合される。
【0046】
同様に、図16(a)の例は、「分析3を使用する」との変数が選択され、真偽値が「真」の条件を満たす場合に、分析3のセルを「表示する」との表示結合設定がされている例である。また、図16(b)の例は、真偽値が「真」の条件を満たさない場合は、分析3のセルを「左に結合させる」との表示結合設定がされている例である。このような設定の場合、実行時において、業務データベース7の設定値「分析3を使用する」が真の場合、明細分析3セルは表示され、偽の場合、明細分析3セルは左のセルに結合される。
【0047】
同様に、図16(b)の例は、「分析4を使用する」との変数が選択され、真偽値が「真」の条件を満たす場合に、分析4のセルを「表示する」との表示結合設定がされている例である。また、図16(b)の例は、真偽値が「真」の条件を満たさない場合は、分析4のセルを「左に結合させる」との表示結合設定がされている例である。このような設定の場合、実行時において、業務データベース7の設定値「分析4を使用する」が真の場合、明細分析4セルは表示され、偽の場合、明細分析4セルは左のセルに結合される。
【0048】
同様に、図16(c)の例は、「分析5を使用する」との変数が選択され、真偽値が「真」の条件を満たす場合に、分析5のセルを「表示する」との表示結合設定がされている例である。また、図16(c)の例は、真偽値が「真」の条件を満たさない場合は、分析5のセルを「左に結合させる」との表示結合設定がされている例である。このような設定の場合、実行時において、業務データベース7の設定値「分析5を使用する」が真の場合、明細分析5セルは表示され、偽の場合、明細分析5セルは左のセルに結合される。
【0049】
実施の形態の仕訳入力システムは、このような「変数設定」、「真偽値設定」、「真偽値の設定を満たす場合の表示結合設定」、及び、「真偽値の設定を満たさない場合の表示結合設定」の、計4つの設定を行うだけで、図6を用いて説明した16通りの分岐を実現できる。このため、開発ユーザは、結合したいセルの数に応じた累積的なパターン(16通りのパターン)の煩雑な設定をする必要はなく、それぞれのセルに結合条件を指定するのみでよい。
【0050】
また、セルの配置変更があった場合にも再設定が必要ない。結合する左のセルに対して設定するのでなく、結合されるセルに対して条件を設定するので、セルの配置に依存しておらず、再設定の必要が無い。
【0051】
図17に、明細分析2~5セルの表示結合設定を「条件に応じて制御」に設定した場合に、開発データベース3に保存される設定データを示す。この場合、明細分析2セル、明細分析3セル等の識別名と、「条件に応じて制御」との表示結合設定の内容とが関連付けられて開発データベース3に保存される。
【0052】
図18は、このようなセルの条件に応じた結合制御である「動的状態制御」を実行するためのプログラムの一例である。この動的状態制御のプログラムは、上述の業務支援プログラムに含まれる。図18(a)~図18(d)は、一連のプログラムとなっている。図18(a)は、明細分析2セルに対する「動的状態制御」を実行するためのプログラムの一例である。この図18(a)において、条件式A1は、2値比較の条件式であり、「左辺A2」として例えば「変数値参照」等のタイプと、「分析2を使用する」等の変数識別名とが定義される。また、条件式A1では、「右辺A3」として例えば「固定値」等のタイプと、「真」等の真偽値の値とが定義される。さらに、条件式A1では、例えば「等しい」等の比較タイプが定義される。
【0053】
比較タイプは、「等しい」、「等しくない」、「>(大)」、「≧(以上)」、「<(未満)、「≦(以下)」等の中から選択されて定義される。比較タイプが「等しい」と定義されている場合において、左辺A2及び右辺A3が等しい場合は「真」、等しくない場合は「偽」の評価結果となる。
【0054】
また、式A4は、条件式A1が「真」の場合の静的設定値である。この図18(a)は、表示結合設定を「表示する」に設定した例である。式A5は、左辺A2の条件式が「偽」の場合の静的設定値である。この図18(a)は、表示結合設定を「左に結合させる」に設定した例である。
【0055】
図18(b)は、明細分析3セルに対する「動的状態制御」を実行するためのプログラムの一例、図18(c)は、明細分析4セルに対する「動的状態制御」を実行するためのプログラムの一例、図18(d)は、明細分析5セルに対する「動的状態制御」を実行するためのプログラムの一例である。明細分析3セル~明細分析5セルに対しても、上述の明細分析2セルと同様に「動的状態制御」を行うための条件式が定義される。
【0056】
次に、動的状態制御においては、例えば「分析2を使用する」又は「分析3を使用する」等の変数が参照されるが、この変数としては、業務データベース7の設定値をセットする必要がある。このため、開発ユーザは、業務データベース7の設定値が変数としてセットされるようにするために、図19に示す「API呼び出し処理」のフローを作成し、起動イベントハンドラとして登録する。この起動イベントハンドラの登録も、開発ユーザが開発時に行う。
【0057】
図20は、起動イベントハンドラにおけるAPI呼び出し処理の詳細設定を示す図である。この図20に示すように、API呼び出し処理は、業務API6により、分析2使用有無等のデータ名及び分析2を使用するかどうかの真偽値を含む設定値を業務データベース7から取得し、分析2を使用する等の変数にセットするよう設定する処理を行う。
【0058】
図21は、このようなAPI呼び出し処理のデータ構造を示す図である。この図21に示すように、API呼び出し処理では、分析2使用有無等の取得元データ名、セット先、変動等のタイプ、及び、分析2を使用する等の変数識別名が定義される。この起動イベントハンドラにより、業務データベース7の設定値を変数としてセットすることができる。
【0059】
[業務支援プログラムに基づくアプリケーションWebサーバ装置の動作]
次に、このように開発ユーザにより開発された業務支援プログラムに基づく、アプリケーションWebサーバ装置4の動作を説明する。図22は、業務支援プログラムに基づくアプリケーションWebサーバ装置4の動作の流れを示すフローチャートである。この図22のフローチャートにおいて、業務ユーザが業務支援装置5の実行画面の起動操作を行うと(ステップS1)、業務支援装置5のWebブラウザ9を介してアプリケーションWebサーバ装置4に、実行画面の起動操作が通知される。
【0060】
実行画面の起動操作が通知されると、図9に示すアプリケーションWebサーバ装置4の定義取得部22が、開発データベース2から定義データを読み出し、アプリ生成部23が、この定義データに基づいて業務支援プログラムを生成してRAM(Random Access Memory)等の記憶部12に展開する。そして、この業務支援プログラムを、制御部13が実行することで実現される実行部24が、「定義済み起動イベントハンドラ」を実行する(ステップS2)。
【0061】
具体的には、このステップS2における定義済み起動イベントハンドラの実行処理は、定義済み起動イベントハンドラに処理が登録されている場合、実行画面の起動時に、最初に実行される処理となっている。実行部24は、このステップS2の定義済み起動イベントハンドラの実行処理において、例えば業務データベース3の設定値を取得する業務API6を呼び出し、変数にセットする処理を行う。詳しくは、後述する。
【0062】
次に、ステップS3では、制御部13が業務支援プログラムを実行することで実現される評価部25(検出部の一例)が、各セルに定義された条件を評価し、動的な表示結合設定を静的な設定に変換する(動的状態制御の評価処理)。このステップS3の動的状態制御の評価処理は、動的状態制御が一つでも設定されている場合、実行画面の起動時に2番目の処理として実行される。詳しくは、後述する。
【0063】
次に、ステップS4では、制御部13が業務支援プログラムを実行することで実現される演算部26(結合処理部の一例)が、各セルの表示結合設定を元に列スパンを計算する。このステップS4の列スパンの計算処理は、実行画面の起動時に3番目の処理として実行される。詳しくは、後述する。
【0064】
次に、ステップS5では、制御部13が業務支援プログラムを実行することで実現される画面生成部27が、ステップS4の列スパンの計算処理に基づいて、セルが適切に結合された実行画面を生成する。この実行画面は、通信制御部21により、業務支援装置5に送信され、Webブラウザ9を介して表示部に表示される。これにより、業務ユーザによる実行画面の操作が可能となる。
【0065】
(定義済み起動イベントハンドラの実行処理)
次に、図23を用いて、上述のステップS2で説明した定義済み起動イベントハンドラの実行処理を説明する。ステップS2では、アプリケーションWebサーバ装置4の実行部24が、図23(a)に示すように、開発データベース3に登録済の起動イベントハンドラ定義を取得する。そして、実行部24は、読み取った起動イベントハンドラを実行する。これにより、図23(b)に示すように、業務API6を介して業務データベース7から、図17を用いて説明した表示結合設定の設定データが取得され、メモリ上の変数にセットされる。
【0066】
なお、業務データベース7の設定値は、業務を管理する「業務管理ユーザ」により、実施の形態の仕訳入力システムのシステム導入段階で設定される。
【0067】
(動的状態制御の評価処理)
次に、上述のステップS3で説明した動的状態制御の評価処理を説明する。ステップS3では、アプリケーションWebサーバ装置4の評価部25が、図24に示すように、事前に設定された動的状態制御の設定データを、開発データベース3から取得する。
【0068】
次に、評価部25は、読み込んだ設定データに基づいて、動的状態制御を評価し、セルの表示結合設定を静的な値に置き換える。動的状態制御が複数存在する場合は、全ての動的状態制御を順に評価する。図25は、1つの動的状態制御を評価する場合の評価動作の流れを示すフローチャートである。また、図25は、明細分析2セルの表示結合設定の動的状態制御の評価を行うフローチャートであり、図18(a)に示した条件式A1に基づく動作である。
【0069】
この図25のフローチャート及び図18(a)の条件式A1において、評価部25は、変数の「分析2を使用する(A2)」が、「真(A3)」と等しいか否かを判別する(ステップS11)。変数の「分析2を使用する(A2)」が、「真(A3)」と等しいと判別した場合(ステップS11:Yes)、評価部25は、ステップS12において、静的な表示結合設定は「表示する(A4)」とする。これに対して、変数の「分析2を使用する(A2)」が、「真(A3)」と等しくないと判別した場合(ステップS11:No)、評価部25は、ステップS13において、静的な表示結合設定は「左に結合させる(A5)」とする。評価部25は、動的状態制御が設定されている数だけ、図25に示すフローチャートの動作を繰り返し行う。
【0070】
例えば、分析2セル、分析3セル、分析4セル、分析5セルに、図14(b)及び図16(a)~図16(c)に例示したような動的状態制御が設定されており、各変数の値が、図26に示すように、「分析2を使用する→偽」、「分析3を使用する→真」、「分析4を使用する→偽」、「分析5を使用する→偽」であるとする。この場合において、評価部25は、図27のフローチャートに示すように、ステップS21で変数である「分析2を使用する」が、真偽値の「真」と等しいか否かを判別する。変数である「分析2を使用する」が、真偽値の「真」と等しいと判別した場合(ステップS21:Yes)、評価部25は、ステップS22において、静的な表示結合設定は「表示する」とする。
【0071】
これに対して、変数である「分析2を使用する」が、真偽値の「真」と等しくないと判別した場合(ステップS21:No)、評価部25は、ステップS23において、静的な表示結合設定は「左に結合させる」とする。図27(a)は、このような評価部25による動的状態制御の評価前の各セルの表示結合設定の状態を示し、図27(c)は、動的状態制御の評価後の各セルの表示結合設定の状態を示している。この図27(a)及び図27(c)を見比べて分かるように、評価前及び評価後で、明細分析セル2の表示結合設定の評価が「左に結合させる」の評価となっていることが分かる。
【0072】
続けて、図28(b)は、明細分析3セルの表示結合設定に対する動的状態制御の評価の流れを示すフローチャートである。この図28(b)のフローチャートにおいて、評価部25は、ステップS25において、変数である「分析3を使用する」が、真偽値の「真」と等しいか否かを判別する。変数である「分析3を使用する」が、真偽値の「真」と等しいと判別した場合(ステップS25:Yes)、評価部25は、ステップS26において、静的な表示結合設定は「表示する」とする。
【0073】
これに対して、変数である「分析3を使用する」が、真偽値の「真」と等しくないと判別した場合(ステップS25:No)、評価部25は、ステップS27において、静的な表示結合設定は「左に結合させる」とする。図28(a)は、このような評価部25による動的状態制御の評価前の各セルの表示結合設定の状態を示し、図28(c)は、動的状態制御の評価後の各セルの表示結合設定の状態を示している。この図28(a)及び図28(c)を見比べて分かるように、評価前及び評価後で、明細分析セル2の表示結合設定の評価が「左に結合させる」の評価となり、明細分析セル3の表示結合設定の評価が「表示する」の評価となっていることが分かる。
【0074】
続けて、図29(b)は、明細分析4セルの表示結合設定に対する動的状態制御の評価の流れを示すフローチャートである。この図29(b)のフローチャートにおいて、評価部25は、ステップS31において、変数である「分析4を使用する」が、真偽値の「真」と等しいか否かを判別する。変数である「分析4を使用する」が、真偽値の「真」と等しいと判別した場合(ステップS31:Yes)、評価部25は、ステップS32において、静的な表示結合設定は「表示する」とする。
【0075】
これに対して、変数である「分析4を使用する」が、真偽値の「真」と等しくないと判別した場合(ステップS31:No)、評価部25は、ステップS33において、静的な表示結合設定は「左に結合させる」とする。図29(a)は、このような評価部25による動的状態制御の評価前の各セルの表示結合設定の状態を示し、図29(c)は、動的状態制御の評価後の各セルの表示結合設定の状態を示している。この図29(a)及び図29(c)を見比べて分かるように、評価前及び評価後で、明細分析セル2の表示結合設定の評価が「左に結合させる」の評価となり、明細分析セル3の表示結合設定の評価が「表示する」の評価となり、明細分析セル4の表示結合設定の評価が「左に結合する」の評価となっていることが分かる。
【0076】
続けて、図30(b)は、明細分析5セルの表示結合設定に対する動的状態制御の評価の流れを示すフローチャートである。この図30(b)のフローチャートにおいて、評価部25は、ステップS35において、変数である「分析5を使用する」が、真偽値の「真」と等しいか否かを判別する。変数である「分析5を使用する」が、真偽値の「真」と等しいと判別した場合(ステップS35:Yes)、評価部25は、ステップS36において、静的な表示結合設定は「表示する」とする。
【0077】
これに対して、変数である「分析5を使用する」が、真偽値の「真」と等しくないと判別した場合(ステップS35:No)、評価部25は、ステップS37において、静的な表示結合設定は「左に結合させる」とする。図30(a)は、このような評価部25による動的状態制御の評価前の各セルの表示結合設定の状態を示し、図30(c)は、動的状態制御の評価後の各セルの表示結合設定の状態を示している。この図30(a)及び図30(c)を見比べて分かるように、評価前及び評価後で、明細分析セル2の表示結合設定の評価が「左に結合させる」の評価となり、明細分析セル3の表示結合設定の評価が「表示する」の評価となり、明細分析セル4の表示結合設定の評価が「左に結合する」の評価となり、明細分析セル5の表示結合設定の評価が「左に結合する」の評価となっていることが分かる。
【0078】
このように評価部25は、図22のフローチャートのステップS3において、各セルに設定されている動的状態制御を全て評価して静的な表示結合設定に置き換える。
【0079】
(列スパンの計算動作)
次に、図22のフローチャートのステップS4における列スパンの計算動作を説明する。図9に示す演算部26は、上述のステップS3における各セルの動的状態制御の評価で静的な設定値に置き換えられた表示結合設定に基づいて、列スパンを計算する。
【0080】
図31は、演算部26による列スパンの計算動作の流れを示すフローチャートである。この図31のフローチャートのステップS41では、演算部26が、上述の動的状態制御の評価処理で静的な設定値に置き換えられた全てのセルの表示結合設定を、図32に示すように行インデックス及び列インデックスの順に並べる。
【0081】
図32の例は、明細部の1行目の「総勘定科目」のセルは、1列目及び2列目の2セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の1行目の「取引先」のセルは、3列目及び4列目の2セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の1行目の「税区分」のセルは、5列目の1セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。
【0082】
同様に、図32の例は、明細部の2行目の「補助科目」のセルは、1列目及び2列目の2セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の2行目の「事業所」のセルは、3列目及び4列目の2セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の2行目の「金額」のセルは、5列目の1セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。
【0083】
同様に、図32の例は、明細部の3行目の「分析1」のセルは、1列目の1セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の3行目の「分析2」のセルは、2列目の1セル分の大きさで、表示結合設定は「左に結合させる」との設定となっている例を示している。図32の例は、明細部の3行目の「分析3」のセルは、3列目の1セル分の大きさで、表示結合設定は「表示する」との設定となっている例を示している。また、図32の例は、明細部の3行目の「分析4」のセルは、4列目の1セル分の大きさで、表示結合設定は「左に結合させる」との設定となっている例を示している。さらに、図32の例は、明細部の3行目の「分析5」のセルは、5列目の1セル分の大きさで、表示結合設定は「左に結合させる」との設定となっている例を示している。
【0084】
次に、演算部26は、ステップS42において、図32に示した全てのセルを、図33に示すように行インデックス、及び、列インデックスの順に並べる。図32に例示した全てのセルを、行インデックス及び列インデックスの順に並べると、図33に示すように1行目である行インデックス1の各セルは、「明細総勘定科目セル」、「明細取引先セル」、「明細税区分セル」の順に並べられ、一つの行グループを形成する。
【0085】
続けて、図32に例示した全てのセルを、行インデックス及び列インデックスの順に並べると、図33に示すように2行目である行インデックス2の各セルは、「明細補助科目セル」、「明細事業所セル」、「明細金額セル」の順に並べられ、一つの行グループを形成する。
【0086】
続けて、図32に例示した全てのセルを、行インデックス及び列インデックスの順に並べると、図33に示すように3行目である行インデックス3の各セルは、「明細分析1セル」、「明細分析2セル」、「明細分析3セル」、「明細分析4セル」及び「明細分析5セル」の順に並べられ、一つの行グループを形成する。
【0087】
次に、演算部26は、図31のフローチャートのステップS43及びステップS44において、ステップS51~ステップS56の処理を繰り返し実行する。すなわち、演算部26は、行グループの行インデックスが小さい順(ステップS43)、かつ、行グループ内のセルに対して、列インデックスが小さい順に(ステップS44)、ステップS51~ステップS56の処理を繰り返し実行する。
【0088】
具体的には、ステップS51では、演算部26が、処理を行うセルに対する表示結合設定が「左に結合させる」の設定となっているか否かを判別する。処理を行うセルに対する表示結合設定が「左に結合させる」の設定となっている場合(ステップS51:Yes)、演算部26は、次のセルに処理を移行する。これに対して、処理を行うセルに対する表示結合設定が「左に結合させる」の設定となっていない場合(ステップS51:No)、演算部26は、ステップS52において、現在、処理中のセル(被結合セルの一例)の一つ右のセルを「相手セル(隣接セルの一例)」とする。「一つ右のセル」は、基準となるセルと同一行グループ内で、基準となるセルより列インデックスが大きいセルのうち、最も列インデックスが小さいセルである。
【0089】
次に、演算部26は、ステップS53において、相手セルが存在するか否かを判別する。相手セルが存在しない場合(ステップS53:No)、演算部26は、次のセルの処理に移行すべく、処理をステップS51に戻す。
【0090】
相手セルが存在する場合(ステップS53:Yes)、演算部26は、ステップS54において、相手セルの表示結合設定が「左に結合させる」の設定となっているか否かを判別する。相手セルの表示結合設定が「左に結合させる」の設定となっていない場合(ステップS54:No)、演算部26は、次のセルの処理に移行すべく、処理をステップS51に戻す。
【0091】
これに対して、相手セルの表示結合設定が「左に結合させる」の設定となっている場合(ステップS54:Yes)、演算部26は、ステップS55において、相手セルの列スパンを処理中のセルの列スパンに加える。そして、演算部26は、ステップS56において、相手セルのさらも一つ右のセルを「相手セル」として、処理をステップS53に戻し、相手セルの表示結合設定が「左に結合させる」の設定であった場合に、相手セルの列スパンを、処理中にセルの列スパンに加える処理を繰り返し実行する。
【0092】
演算部26は、行グループの行インデックスが小さい順(ステップS43)、かつ、行グループ内のセルに対して、列インデックスが小さい順に(ステップS44)、このようなステップS51~ステップS56の処理を繰り返し実行する。これにより、表示結合設定が「左に結合させる」の設定となっているセルを、左のセルに結合させることができる。
【0093】
図34図38は、このようなセル結合処理の具体例を説明するための模式図である。このうち、図34は、分析1のセルに対するセル結合処理を示す模式図である。図34(a)において、分析1のセルは、図32に示したように3行目(行インデックス:3)の1列目(列インデックス:1)のセルであり、現在、処理を行おうとしているセル(現在、処理中のセル)である。また、図34(b)に示すように、分析1のセルの一つ右のセルである分析2のセルが相手セルとなる。
【0094】
現在、処理中の分析1のセルの行インデックスが「3」で列インデックスが「1」であるのに対し、相手セルの行インデックスは同じく「3」で列インデックスは「2」となる。この相手セルである分析2のセルの表示結合設定が「左に結合する」の設定となっているため、演算部26は、相手セルの列スパン「1」を、現在、処理中の分析1のセルの列スパンに加える。これにより、現在、処理中の分析1のセルの列スパンが「2」となり、分析1のセルの大きさが、行方向に沿って2列分の幅の大きさに拡大される。分析2のセルは、分析1のセルに隠れ、非表示となる。
【0095】
次に、演算部26は、図34(c)に示すように、分析2のセルの、さらに一つ右の分析3のセルを相手セルとする。分析2のセルが分析1のセルに結合されたため、現在、処理中のセルは、行インデックスが「3」で列インデックスが「1」の、分析1のセルである。これに対して、相手セルは、行インデックスが「3」で列インデックスが「3」の、分析3のセルである。この分析3のセルに対する表示結合設定は「表示する」である。このため、演算部26は、相手セル(分析3のセル)の表示結合設定が「左に結合させる」ではないため、処理中のセルを分析1のセルから次のセルである分析2のセルに移行する。
【0096】
次に、演算部26は、図35に示す分析2のセルを、現在、処理中のセルとしてセル結合処理を試みる。分析2のセルは、行インデックスが「3」で列インデックスが「2」のセルである。現在、処理中のセルとなる分析2のセルの表示結合設定は、「左に結合させる」である。この場合、分析2のセルを分析1のセルに結合する処理は、上述の分析1のセルの処理時に終了しているため、演算部26は、そのまま処理中のセルを分析2のセルから分析3のセルに移行する。
【0097】
次に、演算部26は、図36(a)に示す分析3のセルを現在、処理中のセルとしてセル結合処理を試みる。分析3のセルは、行インデックスが「3」で列インデックスが「3」のセルである。また、現在の各セルの結合状態は、分析1のセルに分析2のセルが結合された状態である。この状態で、演算部26は、図36(b)に示すように、現在、処理中の分析3のセルの一つ右のセルとなる分析4のセルを相手セルとする。現在、処理中の分析3のセルの行インデックスは「3」で、列インデックスは「3」である。また、相手セルとなる分析4のセルの行インデックスは「3」で、列インデックスは「4」である。
【0098】
図36(b)に示すように、分析4のセルである相手セルの表示結合設定は「左に結合させる」である。このため、演算部26は、分析4のセルである相手セルの列スパン「1」を、現在、処理中の分析3のセルの列スパンに加える。これにより、明細部の分析1のセルの列スパンが「2」、分析2のセルの列スパンが「1」、分析3のセルの列スパンが「2」、分析4のセルの列スパンが「1」、分析5のセルの列スパンが「1」となる。このため、分析1のセルの大きさが行方向に沿って2列分の幅の大きさに拡大されると共に、分析3のセルの大きさが行方向に沿って2列分の幅の大きさに拡大される。なお、分析2のセルは、分析1のセルに隠れ、非表示となる。また、分析4のセルも、分析3のセルに隠れ、非表示となる。
【0099】
続けて、演算部26は、図36(c)に示すように、分析4のセルの右隣りの分析5のセルを相手セルとする。現在、処理中の分析3のセルの行インデックスは「3」、列インデックスは「3」であり、相手セルとなった分析5のセルの行インデックスは「3」、列インデックスは「5」である。この場合に相手セルとなっている分析5のセルの表示結合設定も「左に結合させる」である。
【0100】
このため、演算部26は、分析5のセルである相手セルの列スパン「1」を、現在、処理中の分析3のセルの列スパンに、さらに加える。これにより、明細部の分析1のセルの列スパンが「2」、分析2のセルの列スパンが「1」、分析3のセルの列スパンが「3」、分析4のセルの列スパンが「1」、分析5のセルの列スパンが「1」となる。このため、分析1のセルの大きさが行方向に沿って2列分の幅の大きさに拡大されると共に、分析3のセルの大きさが行方向に沿って3列分の幅の大きさに拡大される。なお、分析2のセルは、分析1のセルに隠れ、非表示となる。また、分析4及び分析5のセルも、分析3のセルに隠れ、非表示となる。
【0101】
次に、演算部26は、図36(d)に示すように、分析5のセルの右隣りのセルを相手セルとする。しかし、図36(d)に示すように、分析5のセルの右隣りのセルは存在しない(相手セルが無い)。このため、演算部26は、処理を行うセルを次のセル(この場合は、分析4のセル)に移行させる。
【0102】
次に、演算部26は、図37に示す分析4のセルを現在、処理中のセルとしてセル結合処理を試みる。分析4のセルは、行インデックスが「3」で列インデックスが「4」のセルである。しかし、現在、処理中のセルである分析4のセルの表示結合設定は「左に結合させる」である。このため、演算部26は、処理を行うセルを次のセル(この場合は、分析5のセル)に移行させる。
【0103】
次に、演算部26は、図38に示す分析5のセルを現在、処理中のセルとしてセル結合処理を試みる。分析5のセルは、行インデックスが「3」で列インデックスが「5」のセルである。しかし、現在、処理中のセルとした分析5のセルの表示結合設定は「左に結合させる」である。このため、演算部26は、次のセルの処理(この場合は、次の行の最初のセル)に移行させる。
【0104】
なお、演算部26は、次のセルが存在しない場合は、次の行のセルの処理に移行し、次の行のセルが存在しない場合は、列スパンの計算処理を終了する。
【0105】
[実施の形態の効果]
以上の説明から明らかなように、実施の形態の仕訳入力システムは、それぞれのセルに結合条件を指定するだけで、テーブルのセルを動的に結合することができる。具体的には、「左のセルの列スパン」でなく「未使用セルを左に結合させるかどうか」を設定させる。これにより、結合したいセルの数に応じた累積的なパターン数の煩雑な設定を不要とすることができ、簡単な設定操作で所望のセル同士を結合させることができる。
【0106】
また、結合する左のセルに対して設定するのではなく、結合されるセルに対して条件を設定するため、セルの配置に依存することがなく、セルの配置変更があった場合でも、再設定を不要とすることができる。
【0107】
なお、上述の実施の形態の説明では、現在、処理中のセルの右隣に隣接する相手セルを、現在、処理中のセルに結合することとした。しかし、現在、処理中のセルの左隣の隣接セル、現在、処理中のセルの上に位置する隣接セル、又は、現在、処理中のセルの下に位置する隣接セルを相手セルとして、現在、処理中のセルに結合してもよい。いずれの場合も、上述と同様の効果を得ることができる。
【0108】
[国連が主導する持続可能な開発目標(SDGs)への貢献]
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び9に貢献することが可能となる。
【0109】
また、本実施形態により、廃棄ロス削減や、ペーパレス・電子化を推進することに寄与することができるので、SDGsの目標12、13及び15に貢献することが可能となる。
【0110】
また、本実施形態により、統制、ガバナンス強化に寄与することができるので、SDGsの目標16に貢献することが可能となる。
【0111】
[他の実施の形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
【0112】
例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、或いは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【0113】
また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。
【0114】
また、仕訳入力システムに関して、図示の各構成要素は機能概念的なものであり、必ずしも図示の如く物理的に構成されていることを要しない。
【0115】
例えば、アプリケーションWebサーバ装置4が備える処理機能、特に制御部13及び制御部13にて行われる各処理機能については、その全部又は任意の一部を、CPU(Central Processing Unit)および当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。なお、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じて業務支援装置1に機械的に読み取られる。すなわち、ROM又はHDD等の記憶部等には、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部3を構成する。
【0116】
また、このコンピュータプログラムである業務支援プログラムは、アプリケーションWebサーバ装置4に対して任意のネットワークを介して接続された他のサーバ装置に記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
【0117】
また、本実施形態で説明した処理を実行するための業務支援プログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical Disk)、DVD(Digital Versatile Disk)、及び、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。
【0118】
また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコード又はバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施形態に示した各装置において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【0119】
記憶部12は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、及び、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。
【0120】
また、アプリケーションWebサーバ装置4は、既知のパーソナルコンピュータ装置又はワークステーション等の情報処理装置で構成してもよく、また、任意の周辺装置が接続された当該情報処理装置で構成してもよい。また、情報処理装置は、本実施形態で説明した処理を実現させるソフトウェア(プログラム又はデータ等を含む)を実装することにより実現してもよい。
【0121】
さらに、装置の分散・統合の具体的形態は図示するものに限られず、その全部又は一部を、各種の付加等に応じて又は機能付加に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【産業上の利用可能性】
【0122】
本発明は、複数のセルで構成される帳票等の作成業務に有用である。
【符号の説明】
【0123】
1 開発用コンピュータ装置
2 ローコード開発Webサーバ装置
3 開発データベース
4 アプリケーションWebサーバ装置
5 業務支援装置
6 業務API
7 業務データベース
8 Webブラウザ
9 Webブラウザ
12 記憶部
13 制御部
14 通信インターフェース部
15 ネットワーク
21 通信制御部
22 定義取得部
23 アプリ生成部
24 実行部
25 評価部
26 演算部
27 画像生成部
31 追加ボタン
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36
図37
図38