(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024092953
(43)【公開日】2024-07-08
(54)【発明の名称】データセットを書式にローディングするための方法(METHOD FOR LOADING DATASETS INTO FORM)
(51)【国際特許分類】
G06F 16/26 20190101AFI20240701BHJP
【FI】
G06F16/26
【審査請求】有
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023183762
(22)【出願日】2023-10-26
(31)【優先権主張番号】10-2022-0184783
(32)【優先日】2022-12-26
(33)【優先権主張国・地域又は機関】KR
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.MySQL
(71)【出願人】
【識別番号】512096861
【氏名又は名称】株式会社 ビーアイマトリックス
【氏名又は名称原語表記】BI MATRIX CO.,LTD
【住所又は居所原語表記】New building 17F.,433,Seolleung-ro,Gangnam-gu,Seoul,Republic of Korea
(74)【代理人】
【識別番号】240000327
【弁護士】
【氏名又は名称】弁護士法人クレオ国際法律特許事務所
(72)【発明者】
【氏名】ペ ヨングン
(72)【発明者】
【氏名】ファン ソンミン
(72)【発明者】
【氏名】ハン ジンス
(72)【発明者】
【氏名】イ ヨンギュン
(72)【発明者】
【氏名】チェ ハンナ
(72)【発明者】
【氏名】チョ ジョンス
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA03
5B175HA04
(57)【要約】
【課題】データセットを書式にローディングするための方法を提供する。
【解決手段】
本開示は、情報処理分野に係り、データセットを書式にローディングするための方法に関する。詳しくは、本開示は、原本データに係るユーザー入力構文を取得し、ユーザー入力構文に基づきデータベースにアクセスし、上記データベースに基づき、ユーザーインターフェース(UI)に出力する方法を提供する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
コンピューティング装置により実行されるデータ出力方法であって、
スプレッドシートモジュールがデータ抽出関数のパラメータを受信する段階;
前記データ抽出関数のパラメータに基づき、データベースにアクセスするための第1構文を生成する段階;
前記第1構文を用いて前記データベースから第1データを取得する段階;及び
前記データ抽出関数のパラメータに基づき、前記スプレッドシートモジュールを通じて前記第1データを出力する段階;
を含む、
方法。
【請求項2】
請求項1において、
前記データ抽出関数のパラメータは、
データ名に係る情報、データのカラム名に係る情報、データの属性に係る情報、データフィールドの選択に係る情報、データ照会権限に係る情報のうち少なくとも1つを含む、
方法。
【請求項3】
請求項1において、
前記データ抽出関数のパラメータに基づき、前記スプレッドシートモジュールを通じて前記第1データを出力する段階は、
スタイル制御関数のパラメータに基づき、前記第1データを生成する段階を含む、
方法。
【請求項4】
請求項3において、
前記スタイル制御関数のパラメータは、
スプレッドシートに含まれているデータレコード配置情報、データ演算情報、画像情報、セルスタイル情報、セル統合情報、条件付き書式情報、チャート作成情報のうち、少なくとも1つを含む、
方法。
【請求項5】
請求項4において、
前記スタイル制御関数のパラメータは、
前記第1データに含まれているレコードを繰り返し出力するための情報である繰り返し使用するセルスタイル情報をさらに含む、
方法。
【請求項6】
請求項4において、
前記データ演算情報は、
前記データ抽出関数に基づき、前記スプレッドシートモジュールに含まれている数式の入力値を繰り返して指定する、
方法。
【請求項7】
請求項4において、
前記第1データに基づき、前記スタイル制御関数のパラメータを通じて、前記第1データをスプレッドシートに出力する段階は、
画面における前記第1データが出力される領域を確認する段階;及び
フィールドの値に係る情報及び前記出力される領域に係る情報に基づき、前記データレコード配置情報を算出する段階;
を含む、
方法。
【請求項8】
請求項1において、
前記方法は、
前記第1データを修正して第2データを生成する段階;
前記第2データに基づき、キャッシュ関数を生成する段階;及び
前記キャッシュ関数に基づき、前記スプレッドシートモジュールを通じて前記第2データを出力する段階;
をさらに含む、
方法。
【請求項9】
請求項8において、
前記第1データを修正して第2データを生成する段階は、
前記第1データのうち、予め設定された項目についてのみ修正ができる、
方法。
【請求項10】
請求項8において、
前記第2データに基づき、キャッシュ関数を生成する段階は、
前記第2データにおける被参照領域が修正される場合、前記被参照領域を参照する他の領域又は前記被参照領域を修正する段階
を含む、
方法。
【請求項11】
請求項8において、
前記キャッシュ関数に基づき、前記データベースの前記第1データを前記第2データに更新するための第2構文を生成する段階;及び
前記第2構文を用いて前記データベースを更新する段階;
を含む、
方法。
【請求項12】
コンピューター可読保存媒体に保存されたコンピュータープログラムであって、
前記コンピュータープログラムは、1つ以上のプロセッサーによって実行される場合、前記1つ以上のプロセッサーに、データをスプレッドシートに出力するための動作を実行させ、前記動作は、
スプレッドシートモジュールがデータ抽出関数のパラメータを受信する動作;
前記データ抽出関数のパラメータに基づき、データベースにアクセスするための第1構文を生成する動作;
前記第1構文を用いて前記データベースから第1データを取得する動作;及び
前記データ抽出関数のパラメータに基づき、前記スプレッドシートモジュールを通じて前記第1データを出力する動作;
を含む、
コンピューター可読保存媒体に保存されたコンピュータープログラム。
【請求項13】
コンピューティング装置であって、
少なくとも1つのプロセッサー;及び
メモリー;
を含み、
前記少なくとも1つのプロセッサーは、データをスプレッドシートに出力するために、
スプレッドシートモジュールがデータ抽出関数のパラメータを受信し;
前記データ抽出関数のパラメータに基づき、データベースにアクセスするための第1構文を生成し;
前記第1構文を用いて前記データベースから第1データを取得し;且つ
前記データ抽出関数のパラメータに基づき、前記スプレッドシートモジュールを通じて前記第1データを出力するように構成される、
装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理分野に係り、データセットを書式にローディングするための方法に関する。詳しくは、本開示は、原本データに係るユーザー入力構文(User Input Statement)を取得し、ユーザー入力構文に基づきデータベースにアクセスし、上記データベースに基づき、ユーザーインターフェース(UI)に出力する方法を提供する。
【背景技術】
【0002】
コンピューター技術の発展により、企業及び官公庁等において、経営及び管理に係る業務のために多様なコンピュータープログラムを用いている。かかるコンピュータープログラムは、企業の会計、人事、財務、営業、貿易、購買、資材、生産及び在庫等の経営及び管理に必要な数多くのデータを保存し、処理することが可能である。かかるコンピュータープログラムを用いることで、ユーザー(企業及び官公庁等における業務の実務担当者、役員及び経営者)は、より便利且つ簡単に企業及び官公庁等において用いられているデータを保存し管理することが可能になる。企業及び官公庁等において用いられているコンピュータープログラムは、多様な形の文書を作成、編集、管理できる機能をサポートしている。一方、管理されていない多様な書式を保存し、処理及び出力する過程において、人的/物的資源が浪費される問題点が存在する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】大韓民国登録特許公報第10-0593661号
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、前述の背景技術に対応して案出されたものであり、画像データを便利に処理する方法を提供することが可能である。
【0005】
本開示における技術的課題は、前述の技術的課題に限定されるものではなく、当業者は以下の記載内容に基づき、前述の技術的課題以外の課題についても明確に理解することが可能である。
【課題を解決するための手段】
【0006】
前述の課題を解決するための複数の実施例におけるコンピューティング装置により実行される方法であって、上記方法は、コンピューティング装置により実行される場合、スプレッドシートモジュールに基づき、データベースから画像を含む第1データを取得する段階;及び上記第1データに基づき、上記スプレッドシートモジュールを通じて上記第1データをスプレッドシートに表示する段階;を含むことが可能である。
【0007】
一実施例において、上記スプレッドシートモジュールは、上記スプレッドシートに表示されるセルスタイル情報、セル配置情報、セル統合情報、条件付き書式情報、チャート出力情報のうち少なくとも1つを含むスタイル制御関数のパラメータを含むことが可能である。
【0008】
一実施例において、上記第1データの画像に係る情報は画像保存経路情報を含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記画像保存経路情報に基づき、上記画像を取得する段階;及び上記画像を規格に合う画像に変換してスプレッドシートに表示する段階;を含むことが可能である。
【0009】
一実施例において、上記スプレッドシートモジュールは、画像キーバリューが付与された画像に係る画像リストを含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記第1データの画像と上記画像リストとを比較する段階;及び上記第1データの画像が上記画像リストに含まれている画像のうちいずれか1つの画像に該当する場合、上記第1データの画像を上記画像リストに基づきスプレッドシートに表示する段階;を含むことが可能である。
【0010】
一実施例において、上記第1データの画像が上記画像リストに含まれていない場合、上記第1データの画像に新しい画像キーバリューを付与する段階;及び上記第1データの画像を上記画像リストに含める段階;をさらに含むことが可能である。
【0011】
一実施例において、上記第1データの画像を取り替えて第2データを生成する段階;上記第2データの画像と上記画像リストとを比較する段階;上記第2データの画像が上記画像リストに含まれている画像のうちいずれか1つの画像に該当する場合、上記画像リストに基づきキャッシュ関数を生成する段階;及び上記キャッシュ関数に基づきスプレッドシートに表示する段階;を含むことが可能である。
【0012】
一実施例において、上記第2データの画像が上記画像リストに含まれていない場合、上記第2データの画像に新しい画像キーバリューを付与する段階;及び
上記第2データの画像を上記画像リストに含める段階;をさらに含むことが可能である。
【0013】
一実施例において、上記第1データが修正された第2データを生成する段階において、上記第1データにおける予め設定された領域についてのみ修正が可能になり得る。
【0014】
一実施例において、上記キャッシュ関数に基づき、上記データベースの上記第1データを上記第2データに更新するための構文を生成する段階;及び上記構文を用いて上記データベースを更新する段階;を含むことが可能である。
【0015】
また、前述のような課題を解決するためのコンピューター可読保存媒体に保存されたコンピュータープログラムが開示される。
【0016】
上記コンピュータープログラムは、1つ以上のプロセッサーにより実行される場合、上記1つ以上のプロセッサーに、データをスプレッドシートに表示するための動作を実行させ、上記動作は、データベースから画像を含む第1データを取得する動作;及び上記第1データに基づき、スプレッドシートモジュールを通じて、上記第1データをスプレッドシートに表示する動作;を含むことが可能である。
【0017】
また、前述のような課題を解決するためのコンピューティング装置が開示される。
【0018】
上記コンピューティング装置は、少なくとも1つのプロセッサー;及びメモリー;を含み、上記少なくとも1つのプロセッサーは、データをスプレッドシートに表示するために、データベースから画像を含む第1データを取得し;且つ、上記第1データに基づき、スプレッドシートモジュールを通じて上記第1データがスプレッドシートに表示されるように構成されることが可能である。
【発明の効果】
【0019】
本開示は、前述の背景技術に対応して案出されたものであり、ユーザーが便利に原本データにアクセスできるようにする方法を提供することが可能である。
【0020】
本開示を適用可能な範囲として追加できるものは、以下の詳細な説明により明確になる。しかし、本発明の思想及び範囲における多様な変更及び修正は、当業者にとって明確に理解できるものであるため、詳細な説明及び本発明における好ましい実施例のような特定の実施例は、例示に過ぎないものと理解されるべきである。
【図面の簡単な説明】
【0021】
図面を参照して多様な様相について説明する。以下の図面の記載において、類似の図面番号は総体として類似の構成要素を示すために使われる。以下の実施例において、説明のために、多数の特定の細部事項が、1つ以上の様相の総合的な理解を助けるために提供される。しかし、かかる(複数の)様相を、かかる特定の細部事項がなくても実施できるということは明白である。他の例において、公知の構造及び装置が、1つ以上の様相の記載を容易にするためにブロック図の形で図示される。
【
図1】
図1は、本開示の一実施例におけるコンピューティング装置を説明するためのブロック構成図である。
【
図2】
図2は、本開示の一実施例において原本データを抽出して出力する方法を説明するためのフローチャートである。
【
図3】
図3は、本開示の一実施例においてコンピューティング装置の第1プログラムにおけるデータセットを第2プログラムにおいて出力する方法を示すフローチャートである。
【
図4】
図4は、本開示の一実施例においてスプレッドシートモジュールが原本データにアクセスして第1データを出力する方法を説明するためのフローチャートである。
【
図5】
図5は、本開示の一実施例においてスプレッドシートモジュールが原本データにアクセスして第1データを出力する方法を説明するための信号フローチャートである。
【
図6】
図6は、本開示の一実施例におけるデータ抽出関数のパラメータ及びスタイル制御関数のパラメータを含むスプレッドシートモジュールを説明するための概念図である。
【
図7】
図7は、本開示の一実施例におけるスプレッドシートモジュールに含まれている数式の入力値を繰り返して指定する方法を説明するための概念図である。
【
図8】
図8は、本開示内容の実施例が具現化されることが可能である、例示的なコンピューティング環境に係る一般的な概略図である。
【発明を実施するための形態】
【0022】
多様な実施例が以下に図面を参照しながら説明される。本明細書において多様な説明が本開示に対する理解を容易にするために示される。しかし、これらの実施例がこれらの具体的な説明がなくても間違いなく実施されることができる。
【0023】
本明細書において、「コンポーネント」、「モジュール」、「システム」等の用語は、コンピューター関連エンティティ、ハードウェア、ファームウェア、ソフトウェア、ソフトウェアとハードウェアとの組み合わせ、またはソフトウェアの実行を指す。例えば、コンポーネントは、プロセッサー上で実行される処理手順(procedure)、プロセッサー、オブジェクト、実行スレッド、プログラム、及び/またはコンピューターになり得るが、これらに限定されるものではない。例えば、コンピューティング装置で実行されるアプリケーションとコンピューティング装置は、両方ともコンポーネントになり得る。1つ以上のコンポーネントは、プロセッサー及び/または実行スレッドの中に常駐することができる。1つのコンポーネントは、1つのコンピューターの中でローカル化されることができる。1つのコンポーネントは、2つ以上のコンピューターに配分されることができる。また、このようなコンポーネントは、その内部に保存されている多様なデータ構造を持つ、多様なコンピューター可読媒体から実行することができる。コンポーネントは、例えば1つ以上のデータパケットを持つ信号(例えば、ローカルシステム、分散システムにおいて他のコンポーネントと相互作用する1つのコンポーネントからのデータ及び/または信号を通じて、他のシステムと、インターネットのようなネットワークを介して伝送されるデータ)によってローカル及び/または遠隔処理等を通じて通信することができる。
【0024】
以下の説明で用いられる構成要素に係る接尾語の「モジュール」及び「部」は、明細書作成を容易にするためだけの目的で付されたり、混用されるものであって、これらの接尾語自体がそれぞれ異なる特定の意味や役割を持つわけではない。
【0025】
また、本明細書において用いられる用語「情報」と「データ」は、しばしば相互置き換えできるように使うことができる。
【0026】
ある構成要素が他の構成要素に「つながって」いたり「連結されて」いたり、「接続して」いると記載された場合は、当該他の構成要素に直接つながっていたり、連結されていたり又は接続していることもあり得るが、その間に他の構成要素が存在することもあり得ると解釈されるべきである。一方、ある構成要素が他の構成要素に「直接つながって」いたり、「直接連結されていたり」、「直接接続して」いると記述されている場合は、その間に他の構成要素が存在しないと理解すべきである。
【0027】
用語「又は」は、排他的な「又は」ではなく、内包的な「又は」を意味する意図で使われる。つまり、特に特定されておらず、文脈上明確ではない場合、「XはA又はBを利用する」は、自然な内包的置換のうち1つを意味するものとする。つまり、XがAを利用したり;XがBを利用したり;又はXがA及びBの両方を利用する場合、「XはA又はBを利用する」は、これらのいずれにも当てはまるとすることができる。また、本明細書における「及び/又は」という用語は、取り挙げられた複数の関連アイテムのうち、1つ以上のアイテムの可能なすべての組み合わせを指し、含むものと理解される。
【0028】
また、述語としての「含む(含める)」及び/又は修飾語としての「含む(含める)」という用語は、当該特徴及び/又は構成要素が存在することを意味するが、1つ以上の他のさらなる特徴、構成要素及び/又はこれらのグループの存在又は追加を排除しないものと理解される。また、特に数が特定されていない場合や、単数の形を示すことが文脈上明確でない場合、本明細書と請求範囲において単数は、一般的に「1つ又はそれ以上」を意味するものと解釈されるべきである。
【0029】
以下において、図面の符号と関係なく同一又は類似の構成様相に対しては同一の参照番号を付し、それに係る重複する説明は省略する。さらに、本明細書に開示されている実施例を説明する際、それに係る公知の技術に関する具体的な説明が本明細書に開示されている実施例の要旨を不明確にする可能性があると判断される場合は、その詳細な説明を省略する。さらに、添付の図面は、本明細書に開示されている実施例に対する理解を容易にするためのものに過ぎず、添付の図面によって本明細書に開示されている技術的思想が制限されるわけではない。
【0030】
そして、「A又はBのうち少なくとも1つ」という用語については、「Aだけを含む場合」、「Bだけを含む場合」、「AとBの組み合わせの場合」を意味するものと解釈されたい。
【0031】
当業者は、さらに、ここに開示される実施例に係るものとして説明された多様な例示的論理的ブロック、構成、モジュール、回路、手段、ロジック及びアルゴリズム段階が、電子ハードウェア、コンピューターソフトウェア、またはその両方の組み合わせによって実現されることができることを認識すべきである。ハードウェアとソフトウェアとの相互交換性を明確に例示するために、多様な例示的コンポーネント、ブロック、構成、手段、ロジック、モジュール、回路及び段階が、それらの機能性の側面で一般的に上述された。そのような機能性がハードウェアとしてまたはソフトウェアとして実装されるか否かは、全般的なシステムに係る特定のアプリケーション(application)及び設計制限によって決まる。熟練した技術者は、個々の特定アプリケーションのために多様な方法で説明された機能性を実現できる。ただし、そのような実現に係る決定が本開示内容の領域を逸脱するものと解釈されてはならない。
【0032】
ここに示す実施例に係る説明は、本開示の技術分野において通常の知識を持つ者が本発明を利用したり、または実施できるように提供される。このような実施例に対する多様な変形は、本開示の技術分野において通常の知識を持つ者には明確に理解できるものである。ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施例に適用されることができる。従って、本発明はここに示す実施例だけに限定されるものではない。本発明はここに示す原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。
【0033】
以下に、
図1乃至
図8を用いて、本開示においてコンピューティング装置が原本データを抽出して出力する方法について説明する。
【0034】
図1は、本開示の一実施例におけるコンピューティング装置を説明するためのブロック構成図である。
【0035】
図1に図示されたコンピューティング装置(100)の構成は、簡略化して示した例示に過ぎない。本開示の一実施例において、コンピューティング(100)には、コンピューティング装置(100)のコンピューティング環境を実装するための他の構成が含まれることが可能であり、開示されている構成のうち一部だけでコンピューティング装置(100)を構成することも可能である。
【0036】
コンピューティング装置(100)は、プロセッサー(110)、メモリー(130)、ネットワーク部(150)を含むことができる。
【0037】
プロセッサー(110)は、1つ以上のコアで構成されることが可能であり、コンピューティング中央処理装置(CPU:central processing unit)、汎用グラフィック処理装置(GPGPU:general purpose graphics processing unit)、テンサー処理装置(TPU:tensor processing unit)等のデータ分析、ディープラーニングのためのプロセッサーを含むことができる。
【0038】
本開示の一実施例において、メモリー(130)は、プロセッサー(110)が生成したり、決定した任意の形態の情報及びネットワーク部(150)が受信した任意の形態の情報を保存することができる。
【0039】
本開示の一実施例において、メモリー(130)は、フラッシュメモリータイプ(flash memory type)、ハードディスクタイプ(hard disk type)、マルチメディアカードマイクロタイプ(multimedia card micro type)、カードタイプのメモリー(例えばSD又はXDメモリー等)、ラム(Random Access Memory、RAM)、SRAM(Static Random Access Memory)、ロム(Read-Only Memory、ROM)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、PROM(Programmable Read-Only Memory)、磁気メモリー、磁気ディスク、光ディスクのうち少なくとも1つのタイプの保存媒体を含むことができる。コンピューティン装置(100)は、インターネット(internet)上で前記メモリー(130)の保存機能を実行するウェブストレージ(web storage)と連携して動作することも可能である。前述のメモリーに係る記述は、例示に過ぎず、本開示はこれらに限定されない。
【0040】
本開示の一実施例におけるネットワーク部(150)は、公衆電話交換網(PSTN:Public Switched Telephone Network)、xDSL(x Digital Subscriber Line)、RADSL(Rate Adaptive DSL)、MDSL(Multi Rate DSL)、VDSL(Very High Speed DSL)、UADSL(Universal Asymmetric DSL)、HDSL(High Bit Rate DSL)及び近距離通信網(LAN)等のような多様な有線通信システムを使用することができる。
【0041】
また、本明細書におけるネットワーク部(150)は、CDMA(Code Division Multi Access)、TDMA(Time Division Multi Access)、FDMA(Frequency Division Multi Access)、OFDMA(Orthogonal Frequency Division Multi Access)、SC-FDMA(Single Carrier-FDMA)及びその他のシステムのような多様な無線通信システムを利用することができる。
【0042】
本開示におけるネットワーク部(150)は、有線及び無線等のような通信の様態を問わずに構成されるとができ、短距通信網(PAN:Personal Area Network)、近距離通信網(WAN:Wide Area Network)等の多様な通信網になり得る。また、上記ネットワークは、公知のワールドワイドウェブ(WWW:World Wide Web)になり得る他、赤外線(IrDA:Infrared Data Association)又は、ブルートゥース(登録商標:Bluetooth)のように、短距離通信に利用される無線伝送技術を利用することもできる。
【0043】
本明細書において説明された技術は、上記のネットワークだけでなく、他のネットワークで使われることもできる。
【0044】
図2は、本開示の一実施例において原本データを抽出して出力する方法を説明するためのフローチャートである。
【0045】
図2に示す内容を参照すると、本開示のコンピューティング装置は、原本データに係るデータ抽出関数を受信する段階(S100)、上記データ抽出関数に基づき構文(statement)を生成する段階(S200)、上記構文(statement)を実行してデータを抽出する段階(S300)、抽出されたデータを出力する段階(S400)を含むことが可能である。
【0046】
上記原本データに係るデータ抽出関数を受信する段階(S100)は、ユーザーインターフェース(UI)を介して、関数の形で入力されることが可能である。この場合、関数は、上記関数に変数が入力された状態の数式を含むことが可能である。一例として、上記ユーザーインターフェース(UI)は、原本データにおいてフィールドを選択するためのフィールド設定部、又は、データタイプを設定するためのデータ属性設定部において選択された、いずれか一つ以上の関数を含むことが可能であり、上記関数に設定値が入力された数式を含むことが可能である。また、上記ユーザーインターフェース(UI)は、原本データへのアクセス情報を入力するためのアクセス設定部をさらに含むことが可能である。上記ユーザーインターフェース(UI)が原本データを抽出するための方法については、
図5、
図6に示す内容に基づき後述する。
【0047】
また、上記関数は、モジュール化されたものになり得る。多少複雑になり得るデータ変換のためのプログラムを、上記モジュール化された関数で代替することが可能である。上記関数は、予め設定された規則に基づいて作成されることが可能であり、上記設定された規則はプログラム数式と同一の規則を含むことが可能である。
【0048】
一方、上記構文(statement)は、特定の作業を実行する特定の単位(例えば、1行)のコードである。一例として、上記構文(statement)は、変数に値を簡単に割り当てるものにもなり得るが、複数の演算及び関数を含む、より複雑な表現式にもなり得る。上記構文(statement)は、原本データのプログラム文法(syntax)に従うことが可能である。上記文法は、プログラミング言語の規則と構造を表すものであり、変数、演算子、制御構造の使用を含み、当該プログラミング言語でコードを作成する正しい方法を指定する。上記文法(syntax)は、原本データのプログラムの種類によって異なり、上記原本データのプログラムによってユーザーが習得しにくい場合があり、上記構文(statement)の生成が困難になる可能性がある。従って、上記モジュール化された関数を用いる場合、原本データのプログラムを問わず、抽象化された形で、ユーザーが便利に原本データを扱うことが可能である。
【0049】
上記データ抽出関数に基づき構文(statement)を生成する段階(S200)において、まず、コンピューティング装置(100)は、上記データ抽出関数が構文(statement)生成部に送られる前に、ヘッダーを含むマクロ定義(defining macro)及び特定の構成の拡張(expanding certain construct)のような作業を含む、前処理(preprocessing)を行うことが可能である。次に、コンピューティング装置(100)は、ソースコードを読み取って、上記抽出関数を一連の各トークンに分解する。ここで、上記トークンは、キーワード、識別子、文章符号等のように、上記抽出関数に含まれている単一の要素を指す。次に、コンピューティング装置(100)は、上記抽出関数から文法上の誤り(syntax error)を確認し、抽象構文木(AST)という、ツリーのような構造を作り、プロセッサー(110)が理解しやすいように変換する。次に、コンピューティング装置(100)は、変数が宣言される前に使用したり、間違った引数でモジュールを呼び出すことのような意味論的な誤りについて抽出関数を検査し、上記ASTを原本データのプログラムにおいて実行できる構文(statement)に変換する過程を含むことが可能である。つまり、抽象化された抽出関数を、ループと条件文とクエリとのうちいずれか1つ以上のように、原本データのプログラムが実行可能な下位レベルの構文(statement)に変換することが可能である。この場合、上記変換過程において、データの原本において用いることの可能なインデックス又はその他の性能向上を活用するようにクエリを最適化したり、クエリをより小さいパーツに分けて別途実行する作業が含まれることが可能である。上記最適化作業には、原本データにおいて用いることの可能なインデックス又はその他の性能向上を活用するようにクエリを最適化したり、クエリをより小さいパーツに分ける作業が含まれることが可能である。
【0050】
上記構文(statement)を実行してデータを抽出する段階(S300)は、上記構文が原本データにアクセスして上記原本データを管理するプログラムによって実行されることが可能である。また、コンピューティング装置(100)は、上記構文(statement)を実行する過程において用いられることの可能な全ての記号又は参照を確認し、それを準備することが可能である。一例として、上記構文(statement)は、データベース管理システム(DBMS)によって実行され、原本データは、リレーショナルデータベースに含まれているものになり得る。つまり、上記構文(statement)は、SQLクエリ構文のようなデータベースクエリ構文(query statement)になり得る。コンピューティング装置(100)において、応用プログラムがまずデータの原本の名前、ユーザーの名前、暗号(必要な場合)を指定する連結文字列を用いて原本データへの連結を作る。連結が設定されるとデータベース管理システムは、API等の形態で、原本データに対してSQLクエリ構文を実行することが可能である。上記応用プログラムを通じて、本開示の抽出関数に基づき、生成されていたSQLクエリ構文を実行し、結果を検索し、トランザクションを管理することが可能である。
【0051】
この場合、上記応用プログラムは、SQLクエリ構文を分析し、原本データの基本形に対して実行する最も効率的な方法を再決定し、クエリを処理することが可能である。一例として、原本データにおいて用いることの可能なインデックス又はその他の性能向上を活用するようにクエリを最適化したり、クエリをより小さいパーツに分けて別途実行する作業が含まれることが可能であるが、これは上記段階S200において最適化された構文が生成された場合、省略されることが可能である。また、上記応用プログラムは、誤り検査を処理し、クエリ実行中に発生した全ての誤りが、応用プログラムに正しい形で報告されるようにすることが可能である。
【0052】
上記抽出されたデータを出力する段階(S400)において、一例として、SQLクエリ構文を実行した結果として抽出されたデータは、クライアントプログラムに返される。その後、クライアントプログラムは、結果を画面に表示したり、他の方式で処理することが可能である。結果が画面に表示される具体的な方法は、使用中のクライアント応用プログラムによって異なる。一例として、クライアントプログラムがコマンドラインインターフェース(CLI:Command Line Interface)である場合、結果がターミナルに表の形式で表示されることが可能であるが、上記クライアントプログラムが、ウェブブラウザーにおいて実行されるもののようなグラフィックユーザーインターフェース(GUI:Graphical User Interface)である場合、結果は画面の表又はその他の視覚的表現で表示されることが可能であり、ユーザーは上記グラフィックユーザーインターフェース(GUI:Graphical User Interface)を便利に利用することが可能である。
【0053】
図3は、本開示の一実施例においてコンピューティング装置の第1プログラムにおけるデータセットを第2プログラムにおいて出力する方法を示すフローチャートである。
【0054】
図3に示す内容を参照すると、本開示のコンピューティング装置は、データセットに係る第1ユーザー入力を受信する段階(S110)、第1プログラムにおける上記データセットを定義するための第2ユーザー入力を受信する段階(S210)、上記第2ユーザー入力を実行して上記データセットを取得する段階(S310)、上記データセットを第2プログラムにおいて出力する段階(S410)を含むことが可能である。
【0055】
上記データセットに係る第1ユーザー入力を受信する段階(S110)において、コンピューティング装置は、第1プログラムにおいて提供される第1ユーザーインターフェースにおいて第1ユーザー入力を受信することが可能である。一例として、ユーザー端末は、タッチスクリーン又は任意の形態のディスプレイ部を利用して、ユーザーが求めるアプリケーション又はアプリケーションの機能を実行するためのオブジェクトを含む第1ユーザーインターフェースを出力することが可能である。この場合、ユーザー端末に表示されたタブ又はアイコンを含むオブジェクトが選択された場合、ユーザー端末は選択された動作に対応するアプリケーション又はアプリケーションの機能を実行することが可能である。本開示内容の一実施例において、少なくとも1つのオブジェクトを含む画面、領域、識別情報、インジケーター、入力ウィンドウ、モジュール及び/又はタブ等がユーザーインターフェースを構成することが可能である。一例として、上記第1プログラムはスプレッドシートの形であることが可能であり、上記ユーザーインターフェースは1つ又は複数のセルを含むことが可能である。
【0056】
上記第1プログラムにおける上記データセットを定義するための第2ユーザー入力を受信する段階(S210)において、コンピューティング装置は、上記段階S110において取得された第1ユーザー入力に含まれている第1領域の識別情報のうち少なくとも一部と対応するように、データセットの識別情報を定義するための第2ユーザー入力を第1ユーザーインターフェースを介して受信することが可能である。例えば、第1領域の識別情報は、第1領域の名称と、第1領域が上記第1プログラムから第2プログラムにローディングされることを示すための第1インジケーターを含むことが可能であり、第1領域の識別情報は、第1インジケーターと識別子、データセットの名称をさらに含むことが可能である。上記第1領域の名称及び第1領域のインジケーターが指定される場合、コンピューティング装置は、第1プログラムにおける特定のデータセットが、第2プログラムにローディングされることを認識することが可能である。さらに、第1領域の識別情報は、第1領域を識別又は定義するための任意の形態の情報を意味することが可能である。
【0057】
上記第2ユーザー入力は、多様な上記第1データを抽出するための多様な設定と関連するものになり得る。一例として、上記第2ユーザー入力は、指定されたデータセット名、経路、アクセス権限、フィールド情報のうち少なくとも1つを含むことが可能である。また、上記第2ユーザー入力は、構文作成に係るカラムを設定したり、レコード条件を指定するためのものになり得る。一例として、上記原本データと出力データとで、カラムの順番が変更されたり、カラム名が異なる場合にも、上記データセットの文法(syntax)に合ったデータクエリ構文(data query statement)が実行されるようにすることが可能である。また、上記第2ユーザー入力は、さらに、上記出力データに対するアノテーション(annotation)を表示することが可能である。
【0058】
上記第2ユーザー入力を実行して上記データセットを取得する段階(S310)において、コンピューティング装置は、スプレッドシートモジュールにおける特定の複数のデータの範囲を設定し、当該範囲について上記のような第2プログラムの識別情報の入力を受ける場合、上記第2プログラムの識別情報と上記第1プログラムの識別情報との比較を通じて、上記データセットを第2プログラムにローディングさせることが可能である。また、上記第2プログラムにおいては、識別情報及び/又は範囲に係る情報等のようなデータの名称、範囲等を識別するための任意の形態の追加情報を含むメタデータを追加で受信することが可能であり、上記メタデータは、メタ入力オブジェクトを生成することが可能である。
【0059】
また、上記データセットを第2プログラムにおいて出力する段階(S410)において、第2プログラムにおいてローディングされ出力されるデータセットに含まれている各々のデータの出力サイズを決定したり、配置を変更することが可能である。上記データセットは、メタデータ又はデータを照会した結果によって変更されることが可能であり、予め決められた数式(OFFSET、COUNTA等)等を含むことが可能である。上記第2プログラムは、スプレッドシートモジュールに含まれているものになり得るが、それによって、上記予め決められた数式は商用のスプレッドシートにおいて一般的に用いられている関数と同一又は類似のものに設定されたものになり得る。また、上記第2プログラムに出力されるデータは、上記データを照会したアカウントのデータへのアクセス権限によっても多様な形に設定されることが可能である。
【0060】
上記例示において、第2プログラムは、固定された画面に出力されることが可能であるため、上記データセットの出力範囲によって、含まれているデータの各々のサイズ及び位置が変更されることが可能である。上記第2プログラムは、上記データセットが出力されるディスプレイの大きさを確認し、上記データセットが配置される空間に適合した表現方法又は配列方法を選択することが可能である。上記表現方法又は配列方法が決定された場合、上記第2プログラムは、使用可能な空間に適合したテーブル、リスト又はその他の形式にデータを表示することが可能である。それに加えて、上記第2プログラムは、持続的に大きさをモニタリングし、使用するディスプレイの大きさが変更された場合、データの集合が最適な状態で表示されるように必要に応じてデータの表現方法又はデータの配列を調整することが可能である。上記出力形態は、ユーザーが、出力されるデータの項目を決定できるようにすることが可能である。また、上記第2プログラムは、データの表現方法やデータの配列を調整できる別途のプログラムモジュールを統合して含め、データセットが使用可能な空間において最適な方式で表示されるようにすることが可能である。
【0061】
また、上記出力の形態は、コンボボックス及びマルチコンボボックス、テキスト情報を含むテキストボックス、日付情報を含むカレンダー等によって多様な形態に変化することが可能である。一例として、第3領域において特定の年度が入力された場合、第1プログラムのデータセットにおいて特定の年度に対応する複数のデータが、第2プログラムにおいてローディングされ出力されることが可能である。
【0062】
一例として、また、第2プログラムにおいては、データセットとともに出力される追加情報と、上記データセットに係る原本データとが、互いに連動しない場合がある。この場合、コンピューティング装置(100)は、上記原本データの情報を変化させたり、SQLクエリ構文を複雑に変更することなく、上記第2プログラムに追加情報を出力することが可能である。
【0063】
図4及び
図5は、本開示の一実施例に基づくスプレッドシートモジュールが原本データにアクセスして第1データを出力する方法を説明するためのフローチャート及び信号フローチャートである。
【0064】
図4及び
図5に示す内容を参照すると、本開示のコンピューティング装置は、スプレッドシートモジュールがデータ抽出関数のパラメータを受信する段階(S120)、原本データにアクセスするための第1構文を生成する段階(S220)、上記原本データから第1データを取得する段階(S320)、上記スプレッドシートモジュールを通じて第1データを出力する段階(S420)を含むことが可能である。
【0065】
上記原本データは、リレーショナルデータベースに含まれているものになり得るが、一例として、上記データベースは、ORACLE(オラクル)、PostgreSQL(ポストグレスキューエル)、MySQL、SQL Server(MS-SQL)、SQLiteのうち少なくとも1つのリレーショナルデータベース管理システム(RDBMS)により制御されるものになり得る。
【0066】
上記スプレッドシートモジュールがデータ抽出関数のパラメータを受信する段階(S120)において、上記スプレッドシートモジュールは、上記データ抽出関数のパラメータを第1インターフェースから受信することが可能である。上記パラメータは、第1アクセス設定情報及び第1構文設定情報を含むことが可能である。上記第1アクセス設定情報は、関連する1つ又は複数のデータベース名、データベースの種類、一連番号、データベースへの経路又はアクセス権限、上記データベースに含まれているオブジェクトテーブルに係る一連番号、上記オブジェクトテーブルに係るフィールドの数又はアクセス権限のうち少なくとも1つに係る設定を含むことが可能である。
【0067】
原本データにアクセスするための第1構文を生成する段階(S220)において、上記スプレッドシートモジュールが第1構文に対応する、上記データベース管理システム(RDBMS)に係る設定を行う場合、上記データベースの種類に応じて、文法(syntax)に沿った、当該データベースに合わせた構文(statement)が生成されることが可能である。一例として、ユーザーは、本開示を通じて、データベースの種類を問わず、スプレッドシートモジュールが提供するユーザーインターフェース(UI)において提供する抽象化された数式を用いて便利に構文を生成することが可能である。上記第2ユーザー入力が表示されるユーザーインターフェース(UI)は、スプレッドシート上のセルに表示されることが可能であり、ユーザーによって確認及び制御されることが可能である。
【0068】
また、上記スプレッドシートモジュールは、上記構文が生成、読み取り、更新、削除(Create、Read、Update、Delete;CRUD)のうちいずれか一つ以上の動作を行うSQLクエリ構文と関連するものになり得る。この場合、上記SQLクエリ構文は、挿入(Insert)、更新(Update)、削除(Delete)のうちいずれか1つの命令に係る信号であることが可能であり、上記信号は、上記SQLクエリ構文の名称又は略語としてレッドシートのセルに入力されたり表示されることが可能である。一例として、上記表示は、下記表1のように表すことが可能である。
【0069】
【0070】
また、上記第2ユーザー入力は、構文作成に係るカラムを設定したり、レコード条件を指定するためのものになり得る。一例として、上記原本データと出力データとで、カラムの順番が変更されたり、カラム名が異なる場合にも、SQLクエリ構文が実行されるようにすることが可能である。また、上記第2ユーザー入力は、上記出力データに対するアノテーションを表示することが可能である。
【0071】
上記原本データから第1データを取得する段階(S320)において、上記第1データは、上記第1構文に基づいて取得されることが可能である。一例として、上記第1構文は、スプレッドシート文書で表現されるモデルに係る原本データリストを検索することが可能である。それを通じて、上記第1構文は、クライアントから出力するために送信される第1データを要請することが可能である。この場合、上記スプレッドシートモジュールは、スタイル制御関数を通じて上記原本データを出力するために指定されたセルの値を編集するためのユーザーインターフェースの構成要素を提供することが可能である。上記スタイル制御関数が第1データを出力するために含む構成は、
図6に示す内容を参照して後述する。
【0072】
上記スプレッドシートモジュールを通じて第1データを出力する段階(S420)において、上記スプレッドシートモジュールは、上記データ抽出関数又は上記スタイル制御関数によって、上記原本データの出力が行われることが可能である。
【0073】
一例として、上記スプレッドシートモジュールの上記スタイル制御関数によって生成されたテンプレート文書は、報告書に用いる形式であることが可能であり、サーバーに保存されたり、クライアントにダウンロードされた上記テンプレート文書は、上記スタイル制御関数のパラメータによって上記第1データが配置され、出力されることが可能である。従来は、データベース上のデータをテンプレートに出力するためには、別途のSQLクエリ構文に係る専門知識が必要であり、データ検索のための知識も別途持つ必要があった。また、データベースコネクターを使用するための接続も別途設定する必要がある。しかし、本開示のスプレッドシートモジュールを活用する場合、かかるSQLクエリ構文又はデータベースコネクターを別途設定するための時間及び費用を節減できる。
【0074】
また、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記画像保存経路情報に基づき、上記画像を取得する段階及び上記画像を規格に合う画像に変換してスプレッドシートに表示する段階をさらに含むことが可能である。
【0075】
また、本開示のスプレッドシートモジュールは、画像キーバリューが付与された画像に係る画像リストを含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記第1データの画像と上記画像リストとを比較することが可能である。また、本開示のスプレッドシートモジュールは、上記第1データの画像が上記画像リストに含まれている画像のうちいずれか1つの画像に該当する場合、上記第1データの画像を上記画像リストに基づきスプレッドシートに表示する段階をさらに含むことが可能である。
【0076】
一方、本開示は、上記スプレッドシートに表示されている上記第1データを変更する段階をさらに含むことが可能である。上記第1データを変更する段階は、画面における上記第1データが出力される領域を確認し、上記フィールドの値に係る情報及び上記出力される領域に係る情報に基づき、上記データレコード配置情報を算出する段階をさらに含むことが可能である。
【0077】
また、上記第1データを変更する段階において、キャッシュ関数を生成して変更処理速度の効率を高めることが可能である。具体的には、上記第1データを変更する段階において、上記第1データを修正して第2データを生成し、上記第2データに基づいてキャッシュ関数を生成することが可能である。次に、上記キャッシュ関数に基づき、上記スプレッドシートモジュールを通じて上記第2データを出力する段階をさらに含むことが可能である。この場合、上記第1データを修正して第2データを生成する段階は、上記第1データのうち、予め設定された項目についてのみ修正ができるようにすることで、不要なデータ変更が行われることを防ぐことが可能である。また、上記第2データに基づき、キャッシュ関数を生成するために、上記第2データにおける被参照領域が修正される場合、上記被参照領域を参照する他の領域又は上記被参照領域を修正する段階を含むことが可能である。この場合、上記変更する段階において、上記第2データのうち更新が必要なデータが自動的に最新の状態を維持することが可能である。
【0078】
また、上記第1データを変更する段階は、上記キャッシュ関数に基づき、上記データベースの上記第1データを上記第2データに更新するための第2構文を生成する段階を含むことが可能である。次に、上記第2構文を用いて上記データベースを更新する段階を含むことが可能である。上記第2構文は、スプレッドシートモジュールにユーザーが入力する関数に基づき、変更しようとするデータベースの種類によって自動的に生成されることが可能であり、ユーザーが別途データベースにおける構文を学習することなく、第2構文を生成することが可能である。
【0079】
図6は、本開示の一実施例におけるデータ抽出関数のパラメータ及びスタイル制御関数のパラメータを含むスプレッドシートモジュールを説明するための概念図である。
【0080】
図6に示す内容を参照すると、本開示のスプレッドシートモジュール(210)は、原本データを含むデータベースにアクセスし、出力のための形態である第1データに加工するためのものになり得る。また、上記スプレッドシートモジュール(210)は、データ抽出関数(400)及びスタイル制御関数(500)を含むことが可能である。
【0081】
上記原本データにアクセスするために、プロセッサーは上記データ抽出関数(400)のパラメータに基づき、第1構文を生成することが可能である。一例として、上記データ抽出関数(400)は、原本データの全部又は一部を含むことが可能である。また、上記データ抽出関数(400)のパラメータは、上記データカラム名に係る情報、データの属性に係る情報、データフィールドの選択に係る情報、データ照会権限に係る情報のうち、少なくとも1つを含むことが可能である。
【0082】
また、上記スプレッドシートモジュール(210)は、上記スタイル制御関数(500)を通じて、上記原本データが出力される書式を加工することが可能である。上記スタイル制御関数(500)は、管理者側の作業ウィンドウインターフェースのような第1インターフェースにより制御されることが可能である。または、上記スタイル制御関数(500)は、クライアント側のアプリケーションに含まれている第2インターフェースにより制御されることが可能である。一方、上記スタイル制御関数(500)に係るユーザーインターフェース設定関数は、予め設定された条件を満たしている場合、第2プログラムに表示されることが可能であるが、上記表示方法は、
図7に示す内容に基づき後述する。
【0083】
上記スタイル制御関数(500)のパラメータは、上記スプレッドシートに含まれているデータレコード配置情報(510)、データ演算情報(520)、画像情報(530)、セルスタイル情報(540)又は繰り返し使用するセルスタイル情報(550)のうち少なくとも1つを含むことが可能である。他の例として、上記スタイル制御関数(500)のパラメータは、セル統合情報、条件付き書式情報、チャート作成情報のうち、少なくとも1つをさらに含むことが可能である。また、上記データ演算情報(520)は、上記データ抽出関数に基づき、上記スプレッドシートモジュールに含まれている数式の入力値を繰り返し指定することが可能である。
【0084】
上記データレコード配置情報(510)は、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに出力することが可能である。そのために、画面における上記第1データが出力される領域を確認し、フィールド値のような上記データに係る情報及び上記出力される領域に係る情報に基づき、上記データレコード配置情報を算出することが可能である。
【0085】
また、上記データ演算情報(520)は、上記データ抽出関数に基づき、上記スプレッドシートモジュールに含まれている数式の入力値を繰り返して指定する繰り返し演算情報を含むことが可能である。上記繰り返し演算情報は、
図7に示す内容に基づき後述する。
【0086】
また、上記第1データの画像に係る画像情報(530)は、画像保存経路情報を含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記画像保存経路情報に基づき、上記画像を取得する段階を含むことが可能である。また、上記第1データをスプレッドシートに表示する段階は、上記画像を規格に合う画像に変換してスプレッドシートに表示する段階を含むことが可能である。
【0087】
また、上記第1データの画像に係る情報は、画像保存経路情報を含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記画像保存経路情報に基づき、上記画像を取得する段階、上記画像を規格に合う画像に変換してスプレッドシートに表示する段階を含むことが可能である。
【0088】
また、本開示のスプレッドシートモジュールは、画像キーバリューが付与された画像に係る画像リストを含み、上記第1データに基づき、スタイル制御関数のパラメータを通じて、上記第1データをスプレッドシートに表示する段階は、上記第1データの画像と上記画像リストとを比較する段階を含むことが可能である。次に、上記第1データの画像が上記画像リストに含まれている画像のうちいずれか1つの画像に該当する場合、上記第1データの画像を上記画像リストに基づきスプレッドシートに表示することが可能である。一方、上記第1データの画像が上記画像リストに含まれていない場合、上記第1データの画像に新しい画像キーバリューを付与したり、上記第1データの画像を上記画像リストに含めることが可能である。
【0089】
上記第1データの画像が上記画像リストに含まれていない場合のみデータベースに追加されるようにすることで、上記データベースの空き容量をより多く確保できるだけでなく、重複する画像データを最小化し、上記画像データの活用を最大化することが可能である。
【0090】
また、上記第1データが修正された第2データを生成する段階において、上記第1データの画像が取り替えられた場合、コンピューティング装置は、上記第2データの画像と画像リストとを比較することが可能である。次にコンピューティング装置は、上記第2データの画像が上記画像リストに含まれている画像のうちいずれか1つの画像に該当する場合、上記画像リストに基づきキャッシュ関数を生成し、上記キャッシュ関数に基づきスプレッドシートに表示することが可能である。
【0091】
反対に、上記画像が取り替えられるときに、上記第2データの画像が上記画像リストに含まれているかいなかを確認することが可能である。上記第2データの画像が上記画像リストに含まれていない場合、上記第2データの画像に新しい画像キーバリューを付与し、上記第2データの画像を上記画像リストに含めることが可能である。
【0092】
上記第2データの画像が上記画像リストに含まれていない場合のみデータベースに追加されるようにすることで、上記データベースの空き容量をより多く確保できるだけでなく、重複する画像データを最小化し、上記画像データの活用を最大化することが可能である。
【0093】
一方、スプレッドシートモジュールが第1データを出力するとき、上記セルスタイル情報(540)に基づき、出力される全体のテンプレートを設定することが可能である。また、上記繰り返し使用するセルスタイル情報(550)は、データレコードにおいて繰り返されるセルについて、上記データレコードが上記スプレッドシートモジュールに繰り返し出力されるようにすることが可能である。
【0094】
図7は、本開示の一実施例におけるスプレッドシートモジュールに含まれている数式の入力値を繰り返して指定する方法を説明するための概念図である。
【0095】
図7に示す内容によると、本開示の一実施例におけるスプレッドシートモジュールに含まれている上記データ演算情報(520)を繰り返し指定するために、上記繰り返し指定するセル演算情報(551)をさらに含むことが可能であり、それを通じて、別途テンプレートセルに係る設定を行うことなく、スプレッドシートモジュールが繰り返し数式を出力することが可能である。
【0096】
図8は、本開示内容の実施例が具現化されることが可能である、例示的なコンピューティング環境に係る一般的な概略図である。
【0097】
図8に係る記載を参照すると、上記コンピュータープログラムは、1つ以上のプロセッサーによって実行される場合、原本データを抽出して出力する動作を行うようにすることが可能である。
【0098】
本開示の一実施例によると、上記動作は、上記1つ以上のプロセッサーに、データをスプレッドシートに表示するための動作を実行させるために、データベースから画像を含む第1データを取得する動作;及び上記第1データに基づき、スプレッドシートモジュールを通じて、上記第1データをスプレッドシートに表示する動作;を含むことが可能である。
【0099】
本開示の他の実施例によると、上記動作は、上記1つ以上のプロセッサーに、データをスプレッドシートに出力するための動作を実行させるために、スプレッドシートモジュールがデータ抽出関数のパラメータを受信する動作;上記データ抽出関数のパラメータに基づき、データベースにアクセスするための第1構文を生成する動作;上記第1構文を用いて上記データベースから第1データを取得する動作;及び上記データ抽出関数のパラメータに基づき上記スプレッドシートモジュールを通じて上記第1データを出力する動作;を含むことが可能である。
【0100】
本開示のさらに他の実施例によると、本開示は、スプレッドシート文書で表現されるモデルに係る1つ以上の媒介変数リストを発見し編集するためのコンピューターにおける具現化方法に関するものになり得る。この方法は、ディスプレイ装置に表示されるスプレッドシート文書を送信するようにウェブベースのスプレッドシートサーバーに要請することを含む。スプレッドシート文書には、モデルに係る媒介変数として指定されたセルの第1下位グループと媒介変数として指定されていないセルの第2下位グループが含まれる。この方法は、モデルに係る1つ以上の媒介変数リストを検索し、リストの媒介変数に該当する第1下位グループのセルにおいて値を編集するためのユーザーインターフェース(UI)の構成要素を表示する段階を含む。この方法は、また、アプリケーションプログラミングインターフェース(API)を通じて媒介変数リストを発見し、一般的にスプレッドシート文書に隣接したUI構成要素を表示し、UI構成要素を通じて媒介変数リストを要請する段階を含むことが可能である。媒介変数リストは、ユーザーから入力を受信するために、関連するユーザーインターフェースの制御領域において媒介変数の名前として表示されることが可能である。この方法は、また、関連するユーザーインターフェース(UI)の制御を通じて、媒介変数に係る新しい値を入力することで、媒介変数リストの媒介変数を編集することを含むことが可能である。
【0101】
本開示のさらに他の実施例によると、本開示は、ウェブベースのスプレッドシートサービスを通じてスプレッドシート文書で表現されるモデルに係る媒介変数を発見し編集するためのコンピューターにおける具現化方法を説明しているが、この方法は、スプレッドシート文書がサーバーに送信され、クライアントのディスプレイ装置においてレンダリングされるように要請することと関連するものである。文書は、媒介変数として指定されたセルの第1下位グループと媒介変数として指定されていないセルの第2下位グループとを含む。この方法は、モデルに係る1つ以上の媒介変数リストを検索する段階と、媒介変数に該当するセルの第1下位グループにあるセルの値を編集するためのユーザーインターフェースの構成要素を表示する段階を含む。
【0102】
また、本開示は、アプリケーションプログラミングインターフェースを通じて媒介変数リストを発見したり、ユーザーインターフェースの構成要素を通じて媒介変数リストを要請することを含むことが可能である。媒介変数リストは、ユーザーから入力を受信するためのユーザーインターフェースの制御領域において、媒介変数の名前として表示されることが可能である。この方法は、また、ユーザーインターフェースの構成要素を通じて、セルの第1サブセットに対応するセルに新しい値を入力することでリストの媒介変数を編集することを含むことが可能である。
【0103】
一方、ユーザーインターフェースの構成要素は、スプレッドシート文書に隣接したところに表示されることが可能であり、ユーザーから入力を受信するための、ユーザーインターフェースコントロールを含むことが可能である。また、本開示のコンピューティング環境を通じてリストから媒介変数を選択し、ユーザーインターフェースコントロールを通じて新しい値を入力して特定の媒介変数を編集することが可能である。プロセスは、また、新しい媒介変数の値を用いてモデルを更新し、更新された媒介変数に基づいてモデルを再計算することを含むことが可能である。
【0104】
また、本開示の一実施例に基づき、データ構造を保存したコンピューター可読媒体が開示される。
【0105】
データ構造は、データに対する効率的なアクセスと修正を可能にするデータの組織、管理、保存を意味することが可能である。データ構造は、特定の課題(例えば、最短時間でのデータ検索、データ保存、データ修正)を解決するためのデータの組織を意味することが可能である。データ構造は、特定のデータ処理機能をサポートするように設計された、複数のデータ要素間の物理的あるいは論理的関係と定義されることも可能である。複数のデータ要素間の論理的関係は、複数のユーザー定義のデータ要素間の連結関係を含むことが可能である。複数のデータ要素間の物理的関係は、コンピューター可読保存媒体(例えば、永久保存装置)に物理的に保存されている複数のデータ要素間の実際の関係を含むことが可能である。データ構造は、具体的にデータの集合、データ間の関係、データに適用できる関数や命令を含むことが可能である。効果的に設計されたデータ構造を活用することで、コンピューティング装置は、コンピューティング装置のリソースの使用を最低限に抑えながら、演算を行うことが可能である。具体的に、コンピューティング装置は、効果的に設計されたデータ構造を通じて、演算、読み取り、取り込み、削除、比較、交換、検索の効率を高めることが可能である。
【0106】
データ構造は、データ構造の形態を基準に、線形データ構造と非線形データ構造に分類されることが可能である。線形データ構造は、1つのデータの後にデータが1つだけ繋がっている構造になり得る。線形データ構造は、リスト(List)、スタック(Stack)、キュー(Queue)、デック(Deque)を含むことが可能である。リストは、内部的に順序が存在する一連のデータの集合を意味することが可能である。リストは、連結リスト(Linked List)を含むことが可能である。連結リストは、各々のデータがポインターを持ち、一列に繋がっている方式でデータが連結されているデータ構造になり得る。連結リストにおいて、ポインターは、次のデータや前のデータとの連結に係る情報を含むことが可能である。連結リストは、形態によって片方向連結リスト、双方向連結リスト、循環連結リストとして表現されることが可能である。スタックは、データへのアクセスに制限が付くデータ配列構造になり得る。スタックは、データ構造の片端でのみデータを処理(例えば、挿入又は削除)できる線形データ構造になり得る。スタックに保存されているデータは、後入れ先出しのデータ構造(LIFO-Last in First Out)になり得る。キューもデータへのアクセスに制限が付くデータ配列構造であるが、スタックとの違いは、先入れ先出しのデータ構造(FIFO-First in First Out)になっているということになり得る。デックは、データ構造の両端でデータを処理できるデータ構造になり得る。
【0107】
非線形データ構造は、1つのデータの後に複数のデータが繋がっている構造になり得る。非線形データ構造は、グラフ(Graph)データ構造を含むことが可能である。グラフデータ構造は、頂点(Vertex)と辺(Edge)で定義することが可能であり、辺は異なる2つの頂点を繋ぐ線を含むことが可能である。グラフデータ構造は、ツリー(Tree)データ構造を含むことが可能である。ツリーデータ構造は、ツリーに含まれている複数の頂点のうち、相異なる2つの頂点を繋ぐ経路が1つであるデータ構造になり得る。つまり、グラフデータ構造において、ループ(loop)を形成しないデータ構造になり得る。
【0108】
データ構造は、神経回路網に入力されるデータを含むことが可能である。神経回路網に入力されるデータを含むデータ構造は、コンピューター可読媒体に保存されることが可能である。神経回路網に入力されるデータは、神経回路網の学習過程において入力される学習データ及び/又は学習が完了した神経回路網に入力される入力データを含むことが可能である。神経回路網に入力されるデータは、前処理(pre-processing)を行ったデータ及び/又は前処理の対象となるデータを含むことが可能である。前処理は、データを神経回路網に入力するためのデータ処理過程を含むことが可能である。従って、データ構造は、前処理の対象となるデータ及び前処理により発生するデータを含むことが可能である。前述のデータ構造は、例示に過ぎず、本開示はこれらに限定されない。
【0109】
データ構造は、神経回路網の重みを含むことが可能である。(本明細書において、重みとパラメータは同一の意味を持つとみなすことが可能である)そして、神経回路網の重みを含むデータ構造は、コンピューター可読媒体に保存されることが可能である。神経回路網は、複数の重みを含むことが可能である。重みは、可変的なものになり得るが、神経回路網が求める機能を実行するために、ユーザー又はアルゴリズムに応じて可変することが可能である。例えば、1つの出力ノードに、1つ以上の入力ノードが、各々のリンクによって相互連結されている場合、出力ノードは、上記出力ノードに繋がっている入力ノードに入力された複数の値と、各々の入力ノードに対応するリンクに設定された重みとに基づき、出力ノードから出力されるデータの値を決定することが可能である。前述のデータ構造は、例示に過ぎず、本開示はこれらに限定されない。
【0110】
本開示が一般的にコンピューティング装置により具現化されることができると前述されているが、当業者であれば本開示が一つ以上のコンピューター上で実行されることのできるコンピューター実行可能命令及び/またはその他のプログラムモジュールと結合して及び/またはハードウェアとソフトウェアの組み合わせとして具現化されることができるということをよく理解できるだろう。
【0111】
一般的に、本明細書におけるモジュールは、特定のタスクを実行したり特定の抽象的なデータ類型を実装するルーティン、プログラム、コンポーネント、データ構造、その他等々を含む。また、当業者なら本開示の方法がシングルプロセッサーまたはマルチプロセッサーコンピューターシステム、ミニコンピューター、メインフレームコンピューターはもちろん、パーソナルコンピューター、ハンドヘルド(handheld)コンピューティング装置、マイクロプロセッサー基盤、またはプログラム可能な家電製品、その他等々(これらは、それぞれ1つ以上の関連する装置と繋がって動作することができる)をはじめとする、他のコンピューターシステムの構成によって実施されることができることをよく理解できるだろう。
【0112】
本開示において説明された実施例は、さらに、あるタスクが通信ネットワークを通じて繋がっている遠隔処理装置によって実行される分散コンピューティング環境で実施されることができる。分散コンピューティング環境において、プログラムモジュールは、ローカルや遠隔メモリー保存装置の両方に位置することができる。
【0113】
コンピューターは、多様なコンピューター可読媒体を含む。コンピューターによってアクセス可能な媒体はいずれもコンピューター可読媒体になり得るが、このようなコンピューター可読媒体は揮発性及び非揮発性媒体、一時的(transitory)及び非一時的(non-transitory)媒体、移動式及び非移動式媒体を含む。制限ではなく例として、コンピューター可読媒体は、コンピューター可読保存媒体及びコンピューター可読伝送媒体を含むことができる。コンピューター可読保存媒体は、コンピューター可読命令、データ構造、プログラムモジュール又はその他のデータのような情報を保存する任意の方法又は技術により実装される揮発性及び非揮発性媒体、一時的及び非一時的媒体、移動式及び非移動式媒体を含む。コンピューター可読保存媒体は、RAM、ROM、EEPROM、フラッシュメモリーまたはその他のメモリー技術、CD-ROM、DVD(digital video disk)またはその他の光ディスク保存装置、磁気カセット、磁気テープ、磁気ディスク保存装置またはその他の磁気保存装置、またはコンピューターによってアクセスされることができ、情報を保存するのに使われることのできる任意のその他の媒体を含むが、これに限定されない。
【0114】
コンピューター可読伝送媒体は、通常、搬送波(carrier wave)またはその他の伝送メカニズム(transport mechanism)のような被変調データ信号(modulated data signal)にコンピューター可読命令、データ構造、プログラムモジュールまたはその他のデータ等を実装し、すべての情報伝達媒体を含む。被変調データ信号という用語は、信号の中で情報をエンコードするように、その信号の特性のうち1つ以上を設定または変更した信号を意味する。制限ではなく例として、コンピューター可読伝送媒体は、有線ネットワークまたは直接配線接続(direct-wired connection)のような有線媒体、そして音響、RF、赤外線、その他の無線媒体のような無線媒体を含む。前述の媒体のいずれかによる任意の組み合わせもまたコンピューター可読伝送媒体の範囲に含まれるものとする。
【0115】
コンピューター(1102)を含む本開示の多様な側面を実現する例示的な環境(1100)が示されており、コンピューター(1102)は、処理装置(1104)、システムメモリー(1106)、システムバス(1108)を含む。システムバス(1108)は、システムメモリー(1106)(これに限定されない)をはじめとするシステムコンポーネントを処理装置(1104)につなげる。処理装置(1104)は、多様な商用プロセッサーのうち任意のプロセッサーになり得る。デュエルプロセッサーとその他のマルチプロセッサーアーキテクチャもまた処理装置(1104)として利用されることができる。
【0116】
システムバス(1108)は、メモリーバス、周辺装置バス、そして多様な商用バスアーキテクチャの中から、任意のものを使用するローカルバスにさらに相互連結されることのできる複数の類型のバス構造のうちいずれかになり得る。システムメモリー(1106)は、読み取り専用メモリー(ROM)(1110)やランダムアクセスメモリー(RAM)(1112)を含む。基本的な入出力システム(BIOS)は、ROM、EPROM、EEPROM等の非揮発性メモリー(1110)に保存され、このBIOSは、起動中の時等にコンピューター(1102)の中の複数の構成要素間の情報のやりとりをサポートする基本的なルーティンを含む。RAM(1112)は、またデータをキャッシュするための静的RAM等の高速RAMを含むことができる。
【0117】
コンピューター(1102)においては、また、内蔵型ハードディスクドライブ(HDD)(1114)(例えば、EIDE、SATA)(この内蔵型ハードディスクドライブ(1114)はまた適切なシャシー(図示は省略)の中で外付け型の用途で構成されることができる)、磁気フロッピーディスクドライブ(FDD)(1116)(例えば、移動式ディスケット(1118)から読み取ったりそれに書き込むためのものである)及び光ディスクドライブ(1120)(例えば、CD-ROMディスク(1122)を読み取ったり、DVD等のその他の高容量光媒体から読み取ったり、それに書き込むためのものである)を含む。ハードディスクドライブ(1114)、磁気ディスクドライブ(1116)及び光ディスクドライブ(1120)は、それぞれハードディスクドライブインターフェース(1124)、磁気ディスクドライブインターフェース(1126)及び光ドライブインターフェース(1128)によってシステムバス(1108)に繋がることができる。外付け型ドライブの実装のためのインターフェース(1124)は、例えば、USB(Universal Serial Bus)やIEEE1394インターフェース技術のうち、少なくとも1つまたはその両方を含む。
【0118】
これらのドライブ及びこれらに係るコンピューター可読媒体は、データ、データ構造、コンピューターで実行可能な命令、その他等々の非揮発性保存を提供する。コンピューター(1102)の場合、ドライブ及び媒体は、任意のデータを適切なデジタル形式に保存することに対応する。前述におけるコンピューター可読保存媒体に係る説明が、HDD、移動式磁気ディスク及びCDまたはDVD等の移動式光媒体について触れているが、当業者ならジップドライブ(zip drive)、磁気カセット、フラッシュメモリーカード、カートリッジ、その他などのコンピューターにより読み取り可能な他の類型の保存媒体もまた例示的な運営環境で使われることができ、さらに、このような媒体のうち任意のある媒体が、本開示の方法を実行するためのコンピューターで実行可能な命令を含むことができることをよく理解できるだろう。
【0119】
運営システム(1130)、1つ以上のアプリケーションプログラム(1132)、その他のプログラムモジュール(1134)及びプログラムデータ(1136)をはじめとする多数のプログラムモジュールが、ドライブ及びRAM(1112)に保存されることができる。運営システム、アプリケーション、モジュール及び/またはデータの全部またはその一部分がまたRAM(1112)にキャッシュされることができる。本開示が商業的に利用可能な様々な運営システムまたは複数の運営システムの組み合わせにより実装されることができることをよく理解できるだろう。
【0120】
ユーザーは、1つ以上の有線・無線の入力装置、例えば、キーボード(1138)及びマウス(1140)等のポインティング装置を通じてコンピューター(1102)に命令及び情報を入力することができる。その他の入力装置(図示は省略)としてはマイク、IRリモコン、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーン、その他等々があり得る。これら及びその他の入力装置が、よくシステムバス(1108)に繋がっている入力装置インターフェース(1142)を通じて処理装置(1104)に繋がることがあるが、並列ポート、IEEE1394直列ポート、ゲームポート、USBポート、IRインターフェース、その他等々のその他のインターフェースによって繋がることができる。
【0121】
モニター(1144)または他の類型のディスプレイ装置も、ビデオアダプター(1146)等のインターフェースを通じてシステムバス(1108)に繋がる。モニター(1144)に加えて、コンピューターは一般的にスピーカー、プリンター、その他などのその他の周辺出力装置(図示は省略)を含む。
【0122】
コンピューター(1102)は、有線及び/または無線通信による(複数の)遠隔コンピューター(1148)等の1つ以上の遠隔コンピューターへの論理的接続を利用し、ネットワーク化された環境で動作することができる。(複数の)遠隔コンピューター(1148)は、ワークステーション、サーバーコンピューター、ルーター、パーソナルコンピューター、携帯用コンピューター、マイクロプロセッサー基盤の娯楽機器、ピア装置またはその他の通常のネットワークノードになることができ、一般的にコンピューター(1102)について述べられた構成要素のうち、多数またはその全部を含むが、簡略化するために、メモリー保存装置(1150)のみ図示されている。図示されている論理的接続は、近距離通信網(LAN)(1152)及び/または、より大きいネットワーク、例えば、遠距離通信網(WAN)(1154)における有線・無線の接続を含む。このようなLAN及びWANのネットワーキング環境は、オフィスや会社では一般的なもので、イントラネット等の全社的コンピューターネットワーク(enterprise-wide computer network)を容易にし、これらはすべて全世界のコンピューターネットワーク、例えば、インターネットに繋がることができる。
【0123】
LANネットワーキング環境で使われるとき、コンピューター(1102)は、有線及び/または無線通信ネットワークインターフェース、または、アダプター(1156)を通じてローカルネットワーク(1152)に繋がる。アダプター(1156)は、LAN(1152)への有線または無線通信を容易にすることができ、このLAN(1152)は、また無線アダプター(1156)と通信するためにそれに設置されている無線アクセスポイントを含む。WANネットワーキング環境で使われるとき、コンピューター(1102)は、モデム(1158)を含むことができたり、WAN(1154)上の通信サーバーに繋がったり、またはインターネットを通じる等、WAN(1154)を通じて通信を設定するその他の手段を持つ。内蔵型又は外付け型、そして、有線または無線装置になり得るモデム(1158)は、直列ポートインターフェース(1142)を通じてシステムバス(1108)に繋がる。ネットワーク化された環境において、コンピューター(1102)について説明されたプログラムモジュールまたはその一部分が、遠隔メモリー/保存装置(1150)に保存されることができる。図示されたネットワーク接続が例示的なものであり、複数のコンピューター間で通信リンクを設定する他の手段が使われることができるということは容易に理解できることである。
【0124】
コンピューター(1102)は、無線通信で配置されて動作する任意の無線装置またはユニット、例えば、プリンター、スキャナー、デスクトップ及び/または携帯用コンピューター、PDA(portable data assistant)、通信衛星、無線で検出可能なタグに係る任意の装備または場所及、及び電話と通信する動作をする。これは、少なくともWi-Fi及びブルートゥース無線技術を含む。従って、通信は、従来のネットワークのように予め定義された構造であったり、単純に少なくとも2つの装置の間でのアドホック通信(ad hoc communication)になり得る。
【0125】
Wi-Fi(Wireless Fidelity)は、有線で繋がっていなくても、インターネット等への接続を可能にする。Wi-Fiは、このような装置、例えば、コンピューターが室内及び室外で、つまり基地局の通話圏内のどこからでもデータを送受信できるようにするセル電話のような無線技術である。Wi-Fiネットワークは、安全で信頼性があり、高速である無線接続を提供するためにIEEE802.11(a、b、g、その他)という無線技術を使う。コンピューターを互いに、インターネット及び有線ネットワーク(IEEE802.3またはイーサネットを使う)に接続するためにWi-Fiが使われることができる。Wi-Fiネットワークは、非認可2.4や5GHzの無線帯域において、例えば、11Mbps(802.11a)または54Mbps(802.11b)のデータレートで動作したり、両帯域(デュエル帯域)を含む製品において動作することができる。
【0126】
本開示の技術分野における通常の知識を持つ者は情報及び信号が任意の多様な異なる技術及び手法を利用して示されることができることを理解できる。例えば、上記の説明において参照できるデータ、指示、命令、情報、信号、ビット、シンボル及びチップは、電圧、電流、電磁気派、磁場等または粒子、光学場等または粒子、またはこれらの任意の組み合わせによって示されることができる。
【0127】
本開示の技術分野において通常の知識を持つ者は、ここに開示された実施例に係る説明で取り挙げられた多様な例示的な論理ブロック、モジュール、プロセッサー、手段、回路、アルゴリズム段階が電子ハードウェア、(利便性のために、ここでは「ソフトウェア」と称される)多様な形のプログラムまたは設計コード、またはこれらすべての結合により実装されることができることを理解できるだろう。ハードウェア及びソフトウェアのこのような相互互換性を明確に説明するために、多様な例示的なコンポーネント、ブロック、モジュール、回路、及び段階がこれらの機能に着目して上記で一般的に説明された。このような機能がハードウェアやソフトウェアで実装されるかどうかは、特定のアプリケーションおよび全体システムに対して付与される設計上の制限によって決まる。本開示の技術分野において通常の知識を持つ者は、個々の特定のアプリケーションについて多様な手法で説明された機能を実現することができるが、このような実現の決定は、本開示の範囲を逸脱するものと解釈されてはならない。
【0128】
ここに示された多様な実施例は、方法、装置、または標準プログラミング及び/またはエンジニアリング技術を使った製造物品(article)によって実現できる。用語「製造物品」は、任意のコンピューターで可読な装置からアクセス可能なコンピュータープログラム、キャリアー、または媒体(media)を含む。例えば、コンピューターで可読保存媒体は、磁気保存装置(例えば、ハードディスク、フロッピーディスク、磁気ストリップ等)、光学ディスク(例えば、CD、DVD等)、スマートカード及びフラッシュメモリー装置(例えば、EEPROM、カード、スティック、キードライブ等)を含むが、これらに限定されるものではない。また、ここに示されている多様な保存媒体は、情報を保存するための1つ以上の装置及び/または他の機械可読媒体を含む。
【0129】
示されたプロセスにおける複数の段階の特定の順番または階層構造は、例示的なアプローチの一例であることを理解すべきである。設計上の優先順位に基づき、本開示の範囲内で、プロセスにおける段階の特定の順番または階層構造が再配列されることができることを理解すべきである。添付の方法クレームは、例示的な順番で、多様な段階のエレメントを提供するが、示された特定の順番または階層構造に限定されることを意味するわけではない。
【0130】
示された実施例に関する説明は、任意の本開示の技術分野において通常の知識を持つ者が、本開示を利用したり、または実施できるように提供される。このような実施例に対する多様な変形は、本開示の技術分野において通常の知識を持つ者には明確に理解できるものであり、ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施例に適用されることができる。従って、本開示はここに示す実施例によって限定されるものではなく、ここに示す原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。
【0131】
本開示は、以下に記載された、政府の支援の下で取り組む課題の一環として行われたものである。
課題固有番号:1415169086
(機関)詳細課題番号:20008795
部署名:産業通商資源部
研究管理専門機関:韓国産業技術評価管理院
研究事業名:知識サービス産業核心技術開発-製造サービス融合
研究課題名:製造現場に特化された音声認識提供のためのノイズ除去技術が搭載されたスマートデバイス及び人工知能バーチャル秘書サービス開発
寄与率:100%
主管機関:株式会社ミソ情報技術
参加機関:株式会社ビーアイマトリックス
研究期間:2020年5月1日~2022年12月31日