JP2011501324A - リッチ・クライアントとブラウザ・クライアントの間のスプレッドシート共同作業 - Google Patents

リッチ・クライアントとブラウザ・クライアントの間のスプレッドシート共同作業 Download PDF

Info

Publication number
JP2011501324A
JP2011501324A JP2010531226A JP2010531226A JP2011501324A JP 2011501324 A JP2011501324 A JP 2011501324A JP 2010531226 A JP2010531226 A JP 2010531226A JP 2010531226 A JP2010531226 A JP 2010531226A JP 2011501324 A JP2011501324 A JP 2011501324A
Authority
JP
Japan
Prior art keywords
spreadsheet
client
change
update
file
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.)
Granted
Application number
JP2010531226A
Other languages
English (en)
Other versions
JP5426561B2 (ja
JP2011501324A5 (ja
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2011501324A publication Critical patent/JP2011501324A/ja
Publication of JP2011501324A5 publication Critical patent/JP2011501324A5/ja
Application granted granted Critical
Publication of JP5426561B2 publication Critical patent/JP5426561B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/93Document management systems
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

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

Abstract

スプレッドシート・ファイル上でクライアント・コンピュータによりリアルタイムで共同作業するための技法が本明細書に開示されている。具体的には、更新をクライアント・コンピュータから受け取り、当該更新を処理し、次いでその更新をスプレッドシート・ファイルに適用するリビジョン・マネージャ・モジュールがホスト・マシンに好適に提供される。さらに、クライアントによって同時またはほぼ同時にリビジョン・マネージャへ送信された更新を扱うための技法が説明されている。このケースでは、リビジョン・マネージャは、スプレッドシート・ファイルに対する更新が変換可能またはマージ可能かどうかを判定する。可能である場合、更新をスプレッドシート・ファイルに結合して適用する。更新が変換可能でない場合は、リビジョン・マネージャは、全てのクライアントが変換不能な更新をスプレッドシート・ファイルに適用する前に、以前の更新を全て受け取ったことを確かめる。

Description

スプレッドシート・アプリケーションは、データを入力し、編成し、管理し、参照し、記憶し、検索するための、便利で、単純且つ直感的な方法を提供する、一般的に使用されているプログラムである。従来型のスプレッドシート・アプリケーションの1つの欠点は、一般に複数のユーザが単一のスプレッドシート・ファイル上で同時に共同作業できないことである。それどころか、従来型のスプレッドシートでは、或るユーザがファイルを開くとそのファイルは「ロック」され、そのファイルを開こうとする他のどのユーザも読取専用でしか開けない。読取専用は、どんな編集結果も元のファイルに保存されないことを意味する。
ユーザがファイルを同時に編集する必要がある理由は数多くある。スプレッドシートは、しばしばデータ入力アプリケーションとして使用される。例えば、企業の全ての異なる部署から得た決算結果の全てを収集するためにスプレッドシート・ファイルを作成する者がいるかもしれない。ファイルにはしばしば複数の作成者があり、これらの作者は、他の作成者がロックを解放するのを待つ必要なしに自由にスプレッドシートを編集したいはずである。
複数のユーザが1つのスプレッドシート・ファイル上で共同作業できるようにしたいということに加えて、複数の異なる種類のクライアントが共同作業できるようにしたいということもある。このクライアントには、「リッチ」クライアントと「ブラウザ」クライアントの両方が含まれる。リッチ・クライアント(シック・クライアントまたはファット・クライアントと呼ばれることもある)は、一般により多くの機能選択肢を提供し、一般にそれ自体でさらなるデータ処理動作を実施でき、必ずしもサーバに依存する必要のないクライアントである。しかし、リッチ・クライアントが、サーバが様々な動作を実施できるようにすることを選択する幾つかの状況がある。ブラウザクライアント(シン・クライアント)は、一般により少ない機能選択肢を提供し、一般にホスト・コンピュータまたはサーバ・コンピュータのリソースに依存するクライアントである。リッチ・クライアントとシン・クライアントとの間の機能の相違やその他の違いにより、しばしばこの異なるクライアントでユーザが共同作業することが困難になる。
スプレッドシート・ファイル上でクライアント・コンピュータによりリアルタイムで共同作業するための技法が本明細書では開示されている。具体的には、更新をクライアント・コンピュータから受け取り、この更新を処理し、次いでその更新をスプレッドシート・ファイルに適用するリビジョン・マネージャ・モジュールがホスト・マシンに好適に提供されている。その後、リビジョン・マネージャをポーリングすることによって、最新のバージョンのスプレッドシート・ファイルが全てのクライアントに利用可能となる。リビジョン・マネージャはこれらの更新を、それらの更新を以前に受け取っていない各クライアントに送信し、全てのクライアントが共同作業中にスプレッドシート・ファイルを最新のステータスで表示できるようにする。
さらに、クライアントによって同時またはほぼ同時にリビジョン・マネージャへ送信された更新を扱うための技法が説明されている。このケースでは、リビジョン・マネージャは、スプレッド・シ−ト・ファイルに対する更新が変換可能またはマージ可能かどうかを判定する。可能である場合、更新をスプレッドシート・ファイルに結合して適用する。更新が変換可能でない場合は、リビジョン・マネージャは全てのクライアントが、変換不能な更新をスプレッドシート・ファイルに適用する前に以前の更新を全て受け取ったことを確かめる。これにより、後のリリースにおいてより多くの機能を共同作業環境に含めるための能力がもたらされる。なぜならば、全ての機能を変換可能とするのは非常に時間のかかるプロセスであろうからである。
本要約は、選択した概念を簡潔な形で導入するために与えるものであり、その概念は、発明を実施するための形態で後でさらに説明する。本要約はクレーム主題の主要な特徴または本質的な特徴を特定しようとするものではなく、クレーム主題の範囲を決定する支援として使用しようとするものでもない。
例示的な実施形態は、添付の図面を参照して後の発明を実施するための形態を読むと、より良く理解されよう。
例示的なコンピューティング装置のブロック図である。 スプレッドシート・ファイルに対する同時更新を管理するためのリビジョン・マネージャ・モジュールをホスト・マシンが備える、スプレッドシート・ファイル上で共同作業する複数のクライアント・コンピュータを示すシステム図である。 リビジョン・マネージャ・モジュールを有する図2に示すクライアント・コンピュータのうち2つからのスプレッドシート・ファイルの部分図の対を示す線図である。 同時更新が行われた、クライアント・コンピュータに対するスプレッドシート・ファイルと図3に示すリビジョン・マネージャ・モジュールの部分図の対を示す線図である。 リビジョン・マネージャ・モジュールがスプレッドシート・ファイルにおいて図4の同時更新をマージした、クライアント・コンピュータに対するスプレッドシート・ファイルと図3および図4に示すリビジョン・マネージャ・モジュールの部分図の対を示す線図である。 複数のクライアント・コンピュータによってリアルタイムで共同作業中にスプレッドシート・ファイルに対して行った同時更新をマージするためのプロセスの流れ図である。
法定要件を満たすために、本発明の主題を具体的に説明する。しかし、その説明自体は本特許の範囲を限定しようとするものではない。そうではなく、本明細書で説明したものと同様な様々なステップまたはステップの組合せを含めるために、他の現行の技術または将来の技術と関連して、クレーム主題を他の方法で具現化してもよいことが考慮されている。
図1は、上述の主題の実装に適したコンピューティング・システム環境100の例を示す。コンピューティング・システム環境100は適切なコンピューティング環境の一例にすぎず、上述の主題の使用範囲または機能範囲に関する限定を示唆しようとするものではない。また、コンピューティング環境100が、例示的な動作環境100に示す構成要素のどのような1つまたはどのような組合せに関してどのような依存性または要件を有するとも解釈すべきでない。
図1を参照すると、コンピューティング・システム環境100は、汎用目的のコンピューティング装置をコンピュータ110の形で備える。コンピュータ110の構成要素は、演算装置120、システム・メモリ130、およびシステム・バス121を含む。システム・バス121は、システム・メモリを含む様々なシステムの構成要素を演算装置120に結合させる。システム・バス121は、メモリ・バスまたはメモリ・コントローラ、周辺バス、および様々なバス・アーキテクチャの何れかを用いたローカル・バスを含む、数種のバス構造のうちの何れかであることができる。限定ではなく例として、このアーキテクチャには、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカル・バス、および(メザニン(Mezzanine)・バスとしても知られる)PCI(Peripheral Component Interconnect)バス、等が含まれる。
コンピュータ110は、一般に、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110がアクセスできる任意の利用可能な媒体であることができ、揮発性および不揮発性媒体、取外し可能および取外し不能媒体の両方を含む。限定ではなく例として、コンピュータ可読媒体はコンピュータ記憶媒体と通信媒体を備えることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム・モジュールまたは他のデータのような情報を記憶するための任意の方法または技術で実装した揮発性および不揮発性媒体、取外し可能および取外し不能媒体の両方が含まれる。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュ・メモリまたは他のメモリ技術、CDROM、DVD(digital versatile disk:デジタル多用途ディスク)もしくは他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶装置、または所望の情報の記憶に使用できコンピュータ110がアクセスできる他の任意の媒体が含まれるがこれらに限らない。通信媒体は、一般に、コンピュータ可読命令、データ構造、プログラム・モジュールまたは他のデータを搬送波または他の伝送機構のような変調データ信号で具現化し、任意の情報配信媒体を含む。「変調データ信号」という用語は、1つまたは複数のその特性集合を有するか信号内の情報をエンコードするように変化した信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークまたは直接配線接続のような有線媒体、ならびに音響、RF、赤外線および他の無線媒体のような無線媒体が含まれる。上の何れかの組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
システム・メモリ130は、コンピュータ記憶媒体をROM131およびRAM132のような揮発性メモリおよび/または不揮発性メモリの形で備える。BIOS(basic input/output system)133は、例えば起動中に、コンピュータ110内部の要素間での情報伝送を支援する基本ルーチンを含み、一般にはROM131に記憶される。RAM132は、一般に、演算装置120が即座にアクセス可能であるおよび/または現在演算装置120上で動作しているデータおよび/またはプログラム・モジュールを含む。限定ではなく例として、図1はオペレーティング・システム134、アプリケーション・プログラム135、他のプログラム・モジュール136およびプログラム・データ137を示す。
コンピュータ110はまた、他の取外し可能または取外し不能のコンピュータ記憶媒体、揮発性または不揮発性のコンピュータ記憶媒体を含むことができる。例としてのみ、図1は取外し不能で不揮発性の磁気媒体を読み書きするハード・ディスク・ドライブ141、取外し可能で不揮発性の磁気ディスク152を読み書きする磁気ディスク・ドライブ151、およびCD−RW、DVD−RWまたは他の光媒体のような取外し可能で不揮発性の光ディスク156を読み書きする光ディスク・ドライブ155を示す。例示的な動作環境で使用できる他の取外し可能または取外し不能のコンピュータ記憶媒体、揮発性または不揮発性のコンピュータ記憶媒体には、磁気テープ・カセット、フラッシュ・メモリ・カード、DVD(デジタル多用途ディスク)、デジタル・ビデオ・テープ、固体RAM、固体ROM、等が含まれるがこれらに限らない。ハード・ディスク・ドライブ141は、一般に、インタフェース140のような取外し不能なメモリ・インタフェースを介してシステム・バス121に接続され、磁気ディスク・ドライブ151および光ディスク・ドライブ155は、一般に、インタフェース150のような取外し可能メモリ・インタフェースによってシステム・バス121に接続される。
上で論じ、図1で示したドライブおよびその関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラム・モジュール、および他のデータをコンピュータ110のために記憶する。図1では、例えば、ハード・ディスク・ドライブ141がオペレーティング・システム144、アプリケーション・プログラム145、他のプログラム・モジュール146、およびプログラム・データ147を記憶するとして示してある。これらの構成要素はオペレーティング・システム134、アプリケーション・プログラム135、他のプログラム・モジュール136、およびプログラム・データ137と同一であるかまたは異なることができることに留意されたい。オペレーティング・システム144、アプリケーション・プログラム145、他のプログラム・モジュール146、およびプログラム・データ147には本明細書では異なる番号を与え、最低限それらが異なるコピーであることを示す。ユーザは、キーボード162およびマウス、トラックボールまたはタッチ・パッドといったポインティング・デバイス161のような入力装置を介してコンピュータ110にコマンドおよび情報を入力することができる。他の入力装置(図示せず)にはマイクロフォン、ジョイスティック、ゲーム・パッド、パラボラ・アンテナ、スキャナ、等を含めることができる。これらおよび他の入力装置はしばしば、システム・バス121に結合されたユーザ入力インタフェース160を介して演算装置120に接続されるが、パラレル・ポート、ゲーム・ポートまたはUSBのような他のインタフェースおよびバス構造によって接続してもよい。グラフィック・インタフェース182もまたシステム・バス121に接続することができる。1つまたは複数のGPU(graphics processing units)184がグラフィック・インタフェース182と通信することができる。モニタ191または他種の表示装置も、ビデオ・インタフェース190のようなインタフェースを介してシステム・バス121に接続され、ビデオ・インタフェース190は次にビデオ・メモリ186と通信することができる。モニタ191に加えて、コンピュータは、スピーカ197およびプリンタ196のような他の周辺出力装置も含むことができ、これらは出力周辺インタフェース195を介して接続することができる。
コンピュータ110は、リモート・コンピュータ180のような1つまたは複数のリモート・コンピュータへの論理接続を用いてネットワーク環境または分散環境で動作することができる。リモート・コンピュータ180はパーソナル・コンピュータ、サーバ、ルータ、ネットワークPC、ピア・デバイスまたは他の共通ネットワーク・ノードであることができ、一般に、コンピュータ110に関して上述した要素の多くまたは全てを含むが、図1ではメモリ記憶装置181のみを示した。図1に図示した論理接続にはLAN171およびWAN(広域エリアネットワーク)173が含まれるが、他のネットワークまたはバスを含んでもよい。このようなネットワーキング環境は、家庭、職場、企業規模のコンピュータ・ネットワーク、イントラネットおよびインターネットで一般的である。
LANネットワーキング環境で使用する場合は、コンピュータ110はネットワーク・インタフェースまたはアダプタ170を通してLAN171に接続される。WANネットワーキング環境で使用する場合は、コンピュータ110は、一般に、モデム172、またはインターネットのようなWAN173上で通信を確立するための他の手段を備える。モデム172は、内部または外部にあることができ、ユーザ入力インタフェース160または他の適切な機構を介してシステム・バス121に接続することができる。ネットワーク環境では、コンピュータ110に関して図示したプログラム・モジュールまたはその一部を、リモート・メモリ記憶装置に記憶することができる。限定ではなく例として、図1はリモート・アプリケーション・プログラム185がメモリ装置181に常駐するとして示してある。示したネットワーク接続は例であって、コンピュータ間の通信リンクを確立する他の手段を使用してもよいことは理解されよう。
上述の複数のコンピューティング・システム200、210、220等は、クライアント、クライアント・コンピュータまたはユーザとも呼ぶが、スプレッドシート・ファイル230のような共通ファイル上でリアルタイムで共同作業しようとしていることが図2から理解されよう。このようなクライアントには、例えば、「シック」クライアント・スプレッドシート・アプリケーションまたはシン・クライアント・スプレッドシート・アプリケーションが含まれる。コンピューティング・システム200、210、および220上のスプレッドシート・アプリケーションは「共同作業」モードの編集を使用することができる。この場合、各ユーザまたは各クライアントは、ファイル230をその時点で編集している他の任意のユーザまたはクライアントによって行われた変更を見ることができる。示したように、これをサーバのような、保存されるスプレッドシート・ファイル230のバージョンを含む別のホスト・マシン240を介して実現することができる。しかし、クライアント・コンピュータの何れも、それが共同作業の機能を有し他のクライアント・コンピュータがそれと正しくネットワーク接続される限り、共同作業用のホスト・マシンとして利用してもよいことは理解されよう。従って、この共同作業モードは、クライアントがスプレッドシート・ファイルを排他アクセスで開き、全ての変更がファイルに直接反映され、これが行われている間にファイルを編集するクライアントがそれ以外にない、通常のスプレッドシートの動作とは異なる。
典型的な共同作業の構成では、各クライアント・コンピュータは、(矢印250で示すように)コンピュータ実行可能命令を介してメッセージまたはデータ更新をホスト・マシン240に渡す。クライアントが行った各編集または各変更は、その変更が何であったか、どこで変更が行われたか、誰が変更を行ったか、等を示す詳細とともに、クライアントによりリビジョン・レコードとしてパッケージ化されることは理解されよう。ホスト・マシン240は、更新をクライアントから受け取って、この変更または入ってくるデータを処理するモジュール310を含むことが好ましい。モジュール310を本明細書ではリビジョン・マネージャと呼ぶ。クライアントからのリビジョン・レコードがリビジョン・マネージャ・モジュール310に送信され、リビジョン・マネージャ・モジュール310でリビジョン・レコードが受け取られて処理される。スプレッドシート・ファイル230のこの処理および更新が完了すると、個々のクライアント・コンピュータによるホスト・マシン240の要求または問合せ(矢印265により表す)によって、リビジョン・マネージャ・モジュール310はコンピュータ実行可能命令を介して(矢印270によって示すように)、更新をクライアント・コンピュータに送信する。このように、要求を行うクライアント・コンピュータに対するスプレッドシート・ファイル230の状態が、共同作業中に受け取られた全てのクライアント・コンピュータからの更新を含む最新のバージョンのスプレッドシート・ファイル230で更新される。ホスト・マシン240によってスプレッドシート・ファイル230に加えられた変更は、数ミリ秒以内にクライアント・コンピュータに利用可能となることが好ましいことは理解されよう。ホスト・マシン240が更新を自動的にクライアント・コンピュータに配信することも可能である。リビジョン・マネージャ・モジュール310は、どのクライアントが共同作業中に更新要求を行ったかを認識し、クライアントが見た最後の更新を記録し、その時点からの全ての更新に関するリビジョン・レコードを送信する。次いでクライアントは、リビジョン・レコードを適用し、この時点で、全てのクライアントが行った全ての更新で最新となっている。
一般に、リビジョン・レコードを、受け取った順にリビジョン・マネージャ・モジュール310によって処理することができる。しかし、2つのクライアントがスプレッドシート・ファイル内の同じセルもしくは同じオブジェクトを含むリビジョン・レコードを同時もしくはほぼ同時に送信した場合または処理中にレコードが重複した場合は、その変更の間で相反が発生する可能性がある。リビジョン・レコードはまた、レコード作成中に第2のクライアントが最新でなかった場合、またはリビジョン・マネージャ・モジュール310が第2のクライアントのレコードを受け取る前に他の任意の更新を受け取った場合は、古くなっているはずである。リビジョン・マネージャ・モジュール310は、第2のクライアントがレコードを送信するための時間(これは必ずしも即時ではない)、送信時間、および送受信のオーバヘッドを考慮しなければならない。解決しマージすることができるリビジョン(本明細書では「変換可能な」変更と呼ぶ)がある一方で、マージできないリビジョン(本明細書では「変換不能な」変更と呼ぶ)もあることは理解されよう。
2つの相反する変更をどのようにマージできるかの例が図3から図5に示されている。図3に見られるように、第1のクライアントに対するスプレッドシート300の部分図と、第2のクライアントに対するスプレッドシート305の部分図とが、リビジョン・マネージャ・モジュール310とともに提供されている。スプレッドシート300および305の図は共同作業のこの時点では同一であり、5および6の値が夫々セルA1およびA2に配置されていることに留意されたい。図4では、第1のクライアントがスプレッドシート300において、セルA2内の値に関する式(即ち、A2+2)をセルB2に追加したことが分かる。同時またはほぼ同時に、第2のクライアントがスプレッドシート305において、セルA2の上に行を挿入した。これらの変更の各々は、矢印315および320によって示すように、リビジョン・マネージャ・モジュール310に送信され、リビジョン・マネージャ・モジュール310が相反を調整しなければならない。調整を行うために、リビジョン・マネージャ・モジュール310は図5に示す両方の更新を処理し、適切な変換を行う。従って、リビジョン・マネージャ・モジュール310は、第1のクライアント(ユーザA)がスプレッドシート300において行1と行2の間に行を挿入する必要がある旨のメッセージ325を第1のクライアントに送信し、第1のクライアントはセルB1内の式の更新(即ち、A3+2)を処理する。それと並行として、リビジョン・マネージャ・モジュール310は、第2のクライアント(ユーザB)がスプレッドシート305において新しい式をセルB1に追加する必要がある旨のメッセージ330を第2のクライアントに送信する。この場合、追加された式は挿入された行を考慮するように調整されている。このように、更新315および320に対応する適切な変換を行うことによって、スプレッドシート300および305は、各クライアントが意図した変更を反映し、同一となる。
リビジョン・マネージャ・モジュール310は、クライアント・コンピュータによってリビジョン・マネージャ・モジュール310に送信された全ての相反する更新をマージできるわけではないことは理解されよう。このことにより、少なくとも部分的に、或るクライアントによって提供された更新が別のクライアントによって提供された別の更新に重なるという指数関数的な分岐が生ずる。さらに、スプレッドシートの或る機能の変化またはスプレッドシートにおける操作の変化を別の機能の変化または別の動作の変化とどのようにマージするかに関する、細かい知識が多く必要である。この知識は実行時には利用可能でないことがある。
従って、1つのアプローチは、変換可能なリビジョンと変換不能なリビジョンを区別し、次いでスプレッドシート・アプリケーションに関する全ての可能な編集をこれらの2つのタイプとして分類することである。本明細書で述べたように、変換可能なレコードは、リビジョン・マネージャ・モジュール310がマージの仕方を知っているリビジョン・レコードである。他の全てのリビジョン・レコードは変換不能であると考えられ、リビジョン・マネージャ・モジュール310はそれらには、適用を待っている他のレコードとこのリビジョン・レコードをマージする可能な方法がないとみなす。この事例では、リビジョン・マネージャ・モジュール310は、最初に全てのクライアントが他の全ての以前の更新を受け取り、全てのクライアントが現在同じ状態にあることを確かめる。各クライアントが普通に行うように、更新に関してリビジョン・マネージャにポーリングし、リビジョン・マネージャが変換不能な操作を実施し、ユーザにそれ以上編集させないようにしようとしていることを示すメッセージをクライアントが受け取ることによって、これを行うことができる。換言すれば、全てのクライアントが他の全ての以前の更新を受け取ったことを保証するために、各クライアントが新しい更新を行うことを防止して、リビジョン・マネージャが変換不能な操作の適用を進めることができるようにしてもよい。共同作業の全てのクライアントが同期された後に、リビジョン・マネージャ・モジュール310は変換不能なレコードを適用し、それに従ってその全てのクライアントを更新する。
行われるプロセスをより良く理解するために、図6の流れ図において実施するステップを提示する。図から分かるように、リビジョン・マネージャ・モジュール310は、原則としてスプレッドシート・ファイル230上のロックを制御し、従ってクライアントとホスト・マシン240の間との接続を確立するように動作する(ボックス600によって表す)。スプレッドシート・ファイル230に対する変更または更新を任意数のクライアントによってホスト・マシン240に送信することができる。第1のクライアントと第2のクライアントとが、更新をリビジョン・マネージャ310に送信したことが反映されていることが分かるであろう(夫々、ボックス605と610)。リビジョン・マネージャ・モジュール310が更新を第1のクライアントおよび第2のクライアントから受け取ると、リビジョン・マネージャ・モジュール310は、スプレッドシート・ファイル230に対する両方の更新が変換可能であるかどうかを判定する(決定ボックス615)。
両方の更新が変換可能であると考えられる場合(即ち、そのリビジョン・レコードがマージ可能とみなされる場合)は、リビジョン・マネージャ・モジュール310はそれらの更新をスプレッドシート・ファイルに結合する(ボックス620)。次いで、この更新をスプレッドシート・ファイル230に適用する(ボックス625)。両方の更新が変換可能であると考えられない場合は、リビジョン・マネージャ・モジュール310は、最初に、全てのクライアントがスプレッドシート・ファイル230に対する以前の更新を全て受け取ったことを確認する(ボックス630)。次いで、変換不能な更新をスプレッドシート・ファイル230に適用する(ボックス635)。
何れのケースでも、各クライアントがスプレッドシート・ファイル230に対する更新に関してリビジョン・マネージャ・モジュール310にポーリングしなければならないこと(ボックス640)が好ましいことは理解されよう。この際、リビジョン・マネージャ・モジュール310は、ポーリングしているクライアント・コンピュータが以前受け取っていない更新を全てスプレッドシート・ファイル230に提供する(ボックス645)。次いで、クライアントは、スプレッドシート・ファイル230の最新のバージョンが表示されるように、リビジョン・マネージャ・モジュール310によって提供されたリビジョン・レコードを適用する(ボックス650)。
理解されるだろうが、クライアントは、リビジョン・マネージャまたはリビジョン・サーバから受け取ったレコードを適用するための、追加のクライアント側のマージ・ロジックを含むことができる。この追加のクライアント側のマージ・ロジックがなければ、ポーリングおよび更新プロセス全体の間にリッチ・クライアントをブロックして、最新の更新が適用されるまでユーザがどのような変更も開始しないようにする必要があるかもしれない。リッチ・クライアントは、反応を良くするために、或るバージョンのリビジョン・マネージャ・マージ・エンジンを含んでもよい。リアルタイム同期が完全に変換可能なソリューションに対する要件でなくてもよいことも理解されよう。絶え間なく同期すればより良いユーザ・エクスペリエンスがもたらされるかもしれないが、完全に変換可能なソリューションの価値の一部は、より良いリモート・ユーザビリティを提供しネットワークの問題に対する堅牢性を提供するために、そのソリューションを一時的にオフラインにすることができる。さらに、相反が発生した場合は、リビジョン・マネージャは、クライアントが未だ見ていないリビジョン・レコードに加えて、これらの同じリビジョン・レコードの間の相反を考慮するために変換されたリビジョン・レコードと、クライアントが現在送信している新しいリビジョン・レコードとを、クライアントに送信し戻すことができることは理解されよう。
主題を構造的特徴および/または方法論的動作に固有な言葉で説明したが、添付の特許請求の範囲で定義した主題は必ずしも上述の特定の特徴または動作に限定されないことは理解されよう。そうではなく、上述の特定の特徴および動作は諸請求項を実装する形態の例として開示されている。

Claims (20)

  1. スプレッドシート・ファイル(230)に対する第1の更新を第1のスプレッドシート・クライアント(200)から受け取るステップと、
    前記スプレッドシート・ファイル(230)に対する第2の更新を第2のスプレッドシート・クライアント(210)から受け取るステップと、
    前記第1の更新と前記第2の更新とを前記スプレッドシート・ファイル(230)に統合しかつ適用できるように、両方の更新が変換可能であるかどうかを判定するステップとを含み、
    前記判定するステップは、
    前記第1の更新と前記第2の更新とが変換可能である場合は、前記第1の更新と前記第2の更新とを結合し、前記第1の更新と前記第2の更新とを前記スプレッドシート・ファイル(230)に適用し、前記第1のスプレッドシート・クライアントと前記第2のスプレッドシート・クライアントとに送信し戻すための逆方向の更新を計算し、
    前記第1の更新と前記第2の更新との少なくとも1つが変換不能である場合は、変換不能な変更に対するポリシに従って更新を処理する
    プロセスを実施するためのコンピュータ実行可能命令を記憶させたコンピュータ可読媒体。
  2. 前記第1のスプレッドシート・クライアントと前記第2のスプレッドシート・クライアント(210)とは、共にリッチ・クライアントであることを特徴とする請求項1に記載のコンピュータ可読媒体。
  3. 前記第1のスプレッドシート・クライアント(200)はリッチ・クライアントであり、前記第2のスプレッドシート・クライアント(210)はブラウザ・クライアントであることを特徴とする請求項1に記載のコンピュータ可読媒体。
  4. 前記プロセスはリアルタイムな共同作業環境で実施されることを特徴とする請求項1に記載のコンピュータ可読媒体。
  5. 前記ポリシは、
    全てのスプレッドシート・クライアントが以前の更新を全て受け取ったことを確認するステップと、
    前記変換不能な更新を前記スプレッドシート・ファイル(230)に適用するステップと
    を含むことを特徴とする請求項1に記載のコンピュータ可読媒体。
  6. 前記第1の更新と前記第2の更新とはほぼ同時に受け取られることを特徴とする請求項1に記載のコンピュータ可読媒体。
  7. 前記プロセスは、
    前記スプレッドシート・ファイル(230)に対する更新の要求をスプレッドシート・クライアントから受け取るステップと、
    前記スプレッドシート・クライアントによって前記スプレッドシート・ファイル(230)に対して以前に受け取られていない更新を全て含むリビジョン・レコードを送信するステップと
    をさらに含むことを特徴とする請求項1に記載のコンピュータ可読媒体。
  8. スプレッドシート・ファイル(230)に対する第1の変更を第1のスプレッドシート・クライアント(200)から受け取るステップと、
    前記スプレッドシート・ファイル(230)に対する第2の変更を第2のスプレッドシート・クライアント(210)から受け取るステップと、
    前記第1の変更と前記第2の変更とを前記スプレッドシート・ファイル(230)に統合しかつ適用できるように、両方の変更が変換可能であるかどうかを判定するステップとを含み、
    前記判定するステップは、
    前記第1の変更と前記第2の変更とが変換可能である場合は、前記第1の変更と前記第2の変更とを結合して、前記第1の変更と前記第2の変更とを前記スプレッドシート・ファイル(230)に適用し、前記第1のスプレッドシート・クライアントと前記第2のスプレッドシート・クライアントとに送信し戻すための逆方向の更新を計算し、
    前記第1の変更と前記第2の変更とが変換不能である場合は、変換不能な変更に対するポリシに従って変更を処理する
    ことを特徴とするスプレッドシート共同作業のための方法。
  9. 前記第1のスプレッドシート・クライアントと前記第2のスプレッドシート・クライアント(210)とは共にリッチ・クライアントであることを特徴とする請求項8に記載の方法。
  10. 前記第1のスプレッドシート・クライアント(200)はリッチ・クライアントであり、前記第2のスプレッドシート・クライアント(210)はブラウザ・クライアントであることを特徴とする請求項8に記載の方法。
  11. 前記方法はリアルタイムな共同作業環境で実施されることを特徴とする請求項8に記載の方法。
  12. 全てのスプレッドシート・クライアントが以前の更新を全て受け取ったことを確認するステップと、
    前記変換不能な更新を前記スプレッドシート・ファイル(230)に適用するステップと
    をさらに含むことを特徴とする請求項8に記載の方法。
  13. 前記第1の更新と前記第2の更新とはほぼ同時に受け取られることを特徴とする請求項8に記載の方法。
  14. 前記スプレッドシート・ファイル(230)に対する更新の要求をスプレッドシート・クライアントから受け取るステップと、
    前記スプレッドシート・クライアントによって前記スプレッドシート・ファイル(230)に対して以前に受け取られていない更新を全て含むリビジョン・レコードを送信するステップと、
    をさらに含むことを特徴とする請求項8に記載の方法。
  15. コンピュータ実行可能命令を実行するように動作するプロセッサと、
    スプレッドシート・ファイル(230)に対する第1の変更を第1のスプレッドシート・クライアント(200)から受け取るステップと、
    前記スプレッドシート・ファイル(230)に対する第2の変更を第2のスプレッドシート・クライアント(210)から受け取るステップと、
    前記第1の変更と前記第2の変更とを前記スプレッドシート・ファイル(230)に統合しかつ適用できるように、両方の変更が変換可能であるかどうかを判定するステップであって、
    前記第1の変更と前記第2の変更が変換可能である場合は、前記第1の変更と前記第2の変更を結合し、前記第1の変更と前記第2の変更を前記スプレッドシート・ファイル(230)に適用し、
    前記第1の変更と前記第2の変更が変換不能である場合は、変換不能な変更に対するポリシに従って変更を処理する、
    ステップと、
    を含むプロセスを実施するためのコンピュータ実行可能命令を記憶させたメモリと
    を備えることを特徴とするスプレッドシート共同作業のためのシステム。
  16. 前記プロセスはリビジョン・マネージャによって実施されることを特徴とする請求項15に記載のシステム。
  17. 前記第1のクライアントはリッチ・クライアントであり、前記第2のクライアントはブラウザ・クライアントであることを特徴とする請求項15に記載のシステム。
  18. 前記プロセスはリアルタイムな共同作業環境で実施されることを特徴とする請求項15に記載のシステム。
  19. 前記ポリシは、
    全てのスプレッドシート・クライアントが以前の更新を全て受け取ったことを確認するステップと、
    前記変換不能な更新を前記スプレッドシート・ファイル(230)に適用するステップとを含む
    ことを特徴とする請求項15に記載のシステム。
  20. 前記第1の更新と前記第2の更新とは同時に受け取られることを特徴とする請求項1に記載のコンピュータ可読媒体。
JP2010531226A 2007-10-26 2008-10-23 リッチ・クライアントとブラウザ・クライアントの間のスプレッドシート共同作業 Active JP5426561B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/925,019 2007-10-26
US11/925,019 US7756824B2 (en) 2007-10-26 2007-10-26 Spreadsheet collaboration between rich and browser clients
PCT/US2008/080887 WO2009055531A2 (en) 2007-10-26 2008-10-23 Spreadsheet collaboration between rich and browser clients

Publications (3)

Publication Number Publication Date
JP2011501324A true JP2011501324A (ja) 2011-01-06
JP2011501324A5 JP2011501324A5 (ja) 2011-12-01
JP5426561B2 JP5426561B2 (ja) 2014-02-26

Family

ID=40580375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010531226A Active JP5426561B2 (ja) 2007-10-26 2008-10-23 リッチ・クライアントとブラウザ・クライアントの間のスプレッドシート共同作業

Country Status (6)

Country Link
US (1) US7756824B2 (ja)
EP (1) EP2220609B1 (ja)
JP (1) JP5426561B2 (ja)
KR (1) KR101566566B1 (ja)
CN (1) CN101842802A (ja)
WO (1) WO2009055531A2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7627810B2 (en) * 2000-08-29 2009-12-01 Open Text Corporation Model for creating, inputting, storing and tracking multimedia objects
US7707249B2 (en) * 2004-09-03 2010-04-27 Open Text Corporation Systems and methods for collaboration
US7702730B2 (en) 2004-09-03 2010-04-20 Open Text Corporation Systems and methods for collaboration
US8140958B2 (en) * 2007-01-30 2012-03-20 International Business Machines Corporation Cyclical and synchronized multi-source spreadsheet imports and exports
US8464206B2 (en) * 2007-10-22 2013-06-11 Open Text S.A. Method and system for managing enterprise content
US20090300474A1 (en) * 2008-05-29 2009-12-03 Centralytics, Inc. Computer-based architecture using remotely-controlled electronic grid-based calculators
US8639762B2 (en) * 2009-03-23 2014-01-28 Google Inc. Providing access to a conversation in a hosted conversation system
US8527602B1 (en) 2009-05-28 2013-09-03 Google Inc. Content upload system with preview and user demand based upload prioritization
US9602444B2 (en) 2009-05-28 2017-03-21 Google Inc. Participant suggestion system
US9021386B1 (en) 2009-05-28 2015-04-28 Google Inc. Enhanced user interface scrolling system
US8510399B1 (en) 2010-05-18 2013-08-13 Google Inc. Automated participants for hosted conversations
US9652440B2 (en) * 2010-05-27 2017-05-16 Microsoft Technology Licensing, Llc Concurrent utilization of a document by multiple threads
US9026935B1 (en) 2010-05-28 2015-05-05 Google Inc. Application user interface with an interactive overlay
US9380011B2 (en) 2010-05-28 2016-06-28 Google Inc. Participant-specific markup
US9031957B2 (en) * 2010-10-08 2015-05-12 Salesforce.Com, Inc. Structured data in a business networking feed
US9721030B2 (en) * 2010-12-09 2017-08-01 Microsoft Technology Licensing, Llc Codeless sharing of spreadsheet objects
US9811516B2 (en) 2010-12-14 2017-11-07 Microsoft Technology Licensing, Llc Location aware spreadsheet actions
US9898454B2 (en) * 2010-12-14 2018-02-20 Microsoft Technology Licensing, Llc Using text messages to interact with spreadsheets
US8700986B1 (en) 2011-03-18 2014-04-15 Google Inc. System and method for displaying a document containing footnotes
US9129234B2 (en) 2011-01-24 2015-09-08 Microsoft Technology Licensing, Llc Representation of people in a spreadsheet
US8510266B1 (en) * 2011-03-03 2013-08-13 Google Inc. System and method for providing online data management services
US8583614B1 (en) * 2012-01-30 2013-11-12 Lucid Software, Inc. Automatic offline synchronization of browser documents
US9099031B2 (en) * 2012-06-15 2015-08-04 Apple Inc. Layout synchronization
WO2014027998A1 (en) 2012-08-14 2014-02-20 Empire Technology Development Llc Updating a currently utilized device
US8983901B1 (en) * 2013-02-05 2015-03-17 Google Inc. System and method for rectangular region covering
US9460073B2 (en) 2013-02-27 2016-10-04 Google Inc. Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment
US8856234B2 (en) 2013-02-28 2014-10-07 Workiva Llc System and method for performing distributed asynchronous calculations in a networked environment
US10067927B2 (en) * 2013-06-14 2018-09-04 Microsoft Technology Licensing, Llc Updates to shared electronic documents in collaborative environments
US10133720B2 (en) 2013-06-15 2018-11-20 Microsoft Technology Licensing, Llc Showing presence of multiple authors in a spreadsheet
US9569418B2 (en) 2014-06-27 2017-02-14 International Busines Machines Corporation Stream-enabled spreadsheet as a circuit
US11244105B2 (en) * 2014-12-04 2022-02-08 Google Llc Efficient copy paste in a collaborative spreadsheet
US11783120B2 (en) * 2015-08-26 2023-10-10 Roar Software Pty Ltd. System and process for generating an internet application
US10884571B2 (en) 2018-01-11 2021-01-05 Microsoft Technology Licensing, Llc Dependency-based presence for co-authored documents
KR102076550B1 (ko) * 2018-06-22 2020-02-12 주식회사 한글과컴퓨터 스프레드시트 편집 장치 및 방법
CN112784558A (zh) * 2020-02-21 2021-05-11 珠海金山办公软件有限公司 电子表格应用方法、装置、服务器、客户端及通信系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007115149A1 (en) * 2006-03-31 2007-10-11 Google Inc. Collaborative online spreadsheet application

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
US6067551A (en) * 1997-11-14 2000-05-23 Microsoft Corporation Computer implemented method for simultaneous multi-user editing of a document
US6558431B1 (en) * 1998-09-11 2003-05-06 Macromedia, Inc. Storing valid and invalid markup language in strict and relaxed tables respectively
US6754677B1 (en) * 2000-05-30 2004-06-22 Outlooksoft Corporation Method and system for facilitating information exchange
WO2002017115A2 (en) * 2000-08-21 2002-02-28 Thoughtslinger Corporation Simultaneous multi-user document editing system
US6988241B1 (en) * 2000-10-16 2006-01-17 International Business Machines Corporation Client side, web-based spreadsheet
US6898760B2 (en) * 2001-01-05 2005-05-24 Microsoft Corporation Reporting status of external references in a spreadsheet without updating
US7818678B2 (en) 2002-10-31 2010-10-19 Litera Technology Llc Collaborative document development and review system
US8719325B2 (en) * 2003-02-28 2014-05-06 Microsoft Corporation Method to initiate server based collaboration on e-mail attachments
US7233951B1 (en) * 2004-02-18 2007-06-19 Microsoft Corporation Spreadsheet grid-like control for a web-based collaboration system
US20050216522A1 (en) * 2004-03-23 2005-09-29 Integrated Data Corporation Multi-tier document management system
US7213199B2 (en) * 2004-07-16 2007-05-01 Cognos Incorporated Spreadsheet user-interface for an enterprise planning system having multi-dimensional data store
US20060026502A1 (en) * 2004-07-28 2006-02-02 Koushik Dutta Document collaboration system
DE102005048693B4 (de) * 2005-10-11 2009-07-09 Assa Abloy Sicherheitstechnik Gmbh Türöffneranordnung sowie Adapterstück zur Verwendung in einer Türöffneranordnung
CN1979466A (zh) 2005-11-29 2007-06-13 国际商业机器公司 允许多个用户同时编辑一个共享的电子文档的方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007115149A1 (en) * 2006-03-31 2007-10-11 Google Inc. Collaborative online spreadsheet application

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSND199900087019; 杉山 博: '目指せ!表計算の達人MS-EXCELステップアップ講座第27回' Hello!PC 第5巻 第3号 第5巻, ソフトバンク株式会社 SOFTBANK CORP. *
CSND200300083010; 杉山 靖彦: 'Excel道を究める' ASCII 第24巻 第10号 , 20001001, 株式会社アスキー *
JPN6013022734; 杉山 靖彦: 'Excel道を究める' ASCII 第24巻 第10号 , 20001001, 株式会社アスキー *
JPN6013022735; 杉山 博: '目指せ!表計算の達人MS-EXCELステップアップ講座第27回' Hello!PC 第5巻 第3号 第5巻, ソフトバンク株式会社 SOFTBANK CORP. *

Also Published As

Publication number Publication date
KR101566566B1 (ko) 2015-11-05
US20090112937A1 (en) 2009-04-30
JP5426561B2 (ja) 2014-02-26
KR20100070359A (ko) 2010-06-25
CN101842802A (zh) 2010-09-22
US7756824B2 (en) 2010-07-13
WO2009055531A2 (en) 2009-04-30
WO2009055531A3 (en) 2009-07-02
EP2220609B1 (en) 2018-07-11
EP2220609A2 (en) 2010-08-25
EP2220609A4 (en) 2017-12-13

Similar Documents

Publication Publication Date Title
JP5426561B2 (ja) リッチ・クライアントとブラウザ・クライアントの間のスプレッドシート共同作業
TWI556168B (zh) 外部服務應用程式探索方法
RU2379755C2 (ru) Система и способ для совместного использования объектов между компьютерами по сети
RU2421799C2 (ru) Безопасность в приложениях синхронизации равноправных узлов
US8255359B2 (en) System and methods for asynchronous synchronization
US10831776B2 (en) On-demand file synchronization
CA2458249C (en) A method for managing multiple file states for replicated files
US20170272478A1 (en) Method To Initiate Server Based Collaboration On E-Mail Attachments
KR101099297B1 (ko) 전자파일의 제1 버전과 제2 버전을 동기화하기 위한 방법 및 컴퓨터 판독가능 기록 매체
KR101323037B1 (ko) 생산성 제품군 애플리케이션 및 호스팅된 사용자인터페이스를 위한 인터페이스들
US6983416B1 (en) System and method for cooperative editing of web document
US20090327358A1 (en) Resolving conflicts in content management systems
CN102227720B (zh) 在多个设备的范围内支持媒体内容回复功能
US20050192990A1 (en) Determining XML schema type equivalence
KR20120017442A (ko) 서버 저장 모델을 이용하는 파일 파티션들의 동기화
WO2019047976A1 (zh) 网络文件管理方法、终端及计算机可读存储介质
US20110208761A1 (en) Coordinating content from multiple data sources

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111014

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111014

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130517

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130816

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130823

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: 20131101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131128

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5426561

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250