JP7216377B2 - Online reporting system with query binding capabilities - Google Patents

Online reporting system with query binding capabilities Download PDF

Info

Publication number
JP7216377B2
JP7216377B2 JP2021093534A JP2021093534A JP7216377B2 JP 7216377 B2 JP7216377 B2 JP 7216377B2 JP 2021093534 A JP2021093534 A JP 2021093534A JP 2021093534 A JP2021093534 A JP 2021093534A JP 7216377 B2 JP7216377 B2 JP 7216377B2
Authority
JP
Japan
Prior art keywords
query
variable
grid
unit
binding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021093534A
Other languages
Japanese (ja)
Other versions
JP2022097358A (en
Inventor
ソン ミン ファン
ヨン ギュン イ
ジョン ス チョ
スン チョル イ
ミン ギュ キム
ハン ナ チェ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BI MATRIX CO Ltd
Original Assignee
BI MATRIX CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BI MATRIX CO Ltd filed Critical BI MATRIX CO Ltd
Publication of JP2022097358A publication Critical patent/JP2022097358A/en
Application granted granted Critical
Publication of JP7216377B2 publication Critical patent/JP7216377B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Artificial Intelligence (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

本発明は、クエリ文を介して、データベースから基礎データセットを取り込み、ウェブ上のレポートを作成して提供するとき、加工変数を設定してクエリ文を作成するように支援し、クエリ文において、加工変数を変数値でバインディングして、基礎データセットを取り込む、クエリバインディング機能を備えたオンラインレポート作成システムに関する。 The present invention retrieves a basic data set from a database through a query statement, and when creating and providing a report on the web, supports setting processing variables to create a query statement, and in the query statement, The present invention relates to an online reporting system with query binding functionality that binds process variables with variable values to populate underlying datasets.

また、本発明は、ウェブ上のレポート内にそれぞれのグリッドを作成するとき、エクセル(登録商標)ツールで作成するように支援し、エクセルツールの拡張モジュールにおいてクエリ文を作成するように支援し、エクセルツール上では、加工変数をシート上に設定し、ウェブ上には、該当加工変数をコントロールオブジェクトにマッピングさせるように支援する、クエリバインディング機能を備えたオンラインレポート作成システムに関する。 In addition, when creating each grid in a report on the web, the present invention supports creation with an Excel (registered trademark) tool, supports creation of a query sentence in an extension module of the Excel tool, The present invention relates to an online report creation system with a query binding function that supports setting processing variables on a sheet on an Excel tool and mapping the corresponding processing variables to control objects on the web.

一般に、サラリーマンの業務時間のうち、文書作成にかかる時間が全体業務に占める割合が高い。このような文書作成にかかる時間及び労力による費用の節減は、企業の生産性の側面では、必須に要求される部分である。このため、業務を統合的に管理して自動化するシステムが導入されている。 In general, the time spent on document creation accounts for a high proportion of the total work hours of office workers. Saving the time and effort required for document preparation is an essential part of corporate productivity. For this reason, a system that comprehensively manages and automates operations has been introduced.

一例として、ウェブ環境においてデータベースに問い合わせを実行して分析するレポーティング技術が提示されている[特許文献1]。この先行技術によれば、開発者がデータベースサーバのデータを用いて、ウィジウィグ(WYSIWYG)方式及びドラッグアンドドロップ(Drag&Drop)方式によりレポートを設計し、ウェブサーバは、設計されたレポートを登録され、レポートの設定内容に応じて、データベースサーバから必要なデータを取り込んでレポートを生成し、ユーザは、ウェブブラウザ上においてレポートを要請して閲覧する。 As an example, a reporting technology has been presented that performs analysis by querying a database in a web environment [Patent Document 1]. According to this prior art, a developer uses data in a database server to design a report by a WYSIWYG method and a drag-and-drop method, and a web server registers the designed report and reports necessary data is retrieved from the database server according to the setting contents of , and a report is generated, and the user requests and views the report on a web browser.

また、ウェブサービスを用いて、数か所に分散されたデータにアクセスし、統合して、レポートをリアルタイムに出力する技術も提示されている[特許文献2]。また、管理者が、データベースから受信したテーブル情報を、ウェブ上において選択して、マッピングテーブルを生成し、それを用いて、多様な様式のレポートを生成し、それをウェブ上において選択して確認する技術も提示されている[特許文献3]。 A technology has also been proposed that uses web services to access data distributed in several locations, integrate the data, and output a report in real time [Patent Document 2]. In addition, the administrator selects the table information received from the database on the web, generates a mapping table, uses it to generate various types of reports, and selects and confirms it on the web. [Patent Document 3].

また、ウェブ上において、エクセル形態でレポートを作成する技術も提示されている[特許文献4]。この先行技術は、エクセル形態のグリッドをウェブ上において直接作成しなければならず、ウェブ上におけるグリッド作業のインターフェースを、エクセルのインターフェースと同様に提供している。 A technique for creating a report in Excel form on the web has also been proposed [Patent Document 4]. This prior art requires the creation of Excel-style grids directly on the web and provides an interface for working with grids on the web similar to that of Excel.

しかしながら、ウェブ上において、エクセルのような多様なインターフェースを提供し難く、それぞれのサービス毎にインターフェース方式が異なるので、ユーザが、ウェブ上のインターフェースを不便に感じることがある。すなわち、オンライン上のインターフェースが、オフライン上のエクセルプログラムのインターフェースと同一ではない。 However, it is difficult to provide a variety of interfaces such as Excel on the web, and users may find the interface on the web inconvenient because each service has a different interface method. That is, the online interface is not the same as the offline Excel program interface.

ところが、ユーザは、自分のコンピュータ端末にインストールされて用いる(オフライン上の)エクセルツールのインターフェースにさらに慣れている。したがって、ユーザが、ウェブ上においてレポートを作成するとき、データ加工作業を、商用エクセルのようなオフライン上のアプリケーションで行えるように支援する技術が必要であった。 However, users are more accustomed to the interface of (offline) Excel tools installed on their computer terminals. Therefore, there is a need for a technology that supports users in creating reports on the web so that they can process data using offline applications such as commercial Excel.

韓国登録特許第10-0497811号公報Korean Patent No. 10-0497811 韓国登録特許第10-0697155号公報Korean Patent No. 10-0697155 韓国公開特許第10-2013-0126012号公報Korean Patent Publication No. 10-2013-0126012 韓国登録特許第10-1951719号公報Korean Patent No. 10-1951719

本発明の目的は、上述した問題点を解決するためのものであって、クエリ文を介して、データベースから基礎データセットを取り込み、ウェブ上のレポートを作成して提供するとき、加工変数を設定してクエリ文を作成するように支援し、クエリ文において、加工変数を変数値でバインディングして、基礎データセットを取り込む、クエリバインディング機能を備えたオンラインレポート作成システムを提供することである。 SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems. To provide an on-line report preparation system with a query binding function for supporting the preparation of a query statement by binding a processing variable with a variable value in the query statement to capture a basic data set.

また、本発明の他の目的は、ウェブ上のレポート内にそれぞれのグリッドを作成するとき、エクセルツールで作成するように支援し、エクセルツールの拡張モジュールにおいてクエリ文を作成するように支援し、エクセルツール上では、加工変数をシート上に設定し、ウェブ上には、該当加工変数をコントロールオブジェクトにマッピングさせるように支援する、クエリバインディング機能を備えたオンラインレポート作成システムを提供することである。 Another object of the present invention is to support creation of each grid in a report on the web using an Excel tool, support creation of a query statement in an extension module of the Excel tool, To provide an online report preparation system with a query binding function for setting processing variables on a sheet on an Excel tool and supporting mapping of the processing variables to control objects on the web.

前記目的を達成するために、本発明は、ユーザ端末のエクセルツールにインストールされる拡張モジュール及びサーバにより行われる、クエリバインディング機能を備えたオンラインレポート作成システムに関するものであって、ウェブ上のレポート画面において、グリッドオブジェクトを編集するが、一つのグリッドオブジェクトについての情報を一つのエクセル文書に保存し、拡張されたエクセルツールによるエクセル文書の編集により、グリッドオブジェクトを編集させるグリッド編集部と、ウェブ上のレポート画面において、コントロールオブジェクトを生成して編集するコントロール編集部と、前記エクセルツールが呼び出されると、前記グリッドオブジェクトにマッピングされるエクセル文書を生成するが、グリッドの形態を示すビュー領域シート、基礎データセットを保存するデータ領域シート、加工変数を設定するパラメータ領域シートで構成されるエクセル文書を生成するワークシート初期化部と、前記エクセル文書のパラメータ領域シート上において、加工変数を設定する加工変数設定部と、前記ワークシート上の加工変数をクエリ変数でマッピングしてクエリ文を作成するクエリ文作成部と、前記拡張モジュールに備えられ、前記クエリ文のクエリ変数を加工変数の変数値でバインディングする第2クエリバインディング部と、前記エクセル文書のワークシート上において、基礎データセットをロードするが、前記第2クエリバインディング部を介して前記クエリ文をバインディングし、バインディングされたクエリ文でロードするデータセットロード部と、前記サーバに備えられ、前記クエリ文のクエリ変数を加工変数の変数値でバインディングする第1クエリバインディング部と、グリッドオブジェクトにマッピングされるエクセル文書の内容により、該当グリッドオブジェクトの内容をウェブ上に表示するが、前記第1クエリバインディング部を介して前記クエリ文をバインディングし、バインディングされたクエリ文で基礎データセットをロードし、ロードされた基礎データセットから加工されたデータセットでグリッドオブジェクトの内容を表示するグリッド表示部と、グリッドオブジェクト及びコントロールオブジェクトで構成されたレポートをウェブ上において表示するが、前記グリッド表示部を介してグリッドオブジェクトを表示するレポートビューア部と、を含み、前記コントロール編集部は、前記コントロールオブジェクトに前記加工変数をマッピングさせ、前記第1クエリバインディング部は、前記変数値を、前記加工変数にマッピングされるコントロールオブジェクトの入力値に設定することを特徴とする。 To achieve the above object, the present invention relates to an online report creation system with a query binding function, performed by an extension module and a server installed in an Excel tool of a user terminal, wherein the report screen on the web , a grid editing unit that edits a grid object, saves information about one grid object in one Excel document, and edits the grid object by editing the Excel document with an extended Excel tool; In the report screen, a control editing unit that generates and edits a control object, and when the Excel tool is called, generates an Excel document mapped to the grid object, a view area sheet showing the form of the grid, basic data A worksheet initialization unit for generating an Excel document consisting of a data area sheet for storing sets and a parameter area sheet for setting processing variables; and a processing variable setting for setting processing variables on the parameter area sheet of the Excel document. a query statement creation unit that creates a query statement by mapping processing variables on the worksheet with query variables; a second query binding unit, on the worksheet of the Excel document, loading a basic dataset, binding the query statement through the second query binding unit, and loading the dataset with the bound query statement; a loading unit; a first query binding unit provided in the server that binds the query variables of the query statement with the variable values of the processing variables; Displaying on the web, but binding the query statement via the first query binding unit, loading a base dataset with the bound query statement, and grid with a dataset processed from the loaded base dataset a grid display unit for displaying object content; and a report viewer unit for displaying a report composed of grid objects and control objects on the web, but displaying the grid objects through the grid display unit, control The rule editing unit maps the processing variable to the control object, and the first query binding unit sets the variable value to an input value of the control object mapped to the processing variable. .

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記クエリ文におけるクエリ変数は、変数識別子及び加工変数の名前を結合して構成されて表記され、前記第1または第2クエリバインディング部は、クエリ文において変数識別子を認識すると、該当変数識別子に連結された文字列を加工変数として認識することを特徴とする。 In the online report creation system having a query binding function according to the present invention, a query variable in the query statement is expressed by combining a variable identifier and a name of a processing variable, and the first or second query The binding unit is characterized in that, upon recognizing a variable identifier in a query sentence, a character string concatenated with the corresponding variable identifier is recognized as a processing variable.

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記クエリ文においてクエリ変数を用いるとき、ライン削除機能を備え、該当クエリ変数に動的ライン削除機能を示す記号または文字を追加して区分し、前記第1または第2クエリバインディング部は、クエリ変数がライン削除機能を有する場合、該当加工変数の変数値がないか、空の値であれば、該当クエリ文から該当ラインを削除してバインディングすることを特徴とする。 Further, the present invention provides an online report creation system with a query binding function, wherein when a query variable is used in the query statement, the line deletion function is provided, and a symbol or character indicating the dynamic line deletion function is added to the query variable. and if the query variable has a line deletion function, the first or second query binding unit removes the corresponding line from the corresponding query statement if the corresponding processing variable has no variable value or has an empty value. It is characterized by deleting and binding.

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記クエリ文において条件により行われる行が異なる場合、該当行に注釈文を挿入し、挿入された注釈文にライン削除機能を有するクエリ変数を挿入し、条件により、クエリ変数の変数値を空の値で入力させるか、任意の値を入力させて、空の値であれば、該当行を削除させ、任意の値であれば、該当行が行われるように提供することを特徴とする。 Further, the present invention provides an online report creation system having a query binding function, in which when a line to be executed depending on a condition in the query statement is different, a comment statement is inserted into the corresponding line, and a line deletion function is applied to the inserted comment statement. Insert a query variable that has, depending on the condition, let the variable value of the query variable be entered with an empty value or enter an arbitrary value.If the value is empty, delete the corresponding row. is provided so that the corresponding line is performed.

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記加工変数設定部は、変数定義セルの名前を加工変数の名前に設定し、前記加工変数は、前記エクセル文書上においてグリッドに表示すべきテーブルのセル内の数式に用いられることを特徴とする。 Further, according to the present invention, in an online report creation system having a query binding function, the processing variable setting unit sets the name of a variable definition cell to the name of a processing variable, and the processing variable is a grid on the Excel document. It is characterized by being used for formulas in the cells of the table to be displayed in the

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記ビュー領域シート上のテーブルは、前記データ領域シート上に入力された基礎データセットを参照するが、前記ビュー領域シート上のテーブル内のセルの数式において、前記データ領域シートのセルを参照し、前記グリッド表示部は、基礎データセットをデータベースから取り込んで仮想シート上に保存し、前記グリッドオブジェクトのテーブルのそれぞれのセルを数式により反映するとき、参照するデータ領域シートのセルの内容の代わりに、仮想シート上の該当セルの内容で反映することを特徴とする。 Also, the present invention provides an online report creation system with a query binding function, wherein the table on the view area sheet refers to the basic data set entered on the data area sheet, but the table on the view area sheet The cell of the data area sheet is referenced in the formula of the cell in the table, the grid display unit retrieves the basic data set from the database and saves it on the virtual sheet, and converts each cell of the table of the grid object into the formula. , the content of the cell on the virtual sheet is used instead of the content of the cell on the data area sheet to be referenced.

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記編集結果保存部は、前記ビュー領域シート上におけるテーブルに対して、テーブルのヘッダ行構造、及びテーブルのデータ行構造をテンプレート情報として保存するが、テーブルのデータ行構造を1番目データ行の書式と数式を含む属性情報として保存し、該当テーブルのデータ行が交差行であれば、該当テーブルの1番目データ行と2番目データ行の書式を全て保存することを特徴とする。 Also, in the online report creation system having a query binding function according to the present invention, the editing result storage unit creates a table header row structure and a table data row structure for a table on the view area sheet as a template. Save as information, but save the data row structure of the table as attribute information including the format and formula of the first data row, and if the data row of the corresponding table is an intersection row, It is characterized by preserving all data row formats.

また、本発明は、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、前記グリッド編集部、コントロール編集部、レポートビューア部、グリッド表示部、第1クエリバインディング部は、前記サーバに備えられ、ワークシート初期化部、加工変数設定部、データセットロード部、編集結果保存部、第2クエリバインディング部、クエリ文作成部は、前記拡張モジュールに備えられることを特徴とする。 Further, according to the present invention, in an online report creation system having a query binding function, the grid editing section, the control editing section, the report viewer section, the grid display section, and the first query binding section are provided in the server, and the worksheet The initialization unit, the processing variable setting unit, the data set loading unit, the editing result storage unit, the second query binding unit, and the query statement creation unit are provided in the extension module.

上述したように、本発明によるクエリバインディング機能を備えたオンラインレポート作成システムによれば、加工変数を用いてクエリ文を作成させ、実行時、クエリ文の加工変数に変数値をバインディングすることにより、ユーザが、データベースから基礎データセットをさらに多様な条件で取り込み、これにより、データセットの条件に対するインタラクティブ機能をさらに容易に実現することができるという効果が得られる。 As described above, according to the online report creation system with the query binding function according to the present invention, a query sentence is created using a processing variable, and at the time of execution, by binding the variable value to the processing variable of the query sentence, The effect is that the user can retrieve the basic data set from the database with more diverse conditions, thereby more easily realizing an interactive function for the conditions of the data set.

また、本発明によるクエリバインディング機能を備えたオンラインレポート作成システムによれば、クエリ文の加工変数をウェブ上のコントロールオブジェクトにマッピングさせることにより、基礎データセットのクエリ条件をさらに容易に設定するインターフェースを提供することができるという効果が得られる。 In addition, according to the online report creation system with the query binding function according to the present invention, by mapping the processing variables of the query statement to control objects on the web, an interface is provided to more easily set the query conditions of the basic data set. It is possible to obtain the effect of being able to provide

本発明を実施するための全体システムを示す構成図である。1 is a configuration diagram showing an overall system for implementing the present invention; FIG. 本発明の一実施形態によるクエリバインディング機能を備えたオンラインレポート作成システムの構成を示すブロック図である。1 is a block diagram showing the configuration of an online report creation system with a query binding function according to one embodiment of the present invention; FIG. 本発明の一実施形態によるウェブ上においてレポート編集のためのインターフェース画面を例示した図である。FIG. 2 illustrates an interface screen for report editing on the web according to one embodiment of the present invention; 本発明の一実施形態によるウェブ上において編集されたレポートを例示した図である。FIG. 4 is an illustration of a report compiled on the web according to one embodiment of the present invention; 本発明の一実施形態による初期化されたエクセル文書を例示した図である。FIG. 3 illustrates an initialized Excel document according to one embodiment of the present invention; 本発明の一実施形態によるパラメータ領域シート上において加工変数を定義する画面を例示した図である。FIG. 4 illustrates a screen for defining process variables on a parameter area sheet according to one embodiment of the present invention; 本発明の一実施形態によるデータセットをロードする画面を例示した図である。FIG. 4 illustrates a screen for loading datasets according to one embodiment of the present invention. 本発明の一実施形態による基礎データセットがロードされたデータ領域シートの画面を例示した図である。FIG. 4 illustrates a screen shot of a data area sheet loaded with a foundational data set according to one embodiment of the present invention; 本発明の一実施形態によるエクセル文書のビュー領域シートの編集結果画面を例示した図である。FIG. 4 is a diagram illustrating an edit result screen of a view area sheet of an Excel document according to one embodiment of the present invention; 本発明の一実施形態によるピボットテーブルのテンプレート情報を示した例示図であって、ピボットテーブルに対する例示図である。FIG. 4 is an exemplary diagram showing template information of a pivot table according to an embodiment of the present invention, and is an exemplary diagram of the pivot table; 本発明の一実施形態によるピボットテーブルのテンプレート情報を示した例示図であって、テンプレート情報に対する例示図である。FIG. 4 is an exemplary view showing template information of a pivot table according to an embodiment of the present invention, and is an exemplary view of template information; 本発明の一実施形態による作成された一般のクエリ文に対する例示図である。FIG. 4 is an exemplary diagram of a general query sentence created according to an embodiment of the present invention; 本発明の一実施形態によるクエリ文の加工変数の種類を示す表である。4 is a table showing types of processing variables of a query sentence according to an embodiment of the present invention; 本発明の一実施形態による加工変数を用いたクエリ文に対する例示図である。FIG. 4 is an exemplary diagram of a query sentence using a processing variable according to an embodiment of the present invention; 本発明の一実施形態による動的ライン削除機能のクエリ文及びバインディングされたクエリ文を例示した図である。FIG. 4 illustrates query statements and bound query statements of the dynamic line deletion function according to an embodiment of the present invention; 本発明の一実施形態による一部の内容だけ異なる二つのクエリ文に対する例示コードである。FIG. 5 is example code for two query statements that differ only in some content according to an embodiment of the present invention; FIG. 従来技術によるプログラミング作業により二つのクエリ文を条件文で作成した例示コードである。FIG. 11 is an example code that creates two query statements with conditional statements by programming work according to the prior art; FIG. 本発明の第1実施形態による動的ライン削除機能によるクエリ文の条件文を例示したコードである。4 is code illustrating a conditional statement of a query statement by the dynamic line deletion function according to the first embodiment of the present invention; 本発明の第2実施形態によるクエリ文の条件文を例示したコードである。4 is code illustrating a conditional statement of a query statement according to the second embodiment of the present invention; 本発明の第2実施形態によるクエリ文の条件文を例示したコードである。4 is code illustrating a conditional statement of a query statement according to the second embodiment of the present invention; 本発明の第2実施形態によるクエリ文の条件文を例示したコードである。4 is code illustrating a conditional statement of a query statement according to the second embodiment of the present invention; 本発明の一実施形態による数式自動演算に対する例示図である。FIG. 4 is an exemplary diagram of automatic formula calculation according to an embodiment of the present invention;

以下、図面を参照して、本発明の実施のための具体的な内容について説明する。 Hereinafter, specific contents for carrying out the present invention will be described with reference to the drawings.

また、本発明を説明するにあたって、同一の部分に対しては、同一の符号を付け、その繰り返し説明を省略する。 Moreover, in describing the present invention, the same reference numerals are given to the same parts, and repeated description thereof will be omitted.

まず、図1を参照して、本発明を実施するための全体システムの構成について説明する。 First, referring to FIG. 1, the configuration of the entire system for carrying out the present invention will be described.

図1に示すように、本発明を実施するための全体システムは、ユーザ端末10にインストールされるエクセルツール20及び拡張モジュール60と、ウェブ上において、データセットによるレポート作成を支援する作成サーバ30と、データセットを保存するデータベースまたはDBサーバ40と、で構成される。ユーザ端末10及び作成サーバ30は、インターネット等のネットワーク80を介してデータ通信を行う。 As shown in FIG. 1, the overall system for carrying out the present invention includes an Excel tool 20 and an extension module 60 installed in a user terminal 10, and a creation server 30 that supports creation of a report based on a data set on the web. , and a database or DB server 40 for storing data sets. The user terminal 10 and the production server 30 perform data communication via a network 80 such as the Internet.

まず、ユーザ端末10は、パソコン(PC)、ノートパソコン、タブレットパソコン、ファブレット、PDA(Portable Digital Assistant)、スマートフォン等のコンピュータ機能を有するコンピュータ端末である。ユーザ端末10は、通信機能を備え、ネットワーク80を介して作成サーバ80とデータを送受信することができる。 First, the user terminal 10 is a computer terminal having computer functions, such as a personal computer (PC), a notebook computer, a tablet computer, a phablet, a PDA (Portable Digital Assistant), and a smart phone. The user terminal 10 has a communication function and can transmit and receive data to and from the creation server 80 via the network 80 .

また、ユーザ端末10は、エクセルツール20及び拡張モジュール60等のアプリケーションがインストールされて実行されてもよい。 Also, the user terminal 10 may have applications such as the Excel tool 20 and the extension module 60 installed and executed.

次に、エクセルツール20は、エクセル(マイクロソフト社のスプレッドシートソフトウェアの商標である。)機能を行うアプリケーションであって、ユーザ端末10にインストールされて駆動されるプログラムシステムである。 Next, the Excel tool 20 is an application that performs Excel (a trademark of Microsoft Corporation's spreadsheet software) function, and is a program system that is installed and driven in the user terminal 10 .

エクセルツール20は、通常のスプレッドシート機能を提供し、特に、ウィジウィグ(WYSIWYG)方式またはドラッグアンドドロップ(Drag&Drop)方式のインターフェースを提供する。すなわち、エクセルツール20は、画面上にエクセルシートを表示し、エクセルシート上において、通常のスプレッドシート作業を行うことができる機能を提供する。 The Excel tool 20 provides normal spreadsheet functionality and, in particular, provides a WYSIWYG or Drag&Drop interface. That is, the Excel tool 20 provides a function of displaying an Excel sheet on the screen and performing normal spreadsheet work on the Excel sheet.

また、エクセルツール20は、エクセルシート(またはワークシート)上において作成されたものを、アクセル文書で生成する。アクセル文書は、多数のワークシートで構成され、それぞれのワークシートは、シート上において作成されたオブジェクト、フォーマット、データ(またはセル/領域、セル書式、セル数式、セル値)等で構成される。 Also, the Excel tool 20 generates an accelerator document from what is created on an Excel sheet (or worksheet). An access document consists of a number of worksheets, each consisting of objects, formats, data (or cells/regions, cell formats, cell formulas, cell values), etc. created on the sheet.

好ましくは、エクセルツール20は、マイクロソフト社で製作したスプレッドシートアプリケーションであって、エクセルという商標を有する。 Preferably, the Excel tool 20 is a spreadsheet application manufactured by Microsoft Corporation and has the Excel trademark.

また、エクセルツール20は、拡張モジュール60を介してその機能が拡張される。このとき、機能が拡張されたエクセルツール20を、拡張されたエクセルツールと呼ぶことにする。 Also, the function of the Excel tool 20 is extended through the extension module 60 . At this time, the Excel tool 20 with extended functions is called an extended Excel tool.

次に、拡張モジュール60は、ユーザ端末10にインストールされ、エクセルツール20にプラグインタイプで付加されるプログラムシステムであって、データベースからデータセットをロードする機能、データセットの加工変数を設定する機能等を提供する。 Next, the extension module 60 is a program system installed in the user terminal 10 and added to the Excel tool 20 as a plug-in type, and has a function of loading a data set from a database and a function of setting processing variables for the data set. etc.

すなわち、拡張モジュール60は、エクセルツール20にプラグイン(plug-in)方式またはアドイン(add-in)方式で付加されて実行されるプログラムシステムである。特に、拡張モジュール60は、エクセルツール20の少なくとも一つのコマンド(以下、プラグインコマンド)で登録され、エクセルツール20において該当プラグインコマンドが呼び出されれば、実行される。一例として、エクセルシート上において、プラグインコマンドがメニュー上において登録され、メニューから該当コマンドが選択されると、拡張モジュール60が動作される。また他の例として、コントロールオブジェクトのイベント動作で登録され、該当イベントが発生すれば、拡張モジュール60が動作されてもよい。 That is, the extension module 60 is a program system that is added to the Excel tool 20 in a plug-in or add-in manner and executed. In particular, the extension module 60 is registered with at least one command (hereinafter referred to as a plug-in command) of the Excel tool 20 and executed when the corresponding plug-in command is called in the Excel tool 20 . As an example, on an Excel sheet, when a plug-in command is registered on a menu and the corresponding command is selected from the menu, the extension module 60 is operated. As another example, the extension module 60 may be registered as an event operation of the control object, and the extension module 60 may be operated when the corresponding event occurs.

特に、拡張モジュール60は、初期ワークシート生成機能、加工変数設定機能、データセットロード機能等を備え、それぞれの機能を呼び出すコマンドがエクセルツール20に登録される。 In particular, the extension module 60 has an initial worksheet generation function, a processing variable setting function, a data set loading function, etc., and commands for calling these functions are registered in the Excel tool 20 .

まず、拡張モジュール60は、エクセルツール20が呼び出されれば、エクセル文書において、ビュー領域(V)、データ領域(D)、パラメータ領域(P)を示すそれぞれのワークシートを生成する。 First, when the Excel tool 20 is invoked, the extension module 60 generates respective worksheets showing the view area (V), the data area (D), and the parameter area (P) in the Excel document.

ビュー領域のワークシート(ビュー領域シート)は、ウェブ上において、画面で表示すべきグリッドまたはテーブルの表示形態をデザインするワークシートである。 A view area worksheet (view area sheet) is a worksheet for designing the display form of a grid or table to be displayed on the screen on the web.

また、データ領域(D)のワークシート(以下、データ領域シート)は、データベースからロードするデータセットをそれぞれのセルから入力されて保存するワークシートである。このとき、データベースからロードするデータセットを基礎データセットと呼ぶことにする。 The worksheet of the data area (D) (hereinafter referred to as data area sheet) is a worksheet in which the data set loaded from the database is input from each cell and saved. At this time, the data set loaded from the database is called the basic data set.

一方、ビュー領域シートに表示されるデータセットは、基礎データセットを参照して加工されたデータセットである。したがって、ビュー領域シートに表示されるデータセットを加工データセットと呼ぶことにする。 On the other hand, the data set displayed on the view area sheet is the data set processed with reference to the basic data set. Therefore, the data set displayed on the view area sheet will be called the processed data set.

また、パラメータ領域(P)のワークシート(以下、パラメータ領域シート)は、データセットの加工変数を設定するワークシートである。加工変数は、一つのセルの名前に設定され、加工変数の変数値は、該当セル内の入力される値に設定される。 A worksheet of the parameter area (P) (hereinafter referred to as a parameter area sheet) is a worksheet for setting processing variables of the data set. A processing variable is set to the name of one cell, and a variable value of the processing variable is set to a value entered in the corresponding cell.

また、拡張モジュール60は、加工変数を設定する機能を提供する。このとき、加工変数の名前(変数名)は、セルの名前で定義されるので、該当セル(変数定義セル)に入力されるセル値が該当加工変数の変数値になる。したがって、エクセルツール20上において、加工変数は、セルの名前として用いられる。すなわち、加工変数の変数値は、該当加工変数の変数定義フィールド(セル)に入力された値である。 The extension module 60 also provides the ability to set machining variables. At this time, the name of the processing variable (variable name) is defined by the name of the cell, so the cell value input to the corresponding cell (variable definition cell) becomes the variable value of the corresponding processing variable. Therefore, on the Excel tool 20, the processing variables are used as cell names. That is, the variable value of the processing variable is the value entered in the variable definition field (cell) of the processing variable.

また、拡張モジュール60は、クエリ文を作成し、クエリ文により、データベースから基礎データセットをロードし、そのロード情報を保存する機能を支援する。また、拡張モジュール60は、基礎データセットのロード情報を保存する。基礎データセットのロード情報は、データベースに連結するためのDB連結情報、データベースにおいて実行すべきクエリ文(SQL等)で構成される。 The extension module 60 also supports the ability to create query statements, load underlying data sets from the database with the query statements, and save the load information. The extension module 60 also stores loading information for the underlying datasets. The load information of the basic data set is composed of DB connection information for connecting to the database and a query statement (SQL or the like) to be executed in the database.

次に、作成サーバ30は、ネットワーク80に連結された通常のサーバであって、ウェブ上におけるレポート作成を支援するが、データベース40から取り込んだデータセットを分析するレポートの作成を支援する。 Next, the production server 30, which is a conventional server coupled to the network 80, supports the production of reports over the web, but which assists in the production of reports analyzing data sets retrieved from the database 40. FIG.

ウェブ上におけるレポートは、加工されたデータセットを表示するグリッドオブジェクトと、データセットの加工変数を処理するコントロールオブジェクトと、で構成される。作成サーバ30は、グリッドオブジェクトとコントロールオブジェクトを作成するサービスを提供する。 A report on the web consists of a grid object that displays the processed data set and a control object that processes the processed variables of the data set. The creation server 30 provides services for creating grid objects and control objects.

まず、作成サーバ30は、拡張されたエクセルツール20を介してグリッドオブジェクトを生成または編集するように提供し、それぞれのグリッドオブジェクトに連動するエクセル文書を対応付けて、生成または保管する。すなわち、一つのグリッドオブジェクトを生成または編集するために、ユーザは、拡張されたエクセルツール20において生成または編集する。また、拡張されたエクセルツール20で生成または編集されたエクセル文書は保存されるが、該当グリッドオブジェクトに連動されて保管される。 First, the creation server 30 provides grid objects to be created or edited through the extended Excel tool 20, and associates and creates or stores Excel documents linked to each grid object. That is, the user creates or edits in the extended Excel tool 20 to create or edit one grid object. In addition, the Excel document created or edited by the extended Excel tool 20 is saved, but it is linked to the corresponding grid object and saved.

また、拡張されたエクセルツール20において保存する編集結果は、エクセル文書以外も、テンプレート、データセットロード情報等を含む。テンプレートは、エクセル文書のビュー領域シートについての情報を抽出して保存したデータ構造体であり、データセットロード情報は、DB連結情報、及びクエリ文等のデータベースからデータセット(基礎データセット)をロードするための情報である。 Editing results saved in the extended Excel tool 20 also include templates, data set load information, etc., in addition to Excel documents. A template is a data structure that extracts and saves information about the view area sheet of an Excel document. Data set load information loads a data set (basic data set) from a database such as DB connection information and query statements. It is information for

また、作成サーバ30は、拡張されたエクセルツール20によりエクセル文書の作成が完了すると、保存されたエクセル文書(またはテンプレート)を読み込み、エクセル文書に定義された内容により、グリッドオブジェクトを生成または修正する。 Further, when the creation of the Excel document is completed by the extended Excel tool 20, the creation server 30 reads the saved Excel document (or template) and creates or modifies the grid object according to the contents defined in the Excel document. .

このとき、作成サーバ30は、パラメータ領域シートに定義された加工変数を読み込み、加工変数で定義して設定する。すなわち、加工変数をコントロールオブジェクトに用いるように宣言する。 At this time, the creation server 30 reads the processing variables defined in the parameter area sheet, and defines and sets the processing variables. That is, it declares that the processing variable is used for the control object.

また、作成サーバ30は、該当エクセル文書におけるビュー領域シートのテーブル形態により、グリッドオブジェクトのグリッド形態を生成/編集し、基礎データセットを取り込んで該当グリッドに反映する。特に、作成サーバ30は、クエリ文の加工変数をバインディングしてデータベースからデータセット(基礎データセット)を取り込む。 Also, the creation server 30 generates/edits the grid form of the grid object according to the table form of the view area sheet in the relevant Excel document, imports the basic data set, and reflects it on the relevant grid. In particular, the creation server 30 binds the processing variables of the query statement and retrieves the data set (basic data set) from the database.

また、作成サーバ30は、コントロールオブジェクトを作成するようにインターフェースを提供する。コントロールオブジェクトは、ボタン、コンボボックス、チェックボックス、入力ボックス等のコマンドまたはデータを入力されるためのオブジェクトを含む。 The creation server 30 also provides an interface to create control objects. Control objects include objects for entering commands or data, such as buttons, combo boxes, check boxes, and input boxes.

作成サーバ30は、コントロールオブジェクトを加工変数にマッピングさせる。コントロールオブジェクトが加工変数にマッピングされると、該当コントロールオブジェクトの入力値が、該当加工変数の変数値に自動でマッピングされる。すなわち、作成サーバ30は、コントロールオブジェクトの入力値が更新(入力)されるイベントを感知すれば、マッピングされた加工変数の変数値を更新された(入力された)入力値でバインディングして、全てのオブジェクトを更新する。また、作成サーバ30は、クエリ文の加工変数を変数値でバインディングし、バインディングされたクエリ文でデータベースからデータセットを再度取り込んで更新する。 The production server 30 causes control objects to be mapped to processing variables. When the control object is mapped to the processing variable, the input value of the corresponding control object is automatically mapped to the variable value of the corresponding processing variable. That is, when the creation server 30 senses an event that the input value of the control object is updated (input), it binds the variable values of the mapped processing variables with the updated (input) input value, and all object. The creation server 30 also binds the processing variables of the query statement with variable values, and refetches and updates the data set from the database with the bound query statement.

次に、データベース40は、データセットを保存するための通常のデータベース(DB)であって、データを管理するためのDBMS(database management system)を備え、データセットの保存、削除、検索等の作業を、クエリ(またはクエリ文)を介して行う。特に、データベース40は、商用化されたデータベースであって、データセットを処理するための一般のクエリ機能を用いて、データクエリサービスを行う。 Next, the database 40 is a normal database (DB) for storing datasets, and is provided with a DBMS (database management system) for managing data. via a query (or query statement). In particular, database 40 is a commercial database that provides data query services using general query functions for processing data sets.

特に、データベース40は、ビッグデータを保存するデータベースである。また、好ましくは、データベース40は、リレーショナルデータベース(RDB)で構成される。 In particular, database 40 is a database that stores big data. Moreover, preferably, the database 40 is configured by a relational database (RDB).

また、データベース40は、作成サーバ30に直接連結されたデータベースで実現されてもよく、インターネット上において独立したDBサーバとして実現されてもよい。 Also, the database 40 may be implemented as a database directly linked to the creation server 30, or may be implemented as an independent DB server on the Internet.

特に、データベース40は、DBMSにより駆動される一つのサーバで実現されてもよい。すなわち、データベース40は、一つのサーバであって、作成サーバ30の要請により要請されたデータセットを閲覧/提供するサービスを提供する。したがって、データベースとDBサーバは、同じ参照番号を用いる。 In particular, database 40 may be implemented in a single server driven by a DBMS. That is, the database 40 is a server and provides a service of viewing/providing the data set requested by the production server 30 . Therefore, the database and DB server use the same reference number.

次に、図2を参照して、本発明のクエリバインディング機能を備えたオンラインレポート作成システムについて説明する。 Next, referring to FIG. 2, an online report creation system with the query binding function of the present invention will be described.

図2に示すように、本発明の一実施形態によるクエリバインディング機能を備えたオンラインレポート作成システム30は、ウェブ上において、レポート画面のデザインサービスを提供する画面編集部31と、グリッドを編集するグリッド編集部32と、コントロールオブジェクトを編集するコントロール編集部33と、グリッド及びコントロールオブジェクトで構成されたレポートをウェブ上において表示するレポートビューア部34と、エクセル文書またはテンプレートにより、グリッドオブジェクトの内容を表示するグリッド表示部35と、クエリ文をバインディングする第1クエリバインディング部36と、エクセル文書のワークシートを初期化するワークシート初期化部61と、加工変数を設定する加工変数設定部62と、データセットをロードするデータセットロード部63と、編集結果を保存する編集結果保存部64と、クエリ文を作成するクエリ文作成部65と、クエリ文をバインディングする第2クエリバインディング部66と、で構成される。また、必要なデータを保存するための保存部38をさらに含んで構成されてもよい。 As shown in FIG. 2, an online report creation system 30 with a query binding function according to an embodiment of the present invention includes a screen editor 31 that provides report screen design services and a grid editor that edits grids on the web. An editing unit 32, a control editing unit 33 for editing control objects, a report viewer unit 34 for displaying a report composed of grids and control objects on the web, and an Excel document or template for displaying the contents of grid objects. A grid display section 35, a first query binding section 36 that binds a query statement, a worksheet initialization section 61 that initializes a worksheet of an Excel document, a processing variable setting section 62 that sets processing variables, and a data set. , an edited result storage unit 64 that stores edited results, a query statement creation unit 65 that creates query statements, and a second query binding unit 66 that binds query statements. be. Also, the configuration may further include a storage unit 38 for storing necessary data.

このとき、画面編集部31、グリッド編集部32、コントロール編集部33、レポートビューア部34、グリッド表示部35、第1クエリバインディング部36は、作成サーバ30に備えられ、ワークシート初期化部61、加工変数設定部62、データセットロード部63、編集結果保存部64、クエリ文作成部65、第2クエリバインディング部66は、拡張モジュール60に備えられる。 At this time, the screen editing unit 31, the grid editing unit 32, the control editing unit 33, the report viewer unit 34, the grid display unit 35, and the first query binding unit 36 are provided in the creation server 30, and the worksheet initialization unit 61, A processing variable setting unit 62 , a data set loading unit 63 , an editing result storage unit 64 , a query sentence creating unit 65 and a second query binding unit 66 are provided in the extension module 60 .

まず、画面編集部31は、ウェブ上において、レポート画面のデザインサービスを提供する。 First, the screen editor 31 provides a report screen design service on the web.

ウェブ上におけるレポートは、加工されたデータセット(加工データセット)を表示するグリッドオブジェクトと、加工変数とマッピングされて加工変数値を入力されるコントロールオブジェクトと、で構成される。 A report on the web consists of a grid object that displays a processed data set (processed data set) and a control object that is mapped with a processed variable and receives a processed variable value.

図3に示すように、画面編集部31は、ウィジウィック(WYSIWYG)方式及びドラッグアンドドロップ(Drag&Drop)方式により、グリッドオブジェクトまたはコントロールオブジェクトを生成し、画面上に配置するように支援する。 As shown in FIG. 3, the screen editing unit 31 generates a grid object or control object by WYSIWYG method and drag & drop method, and assists in arranging it on the screen.

また、画面編集部31は、グリッドオブジェクトまたはコントロールオブジェクトに対して、グリッド編集部32またはコントロール編集部33により、細部的に編集するサービスを提供する。 Further, the screen editing section 31 provides a detailed editing service for the grid object or the control object by the grid editing section 32 or the control editing section 33 .

次に、グリッド編集部32は、グリッドオブジェクトを編集するが、一つのグリッドオブジェクトについての情報を一つのエクセル文書等に保存して管理し、拡張されたエクセルツール20によるエクセル文書の編集により、グリッドオブジェクトを編集する。 Next, the grid editing unit 32 edits the grid object, saves and manages information about one grid object in one Excel document or the like, and edits the Excel document using the extended Excel tool 20 to edit the grid object. Edit an object.

すなわち、グリッド編集部32は、それぞれのグリッドオブジェクトにマッピングされるエクセル文書等を生成または保管する。エクセル文書等(または編集結果情報)は、エクセル文書、テンプレート(グリッドテンプレート)、データセットロード情報等で構成される。テンプレート、データセットロード情報等を追加情報と呼ぶことにする。 That is, the grid editing unit 32 generates or stores an Excel document or the like mapped to each grid object. An Excel document or the like (or editing result information) is composed of an Excel document, a template (grid template), data set loading information, and the like. Templates, data set loading information, etc. are called additional information.

該当エクセル文書は、ビュー領域シート、データ領域シート、パラメータ領域シート等で構成され、グリッドオブジェクトの情報を入れたエクセルファイルである。テンプレート(またはグリッドテンプレート)は、ビュー領域シートのテーブル(またはグリッド)の形態、書式、数式等を保存するデータ構造体である。ビュー領域シートの内容をさらに速く解釈して用いるためである。また、データセットロード情報は、データベースに連結するためのDB連結情報、データベースにおいて実行すべきクエリ文(SQL等)で構成される。 The corresponding Excel document is an Excel file that includes a view area sheet, a data area sheet, a parameter area sheet, etc., and contains information on the grid object. A template (or grid template) is a data structure that stores the form, formatting, formulas, etc. of a table (or grid) in a view area sheet. This is to interpret and use the contents of the view area sheet more quickly. The data set load information is composed of DB connection information for connecting to the database, and query statements (SQL or the like) to be executed in the database.

特に、グリッド編集部32は、それぞれのグリッドオブジェクトに対する編集要請を受けると、該当グリッドオブジェクトにマッピングされた(連動された)エクセル文書等が存在するかを判断する。存在すれば、該当エクセル文書を開いて(open)、拡張されたエクセルツール20を実行させる。存在しなければ、新たなエクセル文書を生成し、生成されたエクセル文書を開いて拡張されたエクセルツール20を実行させる。このとき、拡張されたエクセルツール20またはワークシート初期化部61は、該当エクセル文書を初期化する。特に、ワークシート初期化部61により、初期ワークシートが生成して初期化される。 In particular, when receiving an edit request for each grid object, the grid editing unit 32 determines whether there is an Excel document or the like mapped (linked) to the grid object. If it exists, open the corresponding Excel document and execute the extended Excel tool 20 . If not, it creates a new Excel document and opens the created Excel document to run the extended Excel tool 20 . At this time, the extended Excel tool 20 or the worksheet initialization unit 61 initializes the corresponding Excel document. In particular, the worksheet initialization section 61 generates and initializes an initial worksheet.

また、グリッド編集部32は、拡張されたエクセルツール20により、エクセル文書の作成が完了すれば、保存されたエクセル文書等(または編集結果情報)を参照して、その内容によりグリッドオブジェクトを更新する。このとき、好ましくは、グリッド表示部35を介して、エクセル文書等の内容により、グリッドオブジェクトの内容を画面上に表示する。 Further, when the creation of the Excel document is completed by the extended Excel tool 20, the grid editing unit 32 refers to the saved Excel document or the like (or edit result information) and updates the grid object according to the contents. . At this time, preferably, the contents of the grid object are displayed on the screen via the grid display unit 35 according to the contents of an Excel document or the like.

次に、コントロール編集部33は、コントロールオブジェクトを編集するようにインターフェースを提供する。 Next, the control editor 33 provides an interface for editing control objects.

コントロールオブジェクトは、ボタン、コンボボックス、図形、テキストボックス等のウェブレポートを表現するためのオブジェクトである。特に、コントロールオブジェクトは、ボタン、コンボボックス、チェックボックス、入力ボックス等のコマンドまたはデータを入力されるためのオブジェクトを含む。このとき、入力されるコマンドまたはデータをコントロールオブジェクトの入力値と呼ぶことにする。 Control objects are objects for representing web reports such as buttons, combo boxes, graphics, and text boxes. In particular, control objects include objects for entering commands or data, such as buttons, combo boxes, checkboxes, input boxes, and the like. At this time, the input command or data will be called the input value of the control object.

コントロール編集部33は、グリッドオブジェクトのエクセル文書等から加工変数情報を読み込み、加工変数を宣言する(すなわち、加工変数で定義して設定する)。すなわち、グリッドオブジェクトのエクセル文書には、パラメータ領域シートに加工変数が宣言される。コントロール編集部33は、それぞれのグリッドオブジェクトのエクセル文書に保存された加工変数を読み込み、該当加工変数をコントロールオブジェクトにおいて用いるように宣言する。 The control editing unit 33 reads processing variable information from an Excel document or the like of the grid object, and declares processing variables (that is, defines and sets processing variables). That is, the Excel document of the grid object declares the processing variables in the parameter area sheet. The control editing unit 33 reads the processing variables saved in the Excel document of each grid object and declares the processing variables to be used in the control object.

また、コントロール編集部33は、コントロールオブジェクトを加工変数にマッピングさせる機能を提供する。すなわち、ユーザは、特定のコントロールオブジェクトに特定の加工変数をマッピングさせることができる。好ましくは、コントロールオブジェクトを加工変数の名前で定義することにより、加工変数とコントロールオブジェクトがマッピングされる。 The control editing unit 33 also provides a function of mapping control objects to processing variables. That is, the user can map specific processing variables to specific control objects. Preferably, the processing variables and control objects are mapped by defining the control object with the name of the processing variable.

コントロールオブジェクトが加工変数にマッピングされると、該当コントロールオブジェクトの入力値が、該当加工変数の変数値に自動でマッピングされる。 When the control object is mapped to the processing variable, the input value of the corresponding control object is automatically mapped to the variable value of the corresponding processing variable.

また、レポートビューア部34により、コントロールオブジェクトの入力値が更新(入力)されること(更新イベント)が感知されると、マッピングされた加工変数の変数値を更新された(入力された)入力値でバインディングして、全てのオブジェクトが更新される。また、更新イベントが感知されると、レポートビューア部34により、データセットロード情報のクエリ文を加工変数の変数値でバインディングし、バインディングされたクエリ文で基礎データセットを再度取り込む。 Further, when the report viewer unit 34 senses that the input value of the control object is updated (input) (update event), the variable value of the mapped processing variable is changed to the updated (input) input value. , all objects are updated. Also, when an update event is detected, the report viewer unit 34 binds the query statement of the data set load information with the variable value of the processing variable, and retrieves the basic data set again with the bound query statement.

次に、レポートビューア部34は、編集されたレポートを画面上に出力する。 Next, the report viewer section 34 outputs the edited report on the screen.

すなわち、レポートビューア部34は、コントロールオブジェクト及びグリッドオブジェクトの内容を画面上に出力し、コントロールオブジェクトにおいて、入力値の入力イベント(更新イベント)が発生すると、該当コントロールオブジェクトにマッピングされた加工変数の変数値を更新して、画面上の全てのオブジェクトを更新出力する。特に、マッピングされた加工変数の変数値でクエリ文がバインディングされ、バインディングされたクエリ文によりデータセットも更新される。すなわち、バインディングされたクエリ文でデータベースから基礎データセットを再度取り込んで更新する。 That is, the report viewer unit 34 outputs the contents of the control object and the grid object on the screen, and when an input event (update event) of an input value occurs in the control object, the variable of the processing variable mapped to the corresponding control object Updates values and updates all objects on the screen. Specifically, the query statement is bound with the variable values of the mapped processing variables, and the data set is also updated by the bound query statement. That is, the underlying data set is refetched from the database with the bound query statement and updated.

具体的に、レポートビューア部34は、それぞれのグリッドオブジェクトの内容を出力するが、該当グリッドオブジェクトのエクセル文書等に定義された内容を読み込んで出力する。このとき、レポートビューア部34は、グリッド表示部35を介して、エクセル文書等(テンプレート)の内容によりグリッドの形態を編集し、該当グリッドに加工データセットを反映して出力する。 Specifically, the report viewer unit 34 outputs the contents of each grid object, and reads and outputs the contents defined in the Excel document or the like of the grid object. At this time, the report viewer unit 34 edits the form of the grid according to the contents of the Excel document (template), etc., via the grid display unit 35, and outputs the processed data set in the corresponding grid.

また、レポートビューア部34は、コントロールオブジェクトの入力値が更新(入力)されるイベントを感知する。また、イベントが感知されると、マッピングされた加工変数の変数値を更新された(入力された)入力値でバインディングして、全てのオブジェクトを更新する。 Also, the report viewer unit 34 senses an event in which the input value of the control object is updated (input). Also, when an event is sensed, all objects are updated by binding variable values of mapped process variables with updated (entered) input values.

このとき、レポートビューア部34は、第1クエリバインディング部36を介して、クエリ文を加工変数の変数値でバインディングさせ、バインディングされたクエリ文により、基礎データセットを再度取り込んで更新する。 At this time, the report viewer unit 34 binds the query statement with the variable value of the processing variable via the first query binding unit 36, and refetches and updates the basic data set by the bound query statement.

好ましくは、レポートビューア部34は、グリッドを表示するビューアを備える。グリッドビューアは、ウェブ形式(HTML5.0以上)またはキャンバス(Canvas)によって、DOM(Document Object Model)に基づくコンポネントで構成される。したがって、遥かに速いレンダリング(Rendering)速度を支援する。 Preferably, report viewer portion 34 includes a viewer that displays a grid. The grid viewer is composed of components based on DOM (Document Object Model) in web format (HTML5.0 or higher) or Canvas. Therefore, it supports much faster rendering speed.

図4は、ウェブ上において、レポートを表示したことを例示している。 FIG. 4 illustrates displaying the report on the web.

次に、第1クエリバインディング部36は、コントロールオブジェクトにマッピングされた加工変数の変数値を、該当コントロールオブジェクトの入力値に設定し、クエリ文において、該当加工変数を変数値(または入力値)でバインディングして、クエリ文(バインディングされたクエリ文)を生成する。 Next, the first query binding unit 36 sets the variable value of the processing variable mapped to the control object to the input value of the corresponding control object, and sets the corresponding processing variable to the variable value (or input value) in the query statement. Binding to generate a query statement (bound query statement).

クエリ文のバインディングについては、以下において、第2クエリバインディング部66を説明しながらさらに具体的に説明する。第1クエリバインディング部36がクエリ文をバインディングする過程は、第2クエリバインディング部66のバインディング過程と同じである。 Query statement binding will be described in more detail below while describing the second query binding unit 66 . The process of binding the query sentence by the first query binding unit 36 is the same as the binding process of the second query binding unit 66 .

次に、ワークシート初期化部61は、エクセル文書のワークシートを初期化する。 Next, the worksheet initialization section 61 initializes the worksheet of the Excel document.

図5に示すように、ワークシート初期化部61は、エクセル文書において、ビュー領域(V)、データ領域(D)、パラメータ領域(P)を示すそれぞれのワークシートを生成する。 As shown in FIG. 5, the worksheet initializing unit 61 generates worksheets showing a view area (V), a data area (D), and a parameter area (P) in an Excel document.

ワークシート初期化部61は、エクセルツール20が呼び出されれば、実行される。 The worksheet initialization unit 61 is executed when the Excel tool 20 is called.

ビュー領域のワークシート(以下、ビュー領域シート)は、ウェブ上において、画面で表示すべきグリッドまたはテーブルの表示形態をデザインするワークシートである。ユーザは、ビュー領域シート上において、テーブル等をデザインする。デザインされたテーブル等は、グリッドオブジェクトの形態で用いられる。特に、ユーザは、エクセルツール20のインターフェースを用いてテーブル等をデザインする。 A view area worksheet (hereinafter referred to as a view area sheet) is a worksheet for designing the display form of a grid or table to be displayed on the screen on the web. The user designs a table or the like on the view area sheet. A designed table or the like is used in the form of a grid object. In particular, the user uses the Excel tool 20 interface to design tables and the like.

また、ビュー領域のワークシート上において、テーブル内のそれぞれの領域またはセルは、データ領域シートのセルまたは加工変数のセルを参照する。すなわち、ユーザは、エクセルツール20上において、エクセル機能を活用してビュー領域シートを作成する。このとき、テーブルのそれぞれのセルまたは領域には、直接数値が入力されるか、参照される他のセルが入力される。すなわち、セル/領域の参照方式は、直接セル(領域)の位置で入力されるか、セルの名前で入力される。加工変数は、加工変数のセルの名前で入力される。 Also, on the view area worksheet, each area or cell in the table references a cell in the data area sheet or a cell in the processing variable. That is, the user utilizes the Excel function on the Excel tool 20 to create a view area sheet. At this time, in each cell or area of the table, a numerical value is entered directly or another cell referred to is entered. That is, the cell/region reference method is entered directly by the position of the cell (region) or by the name of the cell. Process variables are entered with the name of the process variable cell.

また、ビュー領域に表示されるデータセットは、基礎データセットを加工した加工データセットである。 Also, the data set displayed in the view area is a processed data set obtained by processing the basic data set.

また、データ領域(D)のワークシート(以下、データ領域シート)は、クエリ文によりデータベースからロードするデータセットを、それぞれのセルに入力されて保存するワークシートである。このとき、データベースからロードするデータセットを基礎データセットと呼ぶことにする。 The worksheet of the data area (D) (hereinafter referred to as data area sheet) is a worksheet in which a data set loaded from the database by a query statement is input to each cell and saved. At this time, the data set loaded from the database is called the basic data set.

また、パラメータ領域(P)のワークシート(以下、パラメータ領域シート)は、データセットの加工変数を設定するワークシートである。加工変数は、一つのセルの名前に設定され、加工変数の変数値は、該当セル内の入力される値に設定される。 A worksheet of the parameter area (P) (hereinafter referred to as a parameter area sheet) is a worksheet for setting processing variables of the data set. A processing variable is set to the name of one cell, and a variable value of the processing variable is set to a value entered in the corresponding cell.

ワークシート初期化部61は、パラメータ領域シート上に、加工変数を定義するテーブルを生成する。加工変数テーブルは、それぞれが加工変数を示す多数のレコードで構成される。 The worksheet initialization unit 61 creates a table defining machining variables on the parameter area sheet. The processing variable table consists of a number of records each representing a processing variable.

それぞれのレコードは、変数名(変数の名前)、変数定義、初期値、説明等のフィールドで構成される。変数名フィールドは、該当加工変数の名前(または変数名)を入力するセルであり、変数定義フィールドは、加工変数の名前(または変数名フィールド値)で自分のセルの名前を設定するセルである。また、初期値フィールド及び説明フィールドは、それぞれ加工変数の初期値や説明を入力するセルである。 Each record consists of fields such as variable name (variable name), variable definition, initial value, and description. The variable name field is a cell for entering the name (or variable name) of the corresponding processing variable, and the variable definition field is a cell for setting the name of your cell with the name of the processing variable (or variable name field value). . The initial value field and explanation field are cells for inputting initial values and explanations of the processing variables, respectively.

特に、変数定義フィールドは、自分のセルの名前が変数名(加工変数の名前)に設定されるので、変数定義フィールドに入力されるセルの値が該当加工変数の変数値になる。 In particular, in the variable definition field, the name of one's own cell is set as the variable name (name of the processing variable), so the cell value entered in the variable definition field becomes the variable value of the corresponding processing variable.

すなわち、ユーザは、エクセルツール20上において、加工変数の名前をセルの名前の形態で用いてもよい。例えば、エクセルツール20上において、セルの数式に加工変数の名前を記載すれば、該当セルの数式における加工変数は、加工変数の変数定義フィールド(セル)に設定された値で取り替えられる。したがって、エクセルツール20上において、該当加工変数の名前は、加工変数のように活用され得る。 That is, the user may use the names of the processing variables in the form of cell names on the Excel tool 20 . For example, if the name of a processing variable is entered in the formula of a cell on the Excel tool 20, the processing variable in the formula of the corresponding cell is replaced with the value set in the variable definition field (cell) of the processing variable. Therefore, on the Excel tool 20, the name of the corresponding processing variable can be used like a processing variable.

また、加工変数は、クエリ文のバインディング構文において、変数として活用されてもよい。このとき、加工変数の変数値は、該当加工変数の変数定義フィールド(セル)に入力された値である。 Also, the processed variable may be used as a variable in the binding syntax of the query statement. At this time, the variable value of the processing variable is the value entered in the variable definition field (cell) of the processing variable.

一方、ワークシート初期化部61は、既に保存されたデータセットロード情報が存在する場合、データセットロード情報を活用して、基礎データセットを再度取り込み、データ領域シートの内容を更新する。 On the other hand, if there is data set load information that has already been saved, the worksheet initialization unit 61 utilizes the data set load information to reload the basic data set and update the contents of the data area sheet.

このとき、ワークシート初期化部61は、クエリ文に加工変数により定義された場合、加工変数の変数値で該当加工変数をバインディングし、バインディングされたクエリ文により、データベースからデータセットを再度取り込み、基礎データセットを更新する。 At this time, if the query statement is defined by a processing variable, the worksheet initializing unit 61 binds the corresponding processing variable with the variable value of the processing variable, refetches the data set from the database by the bound query statement, Update the underlying dataset.

次に、加工変数設定部62は、パラメータ領域シート上において、加工変数を設定する。 Next, the processing variable setting unit 62 sets processing variables on the parameter area sheet.

図6に示すように、加工変数設定部62は、特定のレコードの変数名フィールドに変数名(変数の名前)が入力されると、該当レコードの変数定義フィールドのセルの名前を、入力された変数名(変数の名前)に設定する。 As shown in FIG. 6, when a variable name (variable name) is entered in the variable name field of a specific record, the processing variable setting unit 62 changes the name of the cell in the variable definition field of the record to the entered name. Set to variable name (name of variable).

一方、加工変数の名前(変数名)は、セルの名前で定義されるので、該当セルに入力されるセル値が、該当加工変数の変数値になる。すなわち、セルの名前が変数として活用される。 On the other hand, the name of the processing variable (variable name) is defined by the name of the cell, so the cell value input to the corresponding cell becomes the variable value of the corresponding processing variable. Namely, the name of the cell is used as a variable.

すなわち、それぞれの加工変数は、エクセルのネーム(Name)オブジェクトで管理され、該当ネームの値は、ユーザが、該当セルにおいて入力した値で取り替えられる。エクセルのネームは、エクセルにおいて、セルアドレスに対して固有の名前を定義し、該当名前を使うことができる。また、該当名前は、該当セル(名前に対応されるセルまたはセルアドレス)と対応付けてられ、該当名前は、最終的にセル値で取り替えられて計算される。 That is, each processing variable is managed by a Name object of Excel, and the value of the corresponding name is replaced with the value input by the user in the corresponding cell. The name of Excel can define a unique name for a cell address in Excel and use the corresponding name. Also, the corresponding name is associated with the corresponding cell (the cell corresponding to the name or the cell address), and the corresponding name is finally replaced with the cell value and calculated.

例えば、セルA1の名前を「住所」に定義し、セルA1に、「ソウル市鍾路区恵化洞90番地」という値を入力し、B1セルにおいて「=住所」という数式を使う。このとき、数式において「住所」は名前であり、該当名前は、該当セル(対応するセル)の値(「ソウル市鍾路区恵化洞90番地」)で取り替えられる。したがって、セルB1には、最終的に(「ソウル市鍾路区恵化洞90番地」)の値で計算される。 For example, define the name of cell A1 as "address", enter the value "90, Hyehwa-dong, Jongno-gu, Seoul" in cell A1, and use the formula "=address" in cell B1. At this time, the 'address' in the formula is the name, and the corresponding name is replaced by the value of the corresponding cell (corresponding cell) ('90, Hyehwa-dong, Jongno-gu, Seoul'). Therefore, cell B1 is finally calculated with the value (“90, Hyehwa-dong, Jongno-gu, Seoul”).

一方、加工変数は、クエリ文でも用いられるが、定義された加工変数の名前に変数識別子が付いて用いられる。 On the other hand, processed variables are also used in query statements, but are used with variable identifiers added to the names of the defined processed variables.

次に、データセットロード部63は、クエリ文作成部65を介してクエリ文を作成し、第2クエリバインディング部66を介してクエリ文をバインディングし、バインディングされたクエリ文により、データベースから基礎データセットをロードし、そのロード情報を保存するサービスを提供する。 Next, the data set loading unit 63 creates a query statement through the query statement creation unit 65, binds the query statement through the second query binding unit 66, and extracts basic data from the database based on the bound query statement. Provides a service that loads a set and saves its loading information.

このとき、好ましくは、図7に示すように、データセットロード部63は、データベース40に連結するためのキー等の連結情報を入力する機能またはインターフェースを提供する。ユーザは、キー等の連結情報を入力することにより、データベース40にアクセスする。 At this time, preferably, the data set loading unit 63 provides a function or interface for inputting connection information such as a key for connecting to the database 40, as shown in FIG. A user accesses the database 40 by entering linking information such as a key.

また、データセットロード部63は、クエリ文作成部65を介して、データベース40から基礎データセットを参照するクエリ文を作成する機能またはインターフェースを提供する。また、データセットロード部63は、第2クエリ文バインディング部66を介して、作成されたクエリ文をバインディングする。 The data set loading unit 63 also provides a function or interface for creating a query statement that refers to the basic data set from the database 40 via the query statement creation unit 65 . Also, the data set loading unit 63 binds the created query statement via the second query statement binding unit 66 .

また、図8に示すように、データセットロード部63は、バインディングされたクエリ文により、データベースから基礎データセットをロードして、データ領域シートに出力する。このとき、出力位置は、予め決められるか、ユーザにより設定されてもよい。このとき、好ましくは、該当データ領域シートの第1行にデータセットのフィールド名を出力し、その次の行からデータセットを出力する。 Further, as shown in FIG. 8, the data set loading unit 63 loads the basic data set from the database using the bound query statement and outputs it to the data area sheet. At this time, the output position may be predetermined or set by the user. At this time, preferably, the field name of the data set is output to the first line of the relevant data area sheet, and the data set is output from the next line.

また、データセットロード部63は、基礎データセットのロード情報を保存する。基礎データセットロード情報は、データベースに連結するためのDB連結情報、データベースにおいて実行すべきクエリ文(SQL等)で構成される。好ましくは、基礎データセットを出力すべき位置アドレスを示す出力位置情報をさらに含んでもよい。 Also, the dataset loading unit 63 stores load information of the basic dataset. The basic data set load information is composed of DB connection information for connecting to the database, and query statements (SQL, etc.) to be executed in the database. Preferably, it may further include output location information indicating a location address to which the basic data set should be output.

DB連結情報は、システム内のデータベース連結情報を管理し、DBサーバアドレス、該当情報にアクセスできるキー値等を含む。該当キーをもって、内部的にデータベース連結情報を抽出する。 The DB connection information manages database connection information in the system and includes a DB server address, a key value for accessing the corresponding information, and the like. Extract the database connection information internally with the corresponding key.

クエリ文は、データベースにおいて実行すべき通常のSQL構文である。 A query statement is a normal SQL statement to be executed on the database.

また、出力位置情報は、クエリを実行した結果を出力すべき位置に対するアドレス値を含む。一例として、「D1$A1」と表示され、これは、D1ワークシートのA1セルから出力するという意味である。 Also, the output location information includes an address value for the location where the result of executing the query should be output. As an example, "D1$A1" is displayed, which means to output from the A1 cell of the D1 worksheet.

次に、編集結果保存部64は、エクセルツール20の終了時、ワークシート上において作業された編集結果を保存する。特に、編集結果は、エクセル文書、テンプレート、データセットロード情報等である。 Next, when the Excel tool 20 is terminated, the editing result saving unit 64 saves the editing result of work on the worksheet. In particular, the edited results are Excel documents, templates, dataset load information, and the like.

エクセル文書は、エクセルツール20において作業した文書であり、文書自体として保存される。 An Excel document is a document worked on in the Excel tool 20 and is saved as the document itself.

上述のように、エクセル文書は、ビュー領域シート、データ領域シート、パラメータ領域シートで構成される。データ領域シートには、基礎データセットが入力される。このとき、ユーザは、ビュー領域シートにおいてグリッドのためのテーブルを編集するが、基礎データセットを参照して分析されたデータを、テーブルに表示されるように編集する。 As mentioned above, an Excel document consists of a view area sheet, a data area sheet, and a parameter area sheet. The data area sheet is populated with the underlying data set. At this time, the user edits the table for the grid in the view area sheet, but edits the analyzed data with reference to the underlying data set to be displayed in the table.

図9に示すように、ビュー領域シート内のテーブルにおいて、セルは、データ領域シートのデータ(またはセル)を参照する。ビュー領域シートのセルC5には、関数sumifを用いた数式を有する。このとき、関数sumifのそれぞれの変数のうち一部が、データ領域シート(D1)のセルまたは領域を参照する。 As shown in FIG. 9, in the table in the view area sheet, the cells refer to data (or cells) in the data area sheet. Cell C5 of the view area sheet has a formula using the function sumif. At this time, some of the respective variables of the function sumif refer to cells or areas of the data area sheet (D1).

ユーザは、データ領域シートを見ながら、データベースから取り込んだ基礎データセットの構造を明らかに見ることができる。したがって、ユーザは、データ領域シートのデータを用いて、ビュー領域シートにおいてテーブルを容易くデザインすることができる。 While viewing the data area sheet, the user can clearly see the structure of the underlying data set retrieved from the database. Therefore, the user can easily design the table in the view area sheet using the data in the data area sheet.

また、データセットロード情報は、データベースに連結するためのDB連結情報、データベースにおいて実行すべきクエリ文(SQL等)で構成される。 The data set load information is composed of DB connection information for connecting to the database, and query statements (SQL or the like) to be executed in the database.

また、テンプレート(またはグリッドテンプレート)は、エクセル文書内のビュー領域シートのテーブル(またはグリッド)の形態、書式、数式等を保存するデータ構造体である。エクセル文書におけるビュー領域シートの内容をさらに速く解釈して利用するためである。好ましくは、テンプレート情報は、JSON(JavaScript(登録商標) Object Notation)等の標準スクリプトデータ形式として保存する。 Also, a template (or grid template) is a data structure that stores the form, format, formulas, etc. of a table (or grid) of a view area sheet within an Excel document. This is to interpret and use the contents of the view area sheet in the Excel document more quickly. Preferably, the template information is saved as a standard script data format such as JSON (Javascript (registered trademark) Object Notation).

特に、ビュー領域シート上におけるテーブルのそれぞれのセルは、データ領域シート上における基礎データセットのセルを数式として参照する。したがって、テンプレート内のセル数式情報には、データ領域シート上のセル(または基礎データセット、基礎データセットのデータ)を参照する情報が含まれる。 Specifically, each cell of the table on the view area sheet references, as a formula, a cell of the underlying data set on the data area sheet. Therefore, the cell formula information in the template includes information referring to cells (or basic data sets, data of basic data sets) on the data area sheet.

一方、他の実施形態として、テンプレートを利用せず、直接エクセル文書を解釈して実現してもよい。この場合、テンプレートにより生成しない。 On the other hand, as another embodiment, an Excel document may be interpreted directly without using a template. In this case, it is not generated by the template.

特に、編集結果保存部64は、エクセル文書におけるビュー領域シート上のテーブルからグリッド構造情報を抽出し、テンプレート情報として保存する。 In particular, the editing result storage unit 64 extracts grid structure information from the table on the view area sheet in the Excel document and stores it as template information.

すなわち、ビュー領域シート上のテーブルから、それぞれのテーブルの構造、及びテーブルまたはそれぞれのセルの属性(書式、数式等)等のグリッド構造情報を抽出してテンプレートとして保存する。好ましくは、テンプレートは、JSON等の階層構造を有する形式で作成される。テーブル構造は、テンプレートの階層構造に変換され、テーブルのそれぞれのセルの属性は、テンプレートの階層構造のリーフノードの属性に変換される。それぞれのセルの属性は、セル値、書式、数式等で構成される。 That is, grid structure information such as the structure of each table and the attributes (format, formula, etc.) of each table or each cell is extracted from the table on the view area sheet and saved as a template. Preferably, the template is created in a format having a hierarchical structure such as JSON. The table structure is converted into a hierarchical structure of the template, and the attributes of each cell of the table are converted into the attributes of leaf nodes of the hierarchical structure of the template. The attributes of each cell consist of cell values, formats, formulas, and the like.

図10a及び図10bは、テーブルに対するテンプレートのグリッド構造情報を例示した図である。すなわち、図10aは、エクセル文書におけるビュー領域シートのピボットテーブルを例示し、図10bは、図10aのピボットテーブルのテンプレート情報(グリッド構造情報)を例示している。特に、テンプレート情報は、JSON(JavaScript(登録商標) Object Notation)形式として保存される。すなわち、ピボットテーブルを階層構造に分解して、それぞれの階層の要素と、該当要素の属性値で構成される。 10a and 10b are diagrams illustrating the template grid structure information for the table. That is, FIG. 10a illustrates a pivot table of a view area sheet in an Excel document, and FIG. 10b illustrates template information (grid structure information) of the pivot table of FIG. 10a. In particular, the template information is saved as JSON (Javascript (registered trademark) Object Notation) format. That is, the pivot table is decomposed into a hierarchical structure and composed of elements of each hierarchy and attribute values of the corresponding elements.

また、オブジェクトがテーブルである場合、該当テーブルのヘッダ行と、データの1番目行の構造情報のみをテンプレートとして保存する。テーブルにおいて、データ行の書式が交差行である場合、連続した二つのデータ行の書式(属性)を全て保存する。 Also, if the object is a table, only the header row of the table and the structure information of the first row of data are saved as a template. In a table, if the data row format is cross row, preserve all the formats (attributes) of two consecutive data rows.

次に、クエリ文作成部65は、データベース40から基礎データセットを参照するクエリ文を作成する機能またはインターフェースを提供する。 Next, the query statement creation unit 65 provides a function or interface for creating query statements that refer to the basic data set from the database 40 .

特に、図7のように、クエリ文作成部65は、クエリ文をテキスト形態で直接作成するか、ドラッグアンドドロップ方式のGUI(グラフィカルユーザインタフェース)を介してクエリ文を作成する機能を提供する。クエリ文作成部65は、GUIインターフェースを介してクエリを作成しても、テキスト形態のクエリ文を生成する。 In particular, as shown in FIG. 7, the query statement creation unit 65 provides a function of directly creating a query statement in text form or through a drag-and-drop GUI (graphical user interface). The query sentence creation unit 65 creates a text-type query sentence even when a query is created through a GUI interface.

図11のように、テキスト形態のクエリ文は、SELECT~FROM~WHERE等の構文による通常のクエリ文で構成される。 As shown in FIG. 11, the query sentence in text form is composed of a normal query sentence with syntax such as SELECT-FROM-WHERE.

一方、クエリ文作成部65は、加工変数をクエリ変数として用いて、クエリ文を作成することができる。 On the other hand, the query sentence creation unit 65 can create a query sentence using the processed variables as query variables.

クエリ文におけるクエリ変数は、変数識別子、及び加工変数の名前を結合して構成される。すなわち、実際、クエリ変数は、加工変数とマッピングされ、実際に同じ変数を意味する。ただし、クエリ変数と加工変数の表記形式が異なる。すなわち、クエリ変数を加工変数の名前を含めて作ってクエリ文で表記して用いるが、実際に同じ変数を示す。以下において、クエリ変数と加工変数の用語を混用する。 A query variable in a query statement is constructed by combining a variable identifier and a processed variable name. That is, in fact, the query variables are mapped with the processing variables and actually mean the same variables. However, the notation format of query variables and processing variables is different. That is, a query variable including the name of a processed variable is created and written in a query sentence for use, but the same variable is actually indicated. In the following, the terms query variable and processing variable are mixed.

好ましくは、次のように、変数識別子がクエリ変数の接頭語として結合される。 Preferably, the variable identifier is bound as a prefix to the query variable as follows.

[クエリ文のクエリ変数]
<変数識別子>+<加工変数の名前>
[Query variable in query statement]
<variable identifier> + <name of processing variable>

すなわち、クエリ変数は、加工変数に変数識別子を加えてマッピングされるが、実際に同じ変数を示す。 That is, a query variable is mapped to a processed variable plus a variable identifier, but actually points to the same variable.

また、変数識別子には、変数の種類を示す記号または文字が含まれてもよい。 Also, the variable identifier may include a symbol or character indicating the type of variable.

一例として、変数識別子は、「:VS_」と表示される。このとき、コロン(:)と変数(Variable)の「V」で組み合わせて識別し、「S」は、変数の種類を示す。また、アンダーバー(「_」)は、加工変数の名前との結合を示す。 As an example, the variable identifier is displayed as ":VS_". At this time, it is identified by combining a colon (:) and "V" of variable, and "S" indicates the type of variable. An underscore ("_") indicates a connection with the name of the processing variable.

変数の種類は、図12に示されている。 The variable types are shown in FIG.

また、クエリ文において、クエリ変数(加工変数)を用いて作成した例が、図13に示されている。図13に示すように、「商品名」、「支店名」、「売上月」、「売上月_TO」は、加工変数に設定された加工変数の名前である。先だって、パラメータシート(P)において設定された加工変数の名前である。 FIG. 13 shows an example of query sentences created using query variables (processed variables). As shown in FIG. 13, "product name", "branch name", "sales month", and "sales month_TO" are names of processing variables set as processing variables. It is the name of the machining variable previously set in the parameter sheet (P).

また、クエリ文作成部65は、クエリ文においてクエリ変数(加工変数)を用いるとき、ライン削除機能(以下、動的ライン削除機能)を備える。このとき、クエリ文のクエリ変数に動的ライン削除機能を示す記号または文字を追加して区分する。一例として、動的ライン削除機能は、変数名の前に「@」を記入して区分する。 In addition, the query statement creating unit 65 has a line deletion function (hereinafter, dynamic line deletion function) when query variables (processed variables) are used in the query statement. At this time, the query variable of the query statement is distinguished by adding a symbol or character indicating the dynamic line deletion function. As an example, the dynamic line deletion function is distinguished by putting "@" in front of the variable name.

動的ライン削除機能のクエリ変数は、加工変数とは異なり、ライン削除のバインディング機能をさらに有する。 The query variable of the dynamic line deletion function further has the binding function of line deletion, unlike the processing variable.

動的ライン削除機能は、該当加工変数の変数値がないか、空の値である場合、クエリ文において該当ラインを削除してバインディングする。 The dynamic line deletion function deletes and binds the corresponding line in the query statement when the corresponding processing variable has no variable value or has an empty value.

図14は、条件節(WHERE)において用いる動的ライン削除機能のクエリ変数を例示している。図14の(a)は、作成されたクエリ文であり、図14の(b)は、図14の(c)の変数値にバインディングして生成されたクエリ文を示す。 FIG. 14 illustrates the query variables for the dynamic line removal function used in the conditional clause (WHERE). FIG. 14(a) shows the created query sentence, and FIG. 14(b) shows the query sentence generated by binding to the variable value of FIG. 14(c).

一方、動的ライン削除機能のクエリ変数は、条件により異なるクエリ文を行うクエリ文に対する条件文を実現することができる。 On the other hand, the query variable of the dynamic line deletion function can implement a conditional statement for a query statement that performs different query statements depending on conditions.

図15の例のように、それぞれのチームが「購買チーム」であるか否かにより、(a)と(b)の二つのクエリ文に分けられる。すなわち、購買チームではなく、他のチームである場合、図15の(a)のように、単価と金額を表示しないクエリ文を実行しなければならず、購買チームである場合、図15の(b)のように、単価と金額を示すクエリ文を実行しなければならない。 As in the example of FIG. 15, the query is divided into two query sentences (a) and (b) depending on whether or not each team is a "purchasing team". That is, if it is not the purchasing team but another team, it must execute a query statement that does not display the unit price and the amount, as shown in FIG. 15(a). As in b), a query statement indicating the unit price and amount must be executed.

図16は、従来の方式により、図15における二つの場合のクエリ文を作成するコードを例示している。すなわち、従来の方式は、条件分岐のためには、プログラミング作業が必要である。 FIG. 16 illustrates code for creating query statements for the two cases in FIG. 15 according to the conventional method. That is, the conventional method requires programming work for conditional branching.

クエリ文作成部65は、動的ライン削除機能のクエリ変数を用いて、次の2つの方式で実現することができる。 The query statement creation unit 65 can be realized in the following two methods using the query variable of the dynamic line deletion function.

第一の方式は、条件に相当するクエリ文の全ての行に、動的ライン削除機能のクエリ変数を注釈文で挿入する。これを、図17に示している。 The first method inserts the query variable of the dynamic line deletion function into all the lines of the query statement corresponding to the condition as an annotation statement. This is illustrated in FIG.

図17に示すように、クエリ変数の「購買チーム(@:VN_購買チーム)」の変数値がなければ、該当ライン(クエリ変数が記載されたライン)、すなわち、単価と金額を示す該当ラインが削除される。また、クエリ変数の「他のチーム(@:VN_他のチーム)」の変数値が存在すれば、該当クエリ変数は、変数値で置き換えされるが、注釈文であるので、何の影響を与えない。また、該当ラインは存在するので、単価と金額を0で示すクエリ文がバインディングされる。 As shown in FIG. 17, if there is no variable value of the query variable "purchasing team (@: VN_purchasing team)", the corresponding line (the line containing the query variable), that is, the corresponding line indicating the unit price and the amount Deleted. Also, if there is a variable value of 'other team (@: VN_other team)' of the query variable, the query variable is replaced with the variable value. do not have. Also, since the corresponding line exists, a query statement indicating 0 for the unit price and the price is bound.

また、これに対して、図17の例において、クエリ変数の「購買チーム(@:VN_購買チーム)」の変数値が存在し、クエリ変数の「他のチーム(@:VN_他のチーム)」の変数値がなければ、単価と金額を0で示す行は削除され、単価と金額を示す該当ラインだけ存在して、単価と金額を示すクエリ文でバインディングされる。 On the other hand, in the example of FIG. 17, the variable value of the query variable "purchase team (@: VN_purchase team)" exists, and the query variable "other team (@: VN_other team)" exists. If there is no variable value of , the line indicating the unit price and the price with 0 is deleted, and only the corresponding line indicating the price and the price exists and is bound with the query statement indicating the price and the price.

次に、第二の方式は、注釈文の予約語を用いる方式である。該当方式の一例が図18及び図19a及び図19bに示されている。 The second method is to use reserved words in annotation text. An example of such a scheme is shown in Figures 18 and 19a and 19b.

図18のように、条件により行われる行の前後にクエリ変数を設定する。すなわち、「他のチーム」である場合、その単価と金額を0で示す行の前後に、それぞれ「他のチームの開始と終了(@:VN_他のチーム_START、@:VN_他のチーム_END)」のクエリ変数を作成する。また、「購買チーム」である場合、その単価と金額を示す行の前後に、それぞれ「購買チームの開始と終了(@:VN_購買チーム_START、@:VN_購買チーム_END)」のクエリ変数を作成する。 As shown in FIG. 18, set query variables before and after the conditional line. That is, in the case of "another team", the lines indicating the unit price and the amount of money are indicated by 0, respectively, and "the start and end of the other team (@: VN_other team_START, @: VN_other team_END)" are added. Create a query variable for Also, if it is a "purchasing team", create query variables of "purchasing team start and end (@: VN_purchasing team _START, @: VN_purchasing team _END)" before and after the line showing the unit price and amount. do.

また、図19aのように、他のチームの場合、他のチームのクエリ変数には、変数値をなくし(またはnull、空欄等)、購買チームのクエリ変数には、注釈文の開始記号と終了記号を変数値としてそれぞれ入力する。すると、図19aの下端のようなクエリ文がバインディングされる。 Also, as shown in FIG. 19a, in the case of other teams, the query variables of the other teams have no variable values (or null, blank, etc.), and the query variables of the purchasing team have the start and end symbols of the comment text. Enter each symbol as a variable value. Then a query statement like the one at the bottom of FIG. 19a is bound.

また、図19bのように、購買チームの場合、購買チームのクエリ変数には、変数値をなくし(またはnull、空欄等)、他のチームのクエリ変数には、注釈文の開始記号と終了記号を変数値としてそれぞれ入力する。すると、図19bの下端のようなクエリ文がバインディングされる。 In addition, as shown in FIG. 19b, in the case of the purchasing team, the query variable of the purchasing team has no variable value (or null, blank, etc.), and the query variable of the other team has the start and end symbols of the comment text. as variable values. Then a query statement like the one at the bottom of Figure 19b is bound.

一方、第二の方式である注釈文の予約語を用いる方式は、動的ライン削除機能のクエリ変数を利用せず、一般のクエリ変数を利用してもよい。すなわち、クエリ変数を文字列で定義し、クエリ変数の変数値を入れない代わりに、空欄等を入れても可能である。 On the other hand, the second method, which uses reserved words for annotation text, may use general query variables instead of using query variables of the dynamic line deletion function. That is, it is possible to define a query variable with a character string and insert blanks instead of not including the variable value of the query variable.

次に、第2クエリ文バインディング部66は、作成されたクエリ文を加工変数の変数値でバインディングする。 Next, the second query statement binding unit 66 binds the created query statement with the variable values of the processed variables.

第2クエリ文バインディング部66は、作成されたクエリ文から変数識別子を検出し、変数識別子を認識すれば、変数識別子に連結された文字列を加工変数の名前として認識する。 The second query text binding unit 66 detects the variable identifier from the created query text, and if the variable identifier is recognized, recognizes the character string concatenated with the variable identifier as the name of the processing variable.

次に、第2クエリ文バインディング部66は、加工変数の変数値を読み込む。加工変数の変数値は、パラメータシート(P)に定義された加工変数の名前のセルのセル値でマッピングする。 Next, the second query sentence binding unit 66 reads the variable values of the processed variables. The variable value of the processing variable is mapped by the cell value of the cell of the processing variable name defined in the parameter sheet (P).

また、第2クエリ文バインディング部66は、加工変数の変数値をクエリ文のクエリ変数で取り替えてバインディングする。このとき、クエリ変数の変数の種類により、変数値の表現形式が変わり得る。すなわち、予め決められた変数値のフォーマットにより、変数値を変換して表示する。 Also, the second query statement binding unit 66 replaces the variable values of the processed variables with the query variables of the query statement and binds them. At this time, the expression format of the variable value may change depending on the type of query variable. That is, the variable values are converted and displayed according to a predetermined variable value format.

また、第2クエリ文バインディング部66は、クエリ変数から動的ライン削除機能の記号が検出されると、該当加工変数の値がない場合は、該当ラインを削除する。 Also, when the symbol of the dynamic line deletion function is detected from the query variable, the second query text binding unit 66 deletes the corresponding line if the value of the corresponding processing variable does not exist.

次に、グリッド表示部35は、エクセル文書等を解釈してグリッドを生成する。すなわち、テンプレートにより、グリッド構造を生成して出力し、テンプレートの基礎データセットのロード情報により基礎データセットを取り込み、グリッドに加工データセットを反映して出力する。 Next, the grid display unit 35 interprets the Excel document or the like and generates a grid. That is, a grid structure is generated and output from the template, the basic data set is taken in according to the load information of the basic data set of the template, and the processed data set is reflected on the grid for output.

まず、グリッド表示部35は、テンプレートのグリッド構造により、グリッドの形態を生成する。上述したように、テンプレートファイルは、JSON等の標準スクリプトデータ形式で作成されたので、該当スクリプトデータ形式のパーザを用いて解釈する。 First, the grid display unit 35 generates a grid form according to the grid structure of the template. As described above, the template file is created in a standard script data format such as JSON, and is interpreted using a parser for the script data format.

すなわち、ピボットテーブルオブジェクトの場合、該当オブジェクトのJSONデータを解釈してピボットテーブルを復元し、一般のテーブルオブジェクトの場合、該当オブジェクトのJSONデータを解釈して、テーブルのヘッダ行及びデータの1番目行(または1番目及び2番目行)を復元する。好ましくは、ここで、グリッドは、メモリに記憶されるデータであってもよい。 That is, in the case of a pivot table object, the JSON data of the corresponding object is interpreted and the pivot table is restored. (or the 1st and 2nd rows). Preferably, here the grid may be data stored in memory.

特に、サーバにおいて、ユーザの要請があった場合、リアルタイムで解釈する。一方、テンプレートファイルは、エクセル文書よりも軽量化されており、速い速度でロードすることができる。 In particular, the server interprets in real time when requested by the user. Template files, on the other hand, are lighter than Excel documents and load faster.

また、グリッド表示部35は、ロード情報により、データベースから基礎データをロードする。好ましくは、データベースの最新の問い合わせ結果をリアルタイムで反映する。 Also, the grid display unit 35 loads the basic data from the database according to the load information. Preferably, the latest query results of the database are reflected in real time.

グリッド表示部35は、ロード情報を参照して、DB連結情報でデータベースに接続し、クエリ文の情報でクエリ文を生成して要請する。すなわち、DB連結情報のキー値等で認証され、データベースにアクセスする。また、バインディング構文を用いて、加工変数を反映してクエリ文を生成する。このとき、加工変数の変数値は、該当加工変数にマッピングされたコントロールオブジェクトの入力値に設定される。 The grid display unit 35 refers to the load information, connects to the database using the DB connection information, generates a query statement based on the query statement information, and makes a request. That is, the database is accessed after being authenticated by the key value of the DB connection information. Also, using the binding syntax, the query statement is generated by reflecting the processing variables. At this time, the variable value of the processing variable is set to the input value of the control object mapped to the corresponding processing variable.

好ましくは、グリッド表示部35は、データベース(DB)において問い合わせした基礎データセットをメモリに記憶する。このとき、基礎データセットを行と列を有する仮想シートの形態で記憶する。すなわち、ワークシートの行と列を基準として、基礎データセットのデータを参照できるように記憶する。 Preferably, the grid display unit 35 stores in memory the basic data set queried in the database (DB). The basic data set is then stored in the form of a virtual sheet with rows and columns. That is, the data of the basic data set are stored so that they can be referred to based on the rows and columns of the worksheet.

また、グリッド表示部35は、基礎データセットをグリッドのデータ領域に反映して挿入する。 In addition, the grid display unit 35 inserts the basic data set in the data area of the grid.

特に、データセット及び該当グリッドの形態がテーブルである場合、該当グリッドにおいて、データセットのレコード(データ行)の数だけの行を動的に生成する。バインディング位置を識別した後、レコード数だけの行を動的に生成する。 In particular, when the form of the data set and the corresponding grid is a table, the corresponding grid dynamically generates rows corresponding to the number of records (data lines) of the data set. After identifying the binding position, dynamically generate as many rows as the number of records.

また、グリッド表示部35は、テーブルのセルが数式である場合、該当数式を解釈して演算された値を挿入する。特に、セル数式において、データ領域シートのセルを参照する数式であれば、更新された基礎データセット(またはメモリに記憶された基礎データセット)を参照してセル値を計算する。 Also, when the cell of the table is a formula, the grid display unit 35 interprets the formula and inserts a calculated value. In particular, in a cell formula, if the formula refers to a cell on a data area sheet, the updated base data set (or base data set stored in memory) is referenced to calculate the cell value.

特に、データベースから取り込んだ基礎データセット(更新された基礎データセット)を仮想シートの形態として保存するので、エクセル文書上において記載されたデータ領域シートのセルを参照する数式をそのまま用いてもよい。このとき、データ領域シートの名前を仮想シート(メモリに記憶された仮想シート)で取り替えて解釈する。 In particular, since the basic data set (updated basic data set) imported from the database is saved in the form of a virtual sheet, formulas that refer to the cells of the data area sheet described in the Excel document can be used as they are. At this time, the name of the data area sheet is replaced with a virtual sheet (virtual sheet stored in memory) for interpretation.

すなわち、グリッド表示部35は、レコードの増加による数式を自動で生成する。 That is, the grid display unit 35 automatically generates a mathematical formula by increasing the number of records.

図20に示すように、テンプレートにおいてバインディングの位置を識別してから、レコード数だけの行を動的に生成し、このとき、ヘッダ及びデータ領域を判断して、データ領域に数式が存在する場合、数式は、行の生成と一緒に自動生成する。 As shown in FIG. 20, after identifying the position of the binding in the template, dynamically generate the number of rows corresponding to the number of records. , the formula auto-generates along with the row generation.

数式は、エクセル(Excel)の絶対アドレス及び相対アドレスを解釈して生成される行のアドレスに基づき、自動増減して生成する。絶対アドレスは、変わらずに固定されたセルのアドレスを示す。相対アドレスは、基準セルの位置と該当セルの位置の相対位置によってアドレス値が変動する。 The formula is generated by automatically increasing or decreasing based on the row address generated by interpreting the absolute address and relative address of Excel. An absolute address indicates the address of a cell that is fixed without change. The relative address varies depending on the relative positions of the reference cell and the corresponding cell.

また、図20のように、グリッド表示部35は、交差行及びスタイル(書式)を支援する。すなわち、交差行の書式が異なる場合を支援する。すなわち、テンプレートにおいてバインディングの位置を識別してから、データ領域のスタイル(書式)を新たに生成する行に反映する。データ領域の行のサイズが2つである場合、交差行のスタイル(書式)を支援して、交互にスタイル(書式)を反映してもよい。 Also, as in FIG. 20, grid display 35 supports cross-rows and styles. That is, it supports cases where the format of crossing lines is different. That is, it identifies the location of the bindings in the template and then reflects the style of the data area to the newly generated rows. If the row size of the data area is two, the styles (formats) of crossing rows may be supported to alternately reflect the styles (formats).

また、グリッド表示部35は、グリッド上において、エクセル(Excel)の数式を支援する。該当数式は、テンプレートに定義される。数式は、データバインディング規則により、新たに生成されてもよい。データバインディングは、加工データセットが表の形態で出力される場合、その位置の最後のアドレスに数式が存在すれば、該当数式を行別に自動で生成することを意味する。 Also, the grid display unit 35 supports Excel formulas on the grid. The corresponding formula is defined in the template. Formulas may be newly generated by data binding rules. Data binding means that when a processed data set is output in the form of a table, if there is a formula at the last address of that position, the corresponding formula is automatically generated for each row.

以上、本発明者によりなされた発明を、前記した実施形態により具体的に説明したが、本発明は、前記した実施形態に限定されるのではなく、その要旨を逸脱しない範囲内で様々な変更が可能であることはもちろんである。 The invention made by the present inventors has been specifically described above with reference to the above-described embodiments, but the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. is of course possible.

本発明は、以下に記載された政府支援課題の一環として行われたものである。 This invention was made as part of a government-sponsored project described below.

課題固有番号:1415169086
(機関)詳細課題番号:20008795
省庁名:産業通商資源部
研究管理専門機関:韓国産業技術評価管理院
研究事業名:知識サービス産業核心技術開発-製造サービス融合
研究課題名:製造現場に特化した音声認識の適用のためのノイズ除去技術搭載のスマートデバイス及び人工知能仮想秘書サービスの開発
寄与率:100%
主管機関:(株)ミソ情報技術
参与機関:(株)ビーアイマトリックス
研究期間:2020.05.01~2022.12.31
Issue specific number: 1415169086
(Organization) Detailed project number: 20008795
Ministry name: Ministry of Trade, Industry and Energy Research management agency: Korea Institute of Industrial Technology Evaluation and Management Research project name: Knowledge service industry core technology development - Manufacturing service integration Research project name: Noise for application of voice recognition specialized for manufacturing sites Development of smart devices equipped with removal technology and artificial intelligence virtual secretary service Contribution rate: 100%
Supervising organization: Miso Information Technology Co., Ltd. Participating organization: BI Matrix Co., Ltd. Research period: 2020.05.01-2022.12.31

10:ユーザ端末
20:エクセルツール
30:作成サーバ
31:画面編集部
32:グリッド編集部
33:コントロール編集部
34:レポートビューア部
35:グリッド表示部
36:第1クエリバインディング部
38:保存部
60:拡張モジュール
61:ワークシート初期化部
62:加工変数設定部
63:データセットロード部
64:編集結果保存部
65:クエリ文作成部
66:第2クエリバインディング部
80:ネットワーク
10: User terminal 20: Excel tool 30: Creation server 31: Screen editing unit 32: Grid editing unit 33: Control editing unit 34: Report viewer unit 35: Grid display unit 36: First query binding unit 38: Storage unit 60: Extension module 61: Worksheet initialization unit 62: Processing variable setting unit 63: Data set loading unit 64: Editing result storage unit 65: Query statement creation unit 66: Second query binding unit 80: Network

Claims (6)

ユーザ端末のエクセル(登録商標)ツールにインストールされる拡張モジュール及びサーバにより行われる、クエリバインディング機能を備えたオンラインレポート作成システムにおいて、
ウェブ上のレポート画面において、グリッドオブジェクトを編集するが、一つのグリッドオブジェクトについての情報を一つのエクセル文書に保存し、拡張されたエクセルツールによるエクセル文書の編集により、グリッドオブジェクトを編集させるグリッド編集部と、
ウェブ上のレポート画面において、コントロールオブジェクトを生成して編集するコントロール編集部と、
前記エクセルツールが呼び出されると、前記グリッドオブジェクトにマッピングされるエクセル文書を生成するが、グリッドの形態を示すビュー領域シート、基礎データセットを保存するデータ領域シート、加工変数を設定するパラメータ領域シートで構成されるエクセル文書を生成するワークシート初期化部と、
前記エクセル文書のパラメータ領域シート上において、加工変数を設定する加工変数設定部と、
前記ワークシート上の加工変数をクエリ変数でマッピングしてクエリ文を作成するクエリ文作成部と、
前記拡張モジュールに備えられ、前記クエリ文のクエリ変数を加工変数の変数値でバインディングする第2クエリバインディング部と、
前記エクセル文書のワークシート上において、基礎データセットをロードするが、前記第2クエリバインディング部を介して前記クエリ文をバインディングし、バインディングされたクエリ文でロードするデータセットロード部と、
前記サーバに備えられ、前記クエリ文のクエリ変数を加工変数の変数値でバインディングする第1クエリバインディング部と、
グリッドオブジェクトにマッピングされるエクセル文書の内容により、該当グリッドオブジェクトの内容をウェブ上に表示するが、前記第1クエリバインディング部を介して前記クエリ文をバインディングし、バインディングされたクエリ文で基礎データセットをロードし、ロードされた基礎データセットから加工されたデータセットでグリッドオブジェクトの内容を表示するグリッド表示部と、
グリッドオブジェクト及びコントロールオブジェクトで構成されたレポートをウェブ上において表示するが、前記グリッド表示部を介してグリッドオブジェクトを表示するレポートビューア部と、を含み、
前記コントロール編集部は、前記コントロールオブジェクトに前記加工変数をマッピングさせ、
前記第1クエリバインディング部は、変数値を、前記加工変数にマッピングされるコントロールオブジェクトの入力値に設定し、
前記クエリ文においてクエリ変数を用いるとき、ライン削除機能を備え、該当クエリ変数に動的ライン削除機能を示す記号または文字を追加して区分し、
前記第1または第2クエリバインディング部は、クエリ変数がライン削除機能を有する場合、該当加工変数の変数値がないか、空の値であれば、該当クエリ文から該当ラインを削除してバインディングすることを特徴とするクエリバインディング機能を備えたオンラインレポート作成システム。
In an online report creation system with a query binding function, which is performed by an extension module and server installed in the Excel (registered trademark) tool of the user terminal,
A grid editor that edits grid objects on a web report screen, saves information about one grid object in one Excel document, and edits the grid object by editing the Excel document with an extended Excel tool. and,
A control editing unit that generates and edits control objects on the report screen on the web;
When the Excel tool is invoked, it generates an Excel document that maps to the grid object, with a view area sheet showing the form of the grid, a data area sheet storing basic data sets, and a parameter area sheet setting processing variables. a worksheet initializer for generating a structured Excel document;
a processing variable setting unit for setting processing variables on the parameter area sheet of the Excel document;
a query statement creation unit that creates a query statement by mapping processing variables on the worksheet with query variables;
a second query binding unit provided in the extension module for binding a query variable of the query statement with a variable value of a processing variable;
a dataset loading unit for loading a basic dataset on the worksheet of the Excel document, binding the query statement via the second query binding unit, and loading with the bound query statement;
a first query binding unit provided in the server for binding a query variable of the query statement with a variable value of a processing variable;
According to the content of the Excel document mapped to the grid object, the content of the corresponding grid object is displayed on the web. and displaying the contents of the grid object with a dataset processed from the loaded underlying dataset;
a report viewer portion for displaying a report composed of grid objects and control objects on the web, but displaying the grid objects via the grid display portion;
The control editing unit causes the control object to map the machining variable,
The first query binding unit sets a variable value to an input value of a control object mapped to the processing variable ,
when a query variable is used in the query statement, the query variable has a line deletion function and is distinguished by adding a symbol or character indicating a dynamic line deletion function to the corresponding query variable;
The first or second query binding unit deletes and binds the corresponding line from the corresponding query statement if the corresponding processing variable has no variable value or is empty when the query variable has a line deletion function. An online report creation system with a query binding function characterized by:
前記クエリ文におけるクエリ変数は、変数識別子及び加工変数の名前を結合して構成されて表記され、
前記第1または第2クエリバインディング部は、クエリ文において変数識別子を認識すると、該当変数識別子に連結された文字列を加工変数として認識することを特徴とする請求項1に記載のクエリバインディング機能を備えたオンラインレポート作成システム。
A query variable in the query statement is expressed by combining a variable identifier and a name of a processing variable;
The query binding function of claim 1, wherein the first or second query binding unit recognizes a string concatenated with the corresponding variable identifier as a processing variable when recognizing the variable identifier in the query sentence. Online reporting system with.
前記クエリ文において条件により行われる行が異なる場合、該当行に注釈文を挿入し、挿入された注釈文にライン削除機能を有するクエリ変数を挿入し、条件により、クエリ変数の変数値を空の値で入力させるか、任意の値を入力させて、空の値であれば、該当行を削除させ、任意の値であれば、該当行が行われるように提供することを特徴とする請求項に記載のクエリバインディング機能を備えたオンラインレポート作成システム。 If the line to be executed according to the condition in the query statement is different, insert a comment statement in the corresponding line, insert a query variable with a line deletion function into the inserted comment statement, and set the variable value of the query variable to null according to the condition. A claim characterized by inputting a value or inputting an arbitrary value, and if the value is empty, the corresponding line is deleted, and if it is an arbitrary value, the corresponding line is provided to be performed. 1. An online report creation system having the query binding function according to 1. 前記加工変数設定部は、変数定義セルの名前を加工変数の名前に設定し、前記加工変数は、前記エクセル文書上においてグリッドに表示すべきテーブルのセル内の数式に用いられることを特徴とする請求項1に記載のクエリバインディング機能を備えたオンラインレポート作成システム。 The processing variable setting unit sets the name of the variable definition cell to the name of the processing variable, and the processing variable is used in the formula in the cell of the table to be displayed in the grid on the Excel document. An online reporting system with a query binding function according to claim 1. 前記ビュー領域シート上のテーブルは、前記データ領域シート上に入力された基礎データセットを参照するが、前記ビュー領域シート上のテーブル内のセルの数式において、前記データ領域シートのセルを参照し、
前記グリッド表示部は、基礎データセットをデータベースから取り込んで仮想シート上に保存し、前記グリッドオブジェクトのテーブルのそれぞれのセルを数式により反映するとき、参照するデータ領域シートのセルの内容の代わりに、仮想シート上の該当セルの内容で反映することを特徴とする請求項に記載のクエリバインディング機能を備えたオンラインレポート作成システム。
The table on the view area sheet refers to the basic data set entered on the data area sheet, but the formula of the cell in the table on the view area sheet refers to the cell of the data area sheet,
When the grid display unit retrieves the basic data set from the database and saves it on the virtual sheet, and reflects each cell of the table of the grid object by a formula, instead of the contents of the cell of the data area sheet to be referenced, 5. The online report creation system with a query binding function according to claim 4 , wherein the content of the corresponding cell on the virtual sheet is reflected.
前記グリッド編集部、コントロール編集部、レポートビューア部、グリッド表示部、第1クエリバインディング部は、前記サーバに備えられ、ワークシート初期化部、加工変数設定部、データセットロード部、編集結果保存部、第2クエリバインディング部、クエリ文作成部は、前記拡張モジュールに備えられることを特徴とする請求項1に記載のクエリバインディング機能を備えたオンラインレポート作成システム。 The grid editing unit, the control editing unit, the report viewer unit, the grid display unit, and the first query binding unit are provided in the server. 2. The online report writing system with query binding function as claimed in claim 1, wherein the second query binding part and the query statement preparing part are provided in the extension module.
JP2021093534A 2020-12-18 2021-06-03 Online reporting system with query binding capabilities Active JP7216377B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200178176A KR102499832B1 (en) 2020-12-18 2020-12-18 An online report creation system with query binding function
KR10-2020-0178176 2020-12-18

Publications (2)

Publication Number Publication Date
JP2022097358A JP2022097358A (en) 2022-06-30
JP7216377B2 true JP7216377B2 (en) 2023-02-01

Family

ID=82165475

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021093534A Active JP7216377B2 (en) 2020-12-18 2021-06-03 Online reporting system with query binding capabilities

Country Status (2)

Country Link
JP (1) JP7216377B2 (en)
KR (1) KR102499832B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012123607A (en) 2010-12-08 2012-06-28 Mitsubishi Electric Corp Data input/output device
JP2015191258A (en) 2014-03-27 2015-11-02 富士通株式会社 program, processing method and information processing apparatus
JP2017120610A (en) 2015-12-28 2017-07-06 株式会社 ビーアイマトリックスBi Matrix Co.,Ltd Update system for database using spreadsheet interface
JP2017120645A (en) 2015-12-28 2017-07-06 株式会社 ビーアイマトリックスBi Matrix Co.,Ltd Batch update system for database based on spreadsheet interface using query template

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100497811B1 (en) 2001-12-27 2005-07-01 삼성에스디에스 주식회사 Reporting system linked with web environment
KR100697155B1 (en) 2004-12-03 2007-03-21 (주)엠투소프트 System and method for forming report using web service
CA2862387C (en) * 2011-12-29 2023-03-14 Michael J. Chen Spreadsheet-based programming language adapted for report generation
KR20130126012A (en) 2012-05-10 2013-11-20 (주)네오위즈게임즈 Method and apparatusfor providing report of business intelligence
KR102034679B1 (en) * 2018-01-17 2019-10-23 (주)비아이매트릭스 A data input/output system using grid interface
KR101951719B1 (en) 2018-07-26 2019-02-25 (주)비아이매트릭스 A web reporting design system with programming event handling by using graphic interface

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012123607A (en) 2010-12-08 2012-06-28 Mitsubishi Electric Corp Data input/output device
JP2015191258A (en) 2014-03-27 2015-11-02 富士通株式会社 program, processing method and information processing apparatus
JP2017120610A (en) 2015-12-28 2017-07-06 株式会社 ビーアイマトリックスBi Matrix Co.,Ltd Update system for database using spreadsheet interface
JP2017120645A (en) 2015-12-28 2017-07-06 株式会社 ビーアイマトリックスBi Matrix Co.,Ltd Batch update system for database based on spreadsheet interface using query template

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
安納 順一,新人技術者舞ちゃんのコマンド&スクリプトで楽々ネットワーク管理 第7回 ユーザー情報を一括更新するには,日経NETWORK,日本,日経BP社,2014年09月28日,第174号,p.96-103

Also Published As

Publication number Publication date
KR20220087789A (en) 2022-06-27
KR102499832B1 (en) 2023-02-15
JP2022097358A (en) 2022-06-30

Similar Documents

Publication Publication Date Title
US10698589B1 (en) Data visualization user interface for simplified custom calculations
US20220092059A1 (en) Dynamically materialized views for sheets based data
CN100461156C (en) Integrated data processing system
US5603025A (en) Methods for hypertext reporting in a relational database management system
US8479093B2 (en) Metamodel-based automatic report generation
US20180357055A1 (en) System and method for computer language migration
US9811604B2 (en) Method and system for defining an extension taxonomy
US7350141B2 (en) User interface for integrated spreadsheets and word processing tables
RU2421797C2 (en) Indication, definition and detection of electronic table document parameters
JP5570608B2 (en) Excel-based analysis report creation system and method
JP7209306B2 (en) Online work system for Excel documents based on templates
JP7339628B2 (en) Online report creation system using Excel tools
Kongdenfha et al. Rapid development of spreadsheet-based web mashups
KR102034679B1 (en) A data input/output system using grid interface
CN112764743B (en) Method for automatically generating software based on data model drive
WO2007000375A2 (en) Method and system for hiding sensitive data within models in an electronic spreadsheet environment
Alexander et al. Access 2013 Bible
JP7216377B2 (en) Online reporting system with query binding capabilities
WO2010147453A1 (en) System and method for designing a gui for an application program
JP2004341770A (en) Data management system and data management method
Barresse et al. Excel Tables: A Complete Guide for Creating, Using and Automating Lists and Tables
EP2657851A1 (en) Partition based structured document transformation
Fard Construction smart forms: An application of information technology to reduce waste by increasing interoperability
Yang The Most Popularly Applied Vehicles in Health Industry for Data Transfer from SAS to Microsoft Excel

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230112

R150 Certificate of patent or registration of utility model

Ref document number: 7216377

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150