JP2020504889A - スプレッドシートに基づくソフトウェアアプリケーション開発 - Google Patents
スプレッドシートに基づくソフトウェアアプリケーション開発 Download PDFInfo
- Publication number
- JP2020504889A JP2020504889A JP2019549616A JP2019549616A JP2020504889A JP 2020504889 A JP2020504889 A JP 2020504889A JP 2019549616 A JP2019549616 A JP 2019549616A JP 2019549616 A JP2019549616 A JP 2019549616A JP 2020504889 A JP2020504889 A JP 2020504889A
- Authority
- JP
- Japan
- Prior art keywords
- spreadsheet
- data
- page
- web
- user interface
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Abstract
Description
以下に、本明細書で説明される本発明の種々の態様の簡略化された概要を提示する。この概要は、詳細ではなく、鍵となる又は重要な要素を特定すること又は請求項の範囲を線引きすることを意図していない。以下に提供されるより詳細な説明への序章としていくつかの概念を簡略化された形態で単に提示する。
単に例示的な参照のために、スプレッドシートの2つの使用スタイルが本明細書で言及される。他のスタイルが代替的に用いられ得る。1つ目は、各レコードがシート全体又は多くのシートを危険にさらすファイル全体を備えるシートレコードである。例えば、多くの会社は、作成する販売見積書毎に新しい販売見積書スプレッドシートファイルを保存する。該ファイルは、バックエンド計算に関する1つのシートと印刷可能な見積書を有することを意図する1つのシートなどのいくつかのシートを有する場合があり、印刷可能な見積書シートは、典型的に、すべて該単一の見積書を表す、テキスト、数字、及び結果がテキスト又は数字となる式を含む、多くの行及び列を有することになる。それらはまた、公正に読み出し可能なプリントアウトを可能にするのに十分な書式設定を含み得る。
ここで、例示的な実装を参照してユーザインターフェース・テンプレートに関してステップ201及び205をより詳細に説明する。伝統的なスプレッドシートアプリケーション、クラウド及びウェブベースのスプレッドシート、又はウェブアプリケーション内に埋め込まれた簡易化されたスプレッドシート・インターフェースのいずれで行われるかに関係なく、スプレッドシートツールは、訪問者又はレポートレイアウトに関する所望のユーザインターフェースを表すスプレッドシートを作成するのに用いられ得る。例えば、テンプレートは、単一の見積書に適切であろう値及び式を含む多くの行及び列を有する1つのシートを有することもできる:最上部付近にクライアントの大きいフォントテキストタイトル、その後に“Invoice Number”として第1の値を有する行、及びその右に実際のインボイスナンバーを表示することを意図されるセル。その下のいくつかの行は、コメントをイタリック体で表示することを意図された、複数の行及び列にわたるセルを有し得る。シートの最下部付近に“Subtotal”とラベル付けされるセル、その右に、該特定のインボイスの合計を表す数字を有することを意図された、“$”記号で通貨を指定するセル書式設定を有するセル(このとき該セルはグリッド上のC15の位置を有する)。次の行は、税及び税の後に合計に関係したセルを有し得るが、後でそこに配置される値を有することを意図するのではなく、税及び合計セルは、“=C15*10%”などの小計セルの場所を参照するスプレッドシート式を有することになり、この場合、C15への変更は、これらの式に基づく合計に影響を及ぼすことが意図される。
スプレッドシートツールでテンプレートシートを設計している間、特定のレコード又は多くのレコードから導出される集計値を表すことを意図しているセルは、ブランクと評価され得る及び/又は設計者に書式設定を示すこと以外のシステムへの影響を有さないプレースホルダ値を有し得る。外部リスト又はデータベースは、C15などのセルの場所の相互参照と、インボイスの小計を表示するなどのそれらの意図された目的を含み得る。代替的に、テンプレートシートからレコードシートセルが参照可能である場合、レコードを指すこれらのセルに式又はプレースホルダ式を挿入することができる。例えば、テンプレート上のクライアントタイトルセルは、“=ClientList!A1”などの式を有してよく、これはもしかするとプレースホルダとして設計時間中にスプレッドシートツールによりテキスト“Client”へ評価されることになり、又はおそらく、該式は、“=ClientList!A2”となり、これはもしかするとプレースホルダとして設計時間中に“Pleasant Solutions”としてスプレッドシートツールにより分解されることになる。加えて、参照は、“=ClientList!A:A”又は“=ClientList!A1:A1000”へなされ、結果的に、ブランク、エラー、又は意図せぬ値を生じることもある。上記のケースのそれぞれにおいて、設計時間中に結果を生じるテキストは、設計時のプレースホルダにすぎず、訪問者に関するなどの後の時点での実際の評価中にwebifierを支援するためにClientList上のどの列がテンプレートに記入する際に用いられるべきかの有用な情報を有する式自体ほど重要ではない。便宜上、この概念は、概してTemplate Indicatorと呼ばれることがある。
ステップ207(図2)は、スプレッドシートが適用可能なデータで要望に応じて構成されると、設計者が、1つ又は複数の例示的な実施形態に関連して本明細書で説明したwebifierソフトウェアを用いてデスティネーションシステムを構築するべくプロセスを開始することをさらに含み得る。ユーザは、デスティネーションシステムにログインし(図13)、スプレッドシートを受け入れる管理ウェブページを訪問し得る。例えば、webifierソフトウェアは、xlsxスプレッドシートファイル(図68)、例えば、データ129(図1)のアップロードを受け入れる入力フォームを有し得る。代替的に、webifierは、クラウド及びウェブベースのスプレッドシートツールからweb−service APIを介して、APIがそれを可能にするならシートのグループを一度に又はさらにはAPIがそれを必要とするならセルごとに、スプレッドシート定義をフェッチするべく統合を有し得る。簡略のため、すべてのこれらの方法は、本明細書で「アップロードする」、すなわち、スプレッドシート定義又はデータファイルをwebifierデータストア、例えば、データベース131へアップロードする(図1)として言及される。特に、レコードをアップロードするための及びインターフェーステンプレートをアップロードするための別個のステップは必要とされず、それらは1つのスプレッドシート定義から設計者から1つのステップで行うことができ、又はそれらは別々の時点で行われ得る。
ステップ209(図2)に関連して前述したように、結果として生じるソフトウェアは、例示的な実装に関連して本明細書で説明した1つ又は複数のウェブページを備えるウェブアプリケーションを含み得る。設計者は、webifierソフトウェアのadminインターフェースにおいて“add page”特徴を選択し(図18、図69、及び図55)、様々なページタイプ(図51)及び構成オプション(図52)から選択し得る。スプレッドシート定義内のセルデータ又はメタデータは、新しいページを作成する、どんなタイプのページが設計者により意図されたか、及びそれらの種々の構成オプションの、インジケータ又は命令を含むことが可能であるが、この情報がなければ設計者は催促され得る。多様なページタイプをデスティネーションサーバ上で作成することが可能である。典型的に、すべての生成されたデスティネーションページのメニューは、web appの全体を通した便利なナビゲーションを可能にするべく、すべてのデスティネーションページ上にメニューとして表示され(図66の“Timesheet”web appメニューは、該特定の例に関するすべての3つのデスティネーションページをリストする)、デスティネーションページは、“apps”によりグループ化されてよく、それらは典型的に、それらがどんなスプレッドシート定義又はファイルから生じたかに基づいてグループ化される、及び/又はそれらを作成した設計者によりグループ化される(ログイン設計者、又はログイン設計者とスプレッドシート定義を共有した他の設計者又は他のグループから)(図16)。デスティネーションシステムのメニュー内のデスティネーションページの順序は、設計者がAdd−On内からそれらの順序を変更するべくページをドラッグ及びドロップすることにより修正することができる。
webifierソフトウェアが作成し得るウェブページの1つの例示的なタイプは、“report”ページタイプである。レポートのタイトルは、ユーザにより指定され得る、又はスプレッドシートのデータ又はタイトルから生成され得る(図52)。ソースも指定され得る。ソースは、スプレッドシート定義内のシート名(図33に示すCSV_Importページタイプに関するソース制御と同様に)、“=B9:C12”などの典型的なスプレッドシートセル範囲参照(図36)、スプレッドシート内で定義されるチャートの名前(図52)、又は“TotalColumn”又は“PrintableArea”又は“Employee List:Employee”などの名前により指すことができるセル範囲であるスプレッドシート“named range”(往々にして“defined name”として知られている)(図36)とすることができる。一般に、範囲は、連続するブロックである必要はなく、それらは、いくつかのブロック及びセルを備え得る。例えば、“A1:A8,A10,A30:B30”。多くのページが同じソースセルを参照してよく、ソースセルは、別のページのソースと部分的に重複してよく、又はページは、組み合わされることになる一連のソースを有してよい。これは、設計者がスプレッドシートツールにおいて設計したレポートに基づいてデスティネーションシステムがHTMLウェブレポート又はモバイル画面を訪問者に示すのに十分な構成であり得る。例えば、ClientListシートは、このとき訪問者がアクセス可能となっているリストにおける行レコードのすべてで指定することもできる。“Show Page Title”などの多数の随意的な構成が指定され得る(図28)。ページを閲覧するのにログインが要求されるかどうか(図24)、どんなログインユーザ又はユーザのグループ又はロールが、どんなデバイス、ネットワークから、又はどんな時間帯にページの閲覧を許されるかを制御するべく、app又はページ上でパーミッションルールも指定され得る。図25は、どんなログインユーザがページの閲覧を許されるかを示す簡易化された例を示す。最終結果は、ユーザがウェブデザインの知識を有することを必要とせずに、データのレイアウト及び書式設定(図97)を含むデータを供給するオリジナルのテンプレートスプレッドシートと似ているように見えるレポートを表示するウェブページである。
webifierが作成することができる別のタイプのページは、例えば、例示的な実施形態に係る、上記の(図43)、ステップ211(図2)中に用いられ得る、“insert”ページタイプである。同様に、ClientListのソースが指定され、訪問者により行又は列が挿入可能であることを設計者が意図するかどうかのインジケータであり得る。ヘッダの行を表すセルの範囲は、自動的に識別又は検出され、オーバーライドのためにユーザに提示され得る(図39)。検出は、例えば、セルの場所(第1のアイテムがヘッダであることの検出を実証する図40)、その下にリストされた行と比較したフォントの太さ又は下線などの書式設定の差異、又は簡単にシートの第1の行を取り上げることに基づくことができる。デスティネーションシステムは、訪問者により挿入が完了した後で訪問者に自動的にリダイレクトするためのオプションとして他のページのリストを提供することができる(図44)。デスティネーションシステムは、次いで、それらのそれぞれの入力制御の傍のヘッダ行に列に基づくラベルを有する、自動的に生成される入力フォームを訪問者に示し、訪問者がデータを挿入することを可能にし得る(図91)。スプレッドシートのClientListからのセル書式設定は、自動的に生成される入力フォーム上のセルのラベルのhtml書式設定及び入力制御に影響を及ぼし得る。各入力フィールドに関するラベルは、“Header Source”により決定されてよく、典型的に、ソース範囲の第1の行、Defined Name、又はユーザにより選択された範囲のいずれかである。
Insertページがより高い複雑さ又はカスタムの要件を有する場合、設計者はまた、例示的な実施形態によれば、スプレッドシート内の第1のClientListソースに加えて、スプレッドシート内の“Template Source”を指定することもできる(図35)。これは依然としてクライアントのリストへの挿入を行うことになるが、入力フォームユーザインターフェースは、Template Sourcesにより定義され得る。Template IndicatorがそのTemplate Sources上のどこで見つかっても、セルの表示は、自動的に生成される入力制御に置き換えられてよく、入力制御の書式設定は、Template Indicatorセルの書式設定からとられる。
別のページタイプは、例示的な実施形態によれば、指定のレコードソース及びTemplate Sourcesに基づく“details”ページである。デスティネーションシステムは、テンプレートがどのレコードに対して適用されるべきかを訪問者が選択することを可能にする、テンプレート化されたレポートのレンダリングの結果の上に制御を配置し得る。代替として、Detailsページは、Reportページと組み合わせて用いられ得る。ReportページとDetailsページとの両方は、ソースとしてClientListスプレッドシートを有することになる。ClientListスプレッドシートは、“Go To Details”と呼ばれる追加された列を有してよく、各行は、“=NAVIGATETO(‘DetailsPage’, A3:Z3, Blue, LinkStyle)”などの式を有することになり、これは、クライアントのすべてをリストするメインReportページの表示中に、行3又はクリックされたそれぞれの行によりポピュレートされるDetailsPageに訪問者を連れていくことになる、ハイパーリンクスタイルナビゲーション制御が各行上で見えるべきであることをデスティネーションシステムに示すことになる。別の代替として、Reportページ作成中の構成オプションは、ClientListスプレッドシート内の指定の右にそれらを有するのではなく、生成されるべきナビゲーションリンクを指定するように設計者に促し得る。Detailsページ上の評価されるレコード値のセル書式設定は、Template Indicatorセル書式設定とTemplate Indicatorセルにレコードデータをポピュレートするセルの任意の所与の行の書式設定との組み合わせであってよく、組み合わせ可能な書式設定に対して両方のセルが競合する書式設定を有する(レコード上の色の変更がテンプレート上のより大きいフォントサイズと組み合わされたなどの)場合にどちらの書式設定が優先になるかに関するデスティネーションシステムのデフォルトの挙動及び設計者により選択される好みに応じて一方が他方をオーバーライドする。デスティネーションシステムはまた、ほとんどの一般的なフォーマットはテンプレートフォーマットをオーバーライドしないが、いくつかの稀な、したがって、意図的な書式設定の変更はテンプレートフォーマットをオーバーライドすることを許され得ることを保証するべくレコードを分析してよい。
訪問者がデスティネーションシステム上のデスティネーションページ内からセルを編集するために、例示的な実施形態によれば、設計者は、Edit Cellsページ(図38)又はEdit−Recordページ(図41)を作成することができる。ページ作成ウェブページから、タイトルを入力し、ページタイプ“Edit−Cells”又は“Edit−Record”を選択することにより、それらは同様に作成され得る。Edit−Cellsページは、訪問者が個々のセルを編集することを可能にするが、訪問者が可視要素(図88)との対話を始めるまでは、Reportページによく似たページを表示する。Edit−Recordページは、訪問者がレコード(図89)をブラウズし、行又は列を編集及び/又は削除することを可能にしてよく、デフォルトのフォーム生成を有するInsertページと類似していてよい(図90)。ページソースは、ページ上に表示されるべきセルの値の範囲であってよく、デフォルトで、どんなセルを編集することができるかを指定する第2の範囲(図42)は、すべてのセルが編集可能であるようにページソースと一致する。範囲は、ワークシート全体、定義名、及び/又はカスタム範囲であり得る。デスティネーションシステムは、データを有するすべてのセル及びデータを有するものの間のセルを表示するべくソース範囲を調べる。両方の編集ページはまた、ユーザが挿入することによりレコードセットを拡張できるようにするべく、空きスペースの付加的な行及び/又は列を有し得る。定義名又はカスタム範囲は、該範囲により参照されるセルのみを含むことになる。デスティネーションシステムは、設計者により範囲が指定された後で定義名を作成することによりカスタム範囲オプションを実装し得る。Edit−Recordページタイプは、ページ上で利用可能な編集ボタンを決定し得る、Row又はColumnの付加的な選択を有する(図41)。
Add−OnでCalendarページが作成され得る(図27)が、それらはまた、例示的な実施形態によれば、ウェブサイトを通じて作成することができる。Calendarページを作成するために、3つのデータ:Event Date(必須、日付によりフォーマットされるセル)、Event Time(随意的、時間によりフォーマットされるセル)、及びEvent Title(必須)が用いられ得る。ユーザは、Add Pageボタンを選択し、次いで、ページタイプとしてCalendarを選択する。パラメータ:Defined Name及びCustom Rangeのそれぞれに関するセル範囲をどのようにして入力するかの2つのオプションが利用可能である。Defined Nameは、ユーザが、付属のWorkbookから抽出されるDefined Nameオプションのリストを選ぶことを可能にする。Custom Rangeは、“Use current selection”ボタンを押すこと又はセレクタに手動で入力することのいずれかにより、ユーザが範囲を指定することを可能にする。これらのパラメータが指定された後で、ページを保存することができる。イベントの日付は、唯一必要とされるフィールドであり、タイトルなしのイベントは、デフォルトで“Event”に設定され、時間なしのイベントは、デフォルトで“All Day”に設定され得る。サーバに変更をアップロードした後で、Calendarページビューは、指定のイベントを含むCalendarウィジェットを表示する。3つの指定のパラメータソースが抽出され、Title、Date、及びTimeプロパティからなるイベントオブジェクトを構築するのに用いられる。これらのオブジェクトは、次いで、典型的にはそれらの適切な日付内のタイトルリストとして、Calendarウィジェット上に表示される。設計ページ上のサムネイルは、レンダリングされたCalendarウィジェットを反映する及びそれと一致する。
Containerページは、別のページの1つ又は複数のインスタンスを含むことができるページである。それらは、ページ作成中にTypeドロップダウンから’Container’を選択することにより作成される。UIのボタンを介して選択することができるContainerページ:Easy、Advanced、及びGraphic Designerを作成するのに用いることができる、少なくとも3つの異なるモードが存在し得る(図29)。
CSV Importページ(図86)は、例示的な実施形態によれば、訪問者がCSVファイルから一度に複数の行をスプレッドシートに挿入することを可能にする。設計者は、CSV Importページに関するソースとしてワークシート、定義名、又はカスタム範囲を選択することができる(図33)。このソースは、ページ上のどこに新しいデータが入力されることになるかを指定する。これは、インポートされるCSVファイルにおいて可能な列の数を制約する又はしない場合がある。例えば、$A$1:$C$1の範囲をカバーする定義名ソースは、3つの列を有するCSVファイルのみ可能にすることになり、データは、列A、B、及びCにわたる最高の利用可能な行に挿入されることになる。代替的に、これは余分な列を無視し得る。
タイトル及びソース範囲で指定され得る別のページタイプは、例示的な実施形態によれば、埋め込み型スプレッドシートページである。このページタイプは、埋め込み型スプレッドシート・インターフェースを訪問者に表示し、スプレッドシートの設計者により指定された部分の値及び式を設計者がするのと同じ方法で訪問者が編集することを可能にする。スプレッドシート制御の実装は、包括的である必要はなく、訪問者がスプレッドシート外のデータを参照するどのような能力を有することも必要としない。この実装は、データをスプレッドシート定義フォーマットで受け入れ、訪問者が保存すると、結果的にスプレッドシート定義フォーマットを生成する、多くの市販のスプレッドシートウェブ制御のうちの1つを利用することができ、この場合、セルの式又はセルの値は、スプレッドシート制御に提供される一時的なシートに及びそこから1つずつ容易にコピーされ得る。
webifierは、例示的な実施形態によれば、複数の他のページタイプを同様の様態でサポートすることができる。例えば、前述の“report”ページタイプと類似しているが、デスティネーションシステムは、Reportページのhtmlを、訪問者がそのPDFページのURLにアクセスするときにブラウザ又はモバイルアプリケーションによりダウンロードされ開かれるPDFドキュメントへ変換する又は印刷する付加的なステップを行うためにPDFライブラリへの市販のコンバータ又はプリントを用いてよい。
スプレッドシートが定義されると、webifierは、例示的な実施形態によれば、スプレッドシート定義に基づいてデスティネーションシステムページを生成し得る。スプレッドシート定義がデスティネーションシステム上に持続的に記憶される例では、プロセスは、適用可能なソース範囲内に入るセルの定義を抽出し、利用可能にすることで始まる(図2のステップ207)。スプレッドシート定義がxlsxファイルフォーマットで始まる場合、ファイルは、XMLフォーマットの中身を取得するべく解凍され得る。初歩的な文字列パーシングから洗練されたパーシングまでの様々なXMLパーシングオプションが、通常は、XMLパーシングライブラリにおける関数を呼び出すことにより行われ、セル及びそれらの属性を含む個々のデータセクションのすべてを通して反復するために、並びに、それらをインメモリオブジェクト指向クラス及びインスタンスなどの代替又は中間フォーマットへロードするために便利なアクセスを提供するのに用いられる。代替的に、xlsx、MS−XLSB、SpreadsheetML、ODSフォーマット、及び同様のスキーマに適合する市販のスプレッドシートファイルフォーマットパーサが、スプレッドシートのデータを、スプレッドシートデータにおいて典型的に見受けられる属性及びフォーマットに便利に特化されたオブジェクト指向クラスで明らかにするのに用いられ得る。
ステップ207及び/又は209(図2)中に、データは、中間フォーマットに変換されてよく、これは、例示的な実施形態によれば、関連するデータ属性を、スプレッドシートクラスではなくCSS又はHTMLクラスにより近く似ているクラスでより便利にアクセス可能にし得る。例えば、クラス上のプロパティ名は、CSSのプロパティ名と一致してよく、又は“ObtainCSSDefinition()”などのクラスに対するいくつかの方法が存在し得る。しかしながら、中間フォーマットの便利さは必要とされず、代替的に、webifierは、CSS及びHTMLのデスティネーションページの出力フォーマットに従ってデータを記憶してよい、又は、データをオリジナルのスプレッドシートフォーマットで記憶し、後でストリームを中間ストレージなしに出力フォームへまっすぐに向けてよい。例えば、列の幅を処理するために、XMLスニペット“<col min=”1” max=”2” width=”11.8”>”の“width”属性の値を読み出し、CSSによりサポートされるユニットに変換し、結果的に生じる列クラスの“csswidth”プロパティを記憶する、又はこれをCSS出力ストリーミング機能の一部として“width:100px;”としてストリーム出力することもできる。
訪問者に送信されることになるCSSテキスト定義に関するストリームへのオブジェクトのプロパティのシリアライズの一部として、デスティネーションシステムは、例示的な実施形態によれば、どんな種類のページタイプ及びどんなタイプの訪問者デバイス特徴が所与のターゲットページに適用可能であるかなどのファクタを考慮に入れ得る。例えば、ページが“report”タイプのものである場合、webifierは、“<td>Cell Text</td>”のようなhtml TDセルとしてのボーダーを有するセル及び“td { border:1px solid black; }”などのいくつかの関連するCSSを出力し得る。しかしながら、ページが“edit details”タイプのものであり、且つ、セルが編集することができるセルとして指定される範囲内に入る場合、webifierは、代わりに、所望の入力制御のスタイルに応じて“<td><input type=text value=”Cell Text” /></td>”として同じセル及び異なるCSSを出力し得る。
往々にして、スプレッドシートツールは、データ検証能力を含む。例えば、データ検証ルールは、スプレッドシートツールで指定することができ、その場合、セルは、特に、整数のみ可能にする、10進数のみ可能にする、指定の最小範囲及び最大範囲内の数のみ可能にする、おそらく最小範囲及び最大範囲内の日付又は時間のみ可能にする、可能な文字の最大数を制限する、又は必要な文字の最小数を制限するべきである。データ検証はまた、セルが、リストで指定される値のうちの1つを含むことのみ可能にするように設定することができる。リストは、値のシンプルテキストリストとしてデータ検証定義中に提供することができ、又は、スプレッドシート上のセルの範囲への参照を指定することができ、その場合、ツールは、そこから容認できる値のリストを得ることになり、該セルに関するスプレッドシートツール内にドロップダウン制御を生じさせることができる。データ検証はまた、結果的にtrueを返す典型的なスプレッドシート式を生じることになる値のみを可能にするように設定することができる。例えば、セルB1に関して、式は、“=OR(B1>=0, AND(A1=0, A2<40))”を指定することもでき、この場合、B1は、正の数とすることができ、又はセルA1がゼロであり、且つA2が小さい数である場合に、負とすることができる。いくつかのツールは、ブランク値が検証をパスすることを可能にするべく例外を指定することを可能にする。例示的な実施形態によれば、デスティネーションシステムは、スプレッドシート及びスプレッドシートセル定義から設計者が指定した上記のデータ検証タイプ及びオプションのすべてを読み出すことができる。データ検証は、セル定義XML上とすることもでき、又はデータ検証ルールは、ルールが適用されるセルのリストと共に、スプレッドシート定義におけるグループとしてどこか別の場所で定義することもできる。デスティネーションシステムは、スプレッドシート定義から該情報を抽出及び処理してよい。スプレッドシート内で適用されたデータ検証ルールを有するセルに対応するデスティネーションシステムからの値の挿入又は編集などの入力中に、デスティネーションシステムは、訪問者の入力値をこれらの検証ルールと比較して評価することになる。評価は、サーバ上で行うこともでき、又は例えば要求がサーバへ送信される必要なしにユーザの入力を評価することになるクライアント側JavaScript(登録商標)にルールを渡すことにより行うこともできる。データ検証に失敗する場合、訪問者に値を訂正する機会を与えるべくラベル又はポップアップ警告が示されてよい。データ検証ルールが、そこから容認できる値のリストを得るためのセル参照に関係していた場合、又はデータ検証ルールが、true評価を必要とする式に関係していた場合、システムは、式を評価するのに必要とされる又はシステムが容認できる値のリストを知るのに必要とされる他のセルの値をデリファレンスしてよく、これは次に、訪問ユーザの入力を可能又は不可能にすることになる。スプレッドシート定義が、日付に基づくルールを指定する場合、デスティネーションシステムは、ユーザがそこから日付を選ぶべくポップアップのカレンダー制御を有するように、挿入又は編集フォーム上に出力される制御を修正してよく、随意的に、無効な値が警告付きでタイプされるがサーバへサブミットされないようにするのではなく、無効な値が最初から指定されるのを防ぐために、テキストボックス制御自体にタイピングすることは不可能にされる。
多くの訪問者が、デスティネーションシステムにログインし、読出し専用ページを同時に要求することもできる。編集に関係する要求に関して、サーバは、例示的な実施形態によれば、入ってくる要求又はレコードを修正する要求のコアコードのすべてをキューにシリアライズしてよく、これは、今日の処理能力を考えると事実上同時であるように見えるであろう。多くの異なるページタイプに適用可能な、デスティネーションシステムは、スプレッドシート定義から生じるセル参照及び式を、ユーザに表示される又はスプレッドシート定義における又はデスティネーションシステムの他の領域内のさらに他の式に再帰的に用いられることになる、シンプルテキスト及び数値へ分解し得る。式の分解は、多くの方法で完了され得る。スプレッドシートツールと同じコア処理エンジン又はライブラリが再利用されてよく、又はカスタムのパーシング及び式処理エンジンがデスティネーションシステムに埋め込まれるように構築されてよい。いずれにしても、エンジンは、行及び列のインデックス値に基づいてセル参照を分解する1つ又は複数のコールバックを有してよく、又は、セル定義を記憶するデータベースにスプレッドシート定義を渡す又はこれにアクセスすることもできる。パスインされるスプレッドシート定義は、パスインされたオリジナルのスプレッドシート定義と同じではない、簡易化された又は他の方法で修正された、再生成された定義であってよく、又はオリジナルのスプレッドシート定義がパスインされてよい。編集に何らかの衝突があるケースでは、システムは、時間(例えば、最後の人が勝つ(last man wins))又はあらゆる他の所望のヒューリスティックスに基づいて受け入れられた編集を選択又は指定し得る。
webifierは、例示的な実施形態によれば、ワークフローのいくつかのフォームが、Reportページタイプ及び他のページタイプのバリエーションで定義されることを可能にし得る。行レコードシート上で、行ごとの、したがって、レコードごとの訪問者パーミッションに影響を及ぼすことを意図した列を設計者が追加することもでき、その場合、特定の列のセルの式の結果により、デスティネーションサーバがその行を出力結果に含む又は含まないことになる。例えば、列Aが従業員の名前を含み、列Bがいくつかの時間を含む従業員タイムシート・スプレッドシートと、該シートのソース領域を有するReportページタイプを想像してみる。追加の列Cは、“=IsLoggedInUser(A1)”に似たレコードを表す各行に関する式を有してよく、この場合、A1は、第2の行に関してA2に、以下同様に変化することになる。これは設計者に値を示すべく設計時間中に分解することができないが、デスティネーションシステムは、Reportページをリストするタイムシートを訪問者が訪問するときに式の列を評価することになる。反復中に、デスティネーションシステムは、その行の列Aで指定される従業員が訪問者ではなかった場合に、訪問者に関する行のレンダリングをスキップすることになる。行は、列Aにおける訪問者と一致した場合にレンダリングされ続けることになる。最終結果は、従業員が、該従業員に関係する時間レコードの行のみを示すことになるスプレッドシート定義に基づいて、タイムシートウェブページを訪問することができたことである(図20)。同様に、シートがスーパーバイザを指定する列を有していた場合、スーパーバイザのタイムシート概要ページは、該スーパーバイザの権限下の時間レコードのみをリストし得る。
訪問者の便宜のために、例示的な実施形態によれば、値のテキスト編集をボタン制御へ変更するためのシグナルとしてデスティネーションシステムが見るタグを含むスプレッドシートツールのコメント特徴を用いて、メタデータが、セル、例えば、セルコメント上で指定され得る。例えば、設計者が各データレコード上の“approved”値を望んだ場合、文字列“true”をタイプするべくテキストボックスを訪問者に提示するのではなく、セルの値をfalseからtrueに変更することによりレコードの承認を示すべく訪問者がボタンをクリックできることが設計者に好まれる場合があり、その場合、訪問者は“false”に“true”を戻し入れるように変更し得る。これは、結果的により使いやすいシステムをもたらすとともに、値への変更が一方向であるケースの一助となる(例えば、falseからtrueになっても、設計者は、レコードが決してfalseに戻ることが有効であるとは感じない)。
入力を防ぐことは、設計者がソースはレコードシートであると指定したページに関する制御を無効にすること又は非表示にすること、若しくはサーバが多少なりとも制御を訪問者に送信しないようにすることを含むことができる。セキュリティのために、サーバはまた、例示的な実施形態によれば、訪問者は通常のブラウザではなく悪意のあるエンドポイントである可能性があるため、HTTP POST要求を用いて投稿されるサブミットされた入力が同じ論理に基づいて許されるかどうか、制御がユーザに提示されたかどうかを確認し得る。様々な行レコードをポピュレートされることを意図された他のテンプレートスプレッドシートを利用する他のデスティネーションページはまた、同じ論理を用いて許容を評価する。例えば、インボイス詳細テンプレートのTemplate Sourceを有するインボイス詳細レポートページが、デスティネーションシステムの訪問者によりアクセスされており、且つ、インボイスレコードリスティングシート上の行2上にインボイス205をポピュレートされている場合、デスティネーションシステムは、行2が行2へのアクセスを制約する式を有するかどうかを指定する列に関するインボイスレコードシートをチェックすることができる。制約する式を有する場合、デスティネーションシステムはまた、インボイス205に関するインボイス詳細レポートページへのアクセスを制約することになる。ネストされるテンプレートの場合、又は単一のテンプレートに複数のソースシートが用いられる場合、及び他のこのような複雑なシナリオでは、デスティネーションページの一部はポピュレート及びレンダリングされ、一部はされないが、カスケーディングの基礎をなす方法は残る。
レコードごとの式を有する列を追加することの代替は、例示的な実施形態によれば、シート上の又はシートの外部の指定される又は参照される場所に入力され、デスティネーションシステム内に記憶される、別個の単一式を有することである。この代替では、デスティネーションシステムは、各行を通して反復し、反復している現在の行又はレコードに式を適用することになる。webifierの他の領域は、代替的な式の同じ集中化を利用し得る。
往々にして、単一のレコードシートは、異なるパーミッション及び異なる意図された訪問者を有する多くのデスティネーションシステムページの基礎である。このようなケースでは、例示的な実施形態によれば、それぞれのデスティネーションページのパーミッションに影響を及ぼすべく異なる式を含むためにいくつかの列を用いることもできる。代替として、デスティネーションシステムは、スプレッドシート定義にOverlay Sheetを追加してよい。Overlay Sheetは、最初にすべて同じ値を有する行レコードシートの複製であり得る。これは、行レコードシートに基づくことを意図された及びページに固有の修正を有することを意図されたシートとして、シートのスプレッドシート定義上のメタデータと共に、デスティネーションシステムによりOverlay Sheetとしてフラグを立てられ得る。設計者は、次いで、Overlay Sheetに列Cを追加してよく、デスティネーションシステムは、上記とほぼ同じように列Cを用いてよいが、代わりに行レコードシートに追加されたかのように式を評価し、これは、Overlay Sheetが作成されてからリストが変更された場合に行レコードの最新のリストに対してそれが作用することを可能にする。異なるデスティネーションページに関する異なるOverlay Sheetsは、異なる列C式を有し得る。Overlay Sheetsは、ベースの内容を同期して保つために、行レコードシートが変更されたときにはいつでも更新され得るが、意図された新しい列Cだけは例示的な違いとして持続する。
デスティネーションシステムが、ページ作成中に列Cが行ベースのパーミッションを指定することを示すフィールドを有するのではなく、代替は、例示的な実施形態によれば、これを暗示するスプレッドシート定義を有することである。スプレッドシートは、伝統的な“spreadsheet tables”を有してよく、これは通常、セルの領域を備え、スプレッドシートツールを色付けすることができ、ヘッダロー上のフィルタオプション及びソートオプション、及び伝統的なスプレッドシートツール内で閲覧されるときのシート内の行の表示を管理するための他の特徴を有することができる(図74)。webifierは、ページのために用いられるソース行レコードシートのスプレッドシート定義における又はページのために用いられるOverlay Sheetにおける伝統的なスプレッドシートテーブルの存在をチェックすることができ、テーブルが存在する場合、webifierは、フィルタリング、ソーティング、及び他の方法のためにテーブルの持続状態を見てよい。設計者が列Aによりテーブルのセルをソートした場合、デスティネーションシステムは、同様に列Aにより出力をソートすることになる。列Cの式に基づいて行ベースのフィルタリングパーミッションを選ぶ、前の例に関して、設計者は、テーブルを列“C=true”上でフィルタするように設定することもでき、デスティネーションシステムは、同じ論理で結果出力をフィルタすることになる。このようにして、ページの作成者が、行を見るのにtrue評価を必要とする行ベースのパーミッションを列Cが有することを示すことは必要とされない。
デスティネーションシステムが、デスティネーションシステムの訪問者に読出し専用及び/又は入力可能フォーム及び内容を提供するべく設計者のスプレッドシート定義を既に利用した後で、及びデスティネーションシステムの訪問者がレコードをもしかすると修正又は入力した後で、デスティネーションシステムは、例示的な実施形態によれば、すべてのデータ及びテンプレートの更新された、統一された、又はマルチパートの表現を、スプレッドシートツールに十分に適合するスプレッドシートフォーマットで、設計者に提供することができる。便宜上、これは、ステップ215で行われ得る場合の、抽出と呼ぶことができる(図2)。抽出は、ダウンロードされるファイルとして、又はデスティネーションシステムから情報を受信し、スプレッドシートツール内のシートを更新するデスティネーションシステムのAdd−On又はプラグイン(図54の“Download data”ボタン)を用いてスプレッドシートツールを更新することによって提供することができる。ほとんどのケースにおいて、設計者は、デスティネーションシステムからのさらなる関与が全くなしに、更新されたレコードを有するだけでなく、レコードシートに基づいて実際のデータを表示するレポートも有するスプレッドシートを受信するであろう。
Add−Onを介して又は他の方法でファイルとして又はスプレッドシートツールへ抽出されるのいずれであるかに関係なく、例示的な実施形態によれば、設計者は、このとき、デスティネーションシステムを用いる前に行ったのと同じようにテンプレートシート及び/又はレコードシートにさらなる修正を行うことができる。実際には、設計者は、デスティネーションシステムに空又はほぼ空のスプレッドシート定義を入れ、次いで、設計時間に関連する任意のデスティネーションシステム特徴を活用するべく、抽出された後にのみスプレッドシートの構築を始めることを選択し得る。単純な例として、特定の新しいweb−appを示す特定の新しいスプレッドシートは、デスティネーションシステムがこの新しいweb−appをappのリストに表示することに起因して、そのユーザにより設計されていることを他の設計者に協調のために気付かせる。
Add−Onを通じて行われたときに、webifierシステムは、例示的な実施形態によれば、スプレッドシートから(例えば、後述のCOM Interopライブラリを介して)又はデスティネーションシステムサーバから名前付き範囲を取得し、その名前を、JavaScript(登録商標)を用いてAdd−Onのウェブベースのユーザインターフェースに渡し得る。webifierは、デスティネーションページを作成又は編集するときに、又は、デスティネーションシステムがスプレッドシートセルへの参照を必要とする及び処理されるべき訪問者要求のために参照がデスティネーションシステムにアクセス可能である必要があるあらゆる他のフィールド又は状況で、データソースに関する現在選択されたセルを取り込むために新しい名前付き範囲を作成し得る。これらの範囲の名前は、“WebifierCustomRange”であり、例えば0〜2,147,483,647のランダムに生成される数が付属し得る。その名前をもつ範囲が既に存在する場合、新しい乱数は、作成された名前が既存の範囲に付いていないようになるまで生成され得る。代替的に、インクリメント数が用いられ得る。選択されたセルに関するカスタム範囲が既に存在する場合、システムは、別の名前を作成するのではなく既存の名前を用いることを選んでよい。行の挿入又は列の挿入などのスプレッドシートツールにおいて実行される動作は、通常のスプレッドシートツールの使用のように名前付き範囲を拡大する。レコードが、そのソースとして名前付き範囲を有するInsert又はCSV Importページを介して挿入される場合、これは、該範囲を、挿入されたレコードを含むように拡大することになる。任意のwebifierウェブページにより参照される名前付き範囲がスプレッドシート定義から削除される場合、シートがアップロードされるときに、システムは、無効なソースを有する影響されたページをマークすることになり、それらは、ソースが編集されるか又は削除された名前付き範囲がリストアされるまで、アクセスできないであろう。名前付き範囲は、Insert、Edit−Cells、Edit−Record、CSV Import、Report、Webpage、Calendar、及びDetails Reportページの境界を定義するのに用いられ得る。名前付き範囲はまた、Insertページ、Edit−Cellsページ、及びEdit−Recordページに関するヘッダ範囲を定義するため、及びEdit−Cellsページ及びEdit−Recordページに関する編集可能な範囲を設定するために用いられ得る(図81)。Edit−Recordページを用いると、名前付き範囲は、その範囲内のすべてのセルが削除される場合に自動的に削除され得る。
トラックするセルのボリュームが非常に高い場合、名前付き範囲は、例示的な実施形態によれば、デスティネーションシステムにより生成され、抽出されたスプレッドシート定義のすべてのセルに挿入されるユニークセルIDを含む付加的な属性を有することと組み合わせる、又はそれに完全に置き換えることができる。多くのスプレッドシートツールは、スプレッドシートツールが属性の目的の理解を有していないにもかかわらず、スプレッドシートツールにおいてセルが修正又は移動又はコピーされていても、この属性をメタデータとして定位置に保つことになる。これは、名前付き範囲の同じ利点の多くを与えるが、スプレッドシートツールのユーザインターフェースにおいて設計者に可視とはなりそうにない。デスティネーションシステムは、次いで、接続解除されている状態でユーザがどんな変更を行うかの知識を取得するべく他のセル属性とほぼ同じようにユニークIDを抽出する。その知識は、次いで、これらのセルへのデスティネーションシステム上の参照を更新するのに用いることができる、又は代替的に、これらのユニークセルIDは、あるケースでは、伝統的な行及び列のインデックス付けを用いるのではなくセルを指すのにデスティネーションシステムが用いる方法として十分であり得る。範囲はさらに、範囲の左上隅及び右下隅を表すUID:UIDとして指定することもできる。
“Configuration Sheets”と呼ばれる名前付き範囲への代替の手法はまた、例示的な実施形態によれば、名前付き範囲の位置に代入することもできる。この手法は、スプレッドシートツールが非表示にされるシートをサポートする場合に潜在的に非表示にされる“DestinationSystemRanges”という名前の付加的なシートを含んでよく、該シートは、名前及び範囲の2つの列を有する。デスティネーションシステムは、次いで、アップロード中に又は各訪問者の要求時に該シートを通して反復し、第1の列の値により、デスティネーションシステムが分解しようとしている範囲を見つけ出すことになる。例えば、“Page1_SourceRange”が、名前のうちの1つであり得る。デスティネーションシステムは、次いで、第2の列のセルの値又は式を取得し、これを名前付き範囲の定義とほぼ同じように用い得る。この手法の利点は、値が実際に伝統的なスプレッドシート式であり得ることであり、したがって、範囲の定義でさえも、スプレッドシート定義の他の要素により影響を受けることがある。これは、望外な量のパワー及び融通性を与える。例えば、インボイスの合計が>$5000である場合に、詳細ページは、そのページソース構成において、訪問者に示すことが望ましい、しかし該インボイスのみに関する付加的な細字部分をおそらく有する追加の5つの行を含むべきであるという式を指定することもできる。同時に、スプレッドシートツールは、範囲を名前付き範囲とほぼ同じように自動的に同期して保つことになる。これは、特に、最小の付加的な努力又はトレーニングで若しくはそれらなしに、カスタムのレポートの構成を設計者が効果的に修正することを可能にする。
ファイルは、例示的な実施形態によれば、WEBIFIERINSERTFILE関数を用いてデスティネーションシステムにアップロードされ得る(図7)。Insertページ又はEdit−Recordページに関するフォームを構築している間にWEBIFIERINSERTFILE列を含むフィールドに出会うときに、該フィールドに関するFile Upload制御が提示され得る(図62)。同様に、Edit−Cellsページ上のWEBIFIERINSERTFILE関数を含むセルを編集するときに、設計者は、式を編集する又は新しいファイルをアップロードする選択肢を有し得る。Add−Onを有するスプレッドシートツールにおいてWEBIFIERINSERTFILEに出会うときに、これは、WEBIFIERFILEATTRIBUTES関数を用いてファイルについての情報を取得するのに用いることができるキーを表示し得る(図64)。
署名は、イメージをアップロードする訪問者のために前述のファイルに基づく外部補足データを用いるのと概ね同じ方法論を用いてデスティネーションシステムにアップロードされ得る。しかしながら、この署名が外部データの形態であるケースでは、ファイルアップロードダイアログ及び制御は、ユーザが署名を入力することを可能にする制御と置き換えられ得る。例えば、レコードシートは、“=WEBIFIERINSERTSIGNATURE(A2,’thumbnail’)”に似ているすべての行レコード上の式をもつ列を有してよく、この場合、列“A”は、従業員の名前などの一意識別子として役立つことができるデータを有し、A2における“2”は、適切な行に変化し、“presence”は、セルが、署名が利用可能な場合に署名のサムネイル、又は署名がまだ利用可能でない場合にテキスト“n/a”を示すことを示す。設計時間中に、Add−Onは、それらをセル内に表示するために各レコードに関するこのようなサムネイルをフェッチし得る。ソースがレコードシート全体に設定されるReportページの訪問者に関して、署名サムネイルは、デスティネーションページ上に表示されるすべてのレコード行の傍に現れ得る。サムネイルは、署名が取り込まれた日付及び時間などのメタデータと一緒に取り込んだ署名の大きくポップアップするビューを開くべくクリック可能であり得る。Insert又はEditデスティネーションページ上で、大きいポップアップビューはまた、大きいキャンバス領域を有してよく、その場合、ユーザによるマウス、デジタルタブレット上のインクレスペン、又はタッチスクリーン上の指の動きが、キャンバス領域にその動きをペンとして取り扱わせ、対応するラインをキャンバス上に引かせることになる。それを行う及びフォームのサブミッション時にサーバにアップロードされることになるイメージデータと共にhtml入力フォームを提供するのに通例JavaScript(登録商標)コードを用いる、このようなキャンバスによるイメージファイルへの署名などの動きを取り込むための市販のモジュールが存在する。この例を続けると、デスティネーションシステムは、レポートページ上のレコードに関するその後の署名データの閲覧要求時に検索されるように、署名を表すイメージファイルをデータベースに記憶し得る。視覚署名の代替として、デジタル署名を表すデータが、PGP signed署名の多数の第三者型発行者のうちの1つからクライアント側のJavaScript(登録商標)により取得されてよく、このようなデジタル署名の手書きのようなフォントを用いるテキスト要約又はトークン人工署名が、署名イメージの位置に表示されてよい。訪問者は、第三者型発行者がデジタル署名を発行するために、このようなハードウェアのための市販のインテグレーションポイントを用いて、ユーザ名とパスワードのペア又はモバイルデバイスの親指スキャナ上の親指の指紋などの、認証情報の入力を必要とされ得る。
チャットオブジェクト特徴は、例示的な実施形態によれば、チャットディスカッションのストリームがスプレッドシートの1つ又は複数のセルに埋め込まれる又は関連付けられることを可能にする。チャットオブジェクトは、他の訪問者が閲覧することができるセルに訪問者がメッセージを追加すること及び該セル上に他者又は自分により残されたメッセージを閲覧することを可能にする(図58)。チャットオブジェクトは、メッセージオブジェクトのリストを表し、各メッセージオブジェクトは、典型的に、少なくとも3つの部分:メッセージテキスト、メッセージをサブミットした時を示すタイムスタンプ、及びメッセージをサブミットしたユーザのユーザ名からなる。各チャットオブジェクトはまた、一意識別子、すなわち、他のチャットオブジェクトとは別個の識別子を有し得る(例えば、図59の“6ea6cc…”。識別子は、ユーザに割り当てられたもの又はシステムに割り当てられたものであり得る。チャットオブジェクトの識別子は、チャットオブジェクトを指すため及びこれを他のチャットオブジェクトから区別するためにwebifierにより用いられ得る。
以下に、1つの例示的なユースケースのシナリオでの、デスティネーションシステムに対する訪問者入力のプロセス及び影響を説明する。webifierシステムにより生成されたInsertページフォームが訪問者によりサブミットされるときに、デスティネーションシステムは、最初に、ページがパブリックであること又はそれを使用するのに適切なパーミッションがユーザに与えられていることを確認し得る。ユーザが許可される場合、デスティネーションシステムは、ページを含むAppに関連するスプレッドシート定義を検索し、挿入プロセスを開始することになる。ユーザがInsertページの使用を許可されない場合、それらのサブミッションが却下され、システムがユーザに通知し得る。
本明細書で説明されるように、同じレコードのために、及び同様の又は同じ目的のために、同時に、複数のテンプレート及び複数のページが存在することができる。目的は、読出し専用と訪問者入力ページの両方を含む任意の目的又はページタイプとすることができる。デスティネーションシステムは、例示的な実施形態によれば、どのテンプレートを表示するかの決定を助けるために、ブラウザ又はモバイルクライアントからの情報を使用し得る。例えば、情報は、画面サイズ、画面解像度、OSバージョン、ブラウザのブランド及びバージョン、テンプレートのどの組が好ましいかについての訪問者からの手動で指定される好み、及び主としてマウス、キーボード、又はタッチスクリーンデバイスのいずれであるかなどのあらゆる数のデバイスの属性又は能力を含み得る。web appの場合には、この情報の多くは、http“User Agent”ヘッダから、又は、ウェブサーバによりセッション情報として一時的に記憶されるこの情報をデスティネーションサーバにインバンド又はアウトオブバンドで伝送するブラウザ上で実行するJavaScript(登録商標)を有することにより得ることができる。モバイルappの場合には、appは、デスティネーションシステムへの最初のログイン認証時にこの情報を収集及び送信するように設計することができる。
本明細書で説明される場合のシートを用いる複雑なソフトウェアの構築は、他の手段よりも非技術系の人々にとってはるかに簡単である。それでもなお、webifierシステム及び/又はAdd−On(プラグイン)は、例示的な実施形態によれば、アチーブメントと考えることができる設計者側の種々のアクション又はアクションのグループを待ち得る。これらのアクションが種々の基準を満たす場合、それらがアチーブメントに至ったことを示すべく設計者に視覚ポップアップが手短に表示され得る(図15)。ポップアップは、“Your web−app is now ready to receive new records”又は“You are done making your first web−app report”などの設計者が今作成したものの値をリレーし得る。基準は、設計者がこれらのアクションをとった最初の2回のうちの1回だけ、過去数か月の間に設計者がそのようなアクションを完了していない、訪問者が設計者のアクションに関係したデスティネーションページも訪問した、そのようなステップが時間を測られた前回よりも短い時間でユーザがいくつかのアクションを完了した、又はユーザが何かを達成するための異なるワークフロー又は異なる方法を試したなどの複数の基準を含むことができる。アクションは、デスティネーションシステムの又はAdd−Onのユーザインターフェースとの対話、又は設計者が作成するデスティネーションページに関連する訪問者の対話を含み得るだけでなく、設計者のスプレッドシートの分析にも基づき得る。例えば、ゲーミフィケーションシステムは、設計者が伝統的なスプレッドシートテーブルを作成したかどうか、設計者がテンプレートシート上の伝統的な条件付き書式設定を用いたかどうか、又はさらには、設計者が“=SUM(A1:A10)”のような式における基本集計関数を用いたかどうかを見てよい。
例示的な実施形態によれば、デスティネーションシステムにおいて、通知ルールはファシリティを提供し、それにより、或るイベントの発生は、指定のアクションをトリガすることができる(図83)。レギュラーユーザは、自分用の通知を設定することができる。管理者又は設計者ユーザは、自分と自分の管理ドメイン内のユーザ用の通知を設定することができる。複数のイベントを取り扱う及び/又は複数のアクションを行うために、ユーザは、複数の通知を設定し得る。各通知ルールのセットアップは、通知をトリガするべきイベントについての詳細及び通知がトリガされるときに行われるべきアクションについての詳細をユーザが指定することを必要とする(図84)。通知ルールは、また有効にする必要があるときにまた設定を入力する必要がないようにすべてのその他の詳細を保った状態で無効にすることができる。
デスティネーションシステムは、例示的な実施形態によれば、好ましくはすべてのデバイスプラットフォームに応答性があり、十分に適合し、HTML及びファイル伝送などのいくつかの標準ブラウザ特徴と統合される。デスティネーションシステムはまた、デスティネーションシステム内に含まれるデータがネイティブなapp経験でユーザによりアクセスされるように、デスティネーションシステムへの標準web−service APIアクセス方法を通じてネイティブappへ直接統合され得る。このような方法でのデータの提示は、ネイティブSDK環境又は他の開発フレームワーク、例えば、Android Studio、Apple Xcode、Xamarin、又はCordovaでの付加的なコーディングを通じてデスティネーションシステムにより有効にされる。
いくつかの要求の多い使用シナリオでは、設計者は、レコードシートにおけるレコードの一次セット、並びに、各一次レコードに関する別のシートにおける1つ又は多くの“secondary records”を有することを望む場合があり、設計者は、例示的な実施形態によれば、レコードの一次セットの、伝統的なデータベースソフトウェアセンスのような“primary key”によって二次レコードを一次レコードに属するものとして識別することを意図する。手短に言えば、設計者は、一次レコードデータだけでなく二次レコードデータもポピュレートされるテンプレートシートを有するようにするために、レコードセット間で表される関係性を有することを意図し得る。例えば、1つのレコードシートは、列“company ID”及び“company name”を有してよく、1つの行は、値に関する“1”及び“Pleasant Solutions”を有する。第2のレコードシートは、列“company ID”及び“specialization”を有してよく、1つの行は、“1”及び“Software Development Consultants”を有する。例示的な実施形態によれば、設計者が、“Pleasant Solutions”と“Software Development Consultants”との両方の記載を作成するテンプレートシートに基づいて詳細ページを表示することを望む場合、webifierシステムは、このような使用をサポートする。
例示的な実施形態によれば、ページのリスト及びそれらの共有パーミッションなどのデスティネーションシステムからの付加的な情報を有する又は有さない、あらかじめ設計された及び/又はあらかじめ構成されたスプレッドシート定義を含むApp Templates全体を、設計者の所有するweb−appの開始点としてコピーする及び使用するべく設計者のコミュニティから他の設計者ユーザへ利用可能であり得る(図22)。これらは、別々にリストすることもでき、app内のページタイプ、レコードシート上の列の名前、任意のセルの内容からのキーワード、存在する日付フィールドなどのセルフォーマット、並びに、どんな設計者が該App Template web−appを用いているか又はどんな産業に設計者の雇用主が属しているかの関連性に基づく、目的、カテゴリ、産業、又はスマートサーチによりサーチ可能である。
スプレッドシートツール内のプラグイン又はAdd−Onは、クライアント−サーバアプリケーションモデルに関するソフトウェア開発産業に典型的な多くの方法で、デスティネーションシステムサーバと通信し、そのユーザインターフェースを表示し得る。例えば、図のいくつかは、デスティネーションシステムが主としてHTMLインターフェース、伝統的なウェブページを取得するためにweb−service API呼び出しを用いるAdd−Onの結果を例示し、例示的には、埋め込みブラウザウィンドウのように動作するフレームにおけるウェブページを示す。これは、Add−Onのユーザインターフェース要素の多くが再使用され、インストールされたAdd−Onを有さない設計者に関するデスティネーションシステムの管理ページ上のそれらのそれぞれのカウンターパートと概ね一致することを可能にする。セルの範囲を選択するのにマウスを用いる能力などのAdd−On内のいくつかの機能は、設計者が範囲をタイピングすることに限定するために制限、除去、又は変更されてよく、又は代替的に、デスティネーションシステム管理ページを有する埋め込みスプレッドシートツール上で行われ得る。簡略のため、Add−Onユーザインターフェース又はデスティネーションシステム管理ページを表す添付図は、添付されていない場合であっても、それらのそれぞれのカウンターパートを有するとみなされるべきである。
webifierは、スプレッドシートツールとは別個のアプリケーションである必要はなく、外部アプリケーションにアクセス可能にされた手段を介するスプレッドシートツールとの通信に限定される必要はない。webifierは、代わりに、タイトな関係性を有してよく、それにより、これは、スプレッドシートツールとのより深い及び/又はよりバックエンドベースのインテグレーション及び通信チャネルを有し得る。これはまた、本明細書で「タイト・インテグレーション」として言及され得る。
システムは、“list item template”と同じテンプレートシートの方法を用いることができる。例えば、“List”のページタイプを作成することもでき、この場合、入力及び出力は、ユーザがその詳細を閲覧するのに行を選択することを必要とすること以外は、“details”ページタイプと同一となり、すべての行レコードは、リストフォームにおいて次々に表示されることになり、リスト上の各レコードは、アイテムテンプレートに従って表示される。レコードごとに情報のいくつかの行が必要とされるが、全詳細ページを保証するのに十分ではない場合、又は詳細ページへの繰返しのナビゲーティングは望ましくないため、これは、例えば、行レコードリストが訪問者に表示されることを可能にする。
例示的なユースケースによれば、設計者は、webifier Add−Onが既にインストールされている、Windowsデスクトップバージョンのスプレッドシートアプリケーション、例えば、MICROSOFT EXCELを開き得る。Add−Onは、スプレッドシートアプリケーションに埋め込まれたメインAdd−Onユーザインターフェースとして“Sidebar”を含み得る。設計者は、ログインすることを要求され得る(図13)。ログインの成功は、設計者を、以前に作成したweb−appのリストを有する図12へ連れていく。設計者は、スプレッドシートアプリケーションにより利用可能な普通の方法で新しいスプレッドシートファイルを作成し、次いで、図12で見られるようにアップロード矢印(サーバへのアップロード)をクリックし得る。設計者は、appの名前を設定し(図23)、ほぼ空のスプレッドシート(この例では)がサーバに送信され、ほぼ空のweb−appとなる。設計者は、次に、図18上のページの空リストを見て、図69のメニューを見るべくweb−appアクションメニュー上をクリックする、又は図55のメニューを見るべくweb−app タブのアクションメニュー上をクリックする。ユーザは、該メニューからの追加ページをクリックし、図51のようなフォームへ進み、これは、ページ“Title”などのすべてのページタイプに共通のプロパティを表示してよく、また、所望のデスティネーションページタイプを選ぶべくドロップダウンを表示してよい。設計者は、次に、設計者のページタイプの選択に応じて、図26の(API)、27 (Calendar)、29 (Container)、33 (CSV Import)、35 (Details Report)、38 (Edit−Cells)、41 (Edit−Record)、43 (Insert)、45 (Link)、46 (PDF)、47 (Report)、49 (Tabs Container)に似ていてよい、ページタイプ設定及び構成を定義することを要求する主としてブランクのフォームを見ることになる。設計者は、それぞれ本明細書で説明される1つ又は複数の特徴を組み込んでいるページを必要なだけ作成するべくこのプロセスを繰り返し得る。
本出願は、2017年3月10日に出願された「Spreadsheet−Based Software Application Development」という名称の米国特許出願第15/455,909号、及び2016年12月3日に出願された「Spreadsheet−Based Software Application Development」という名称の米国仮特許出願第62/429,749号に基づく優先権の利益を主張するものである。上記の出願のそれぞれの内容は、あらゆる目的のためにそれらの全体が参照により本明細書に組み込まれる。
Claims (30)
- 少なくとも1つのウェブページを備える対話型ウェブアプリケーションを生成するためのコンピュータにより実施される方法であって、
それぞれゼロ又はそれ以上のデータレコードを有する、スプレッドシート内の1つ又は複数のデータソースを決定することと、前記データソースは、前記スプレッドシートの第1の部分を備え、
それぞれ前記データソースのうちの1つ又は複数に関するデータフォーマットを備える、前記スプレッドシート内からの1つ又は複数のユーザインターフェース・テンプレートを決定することと、前記ユーザインターフェース・テンプレートは、前記スプレッドシートの第2の部分を備え、
前記スプレッドシート内で識別されるデータソースからのデータレコードを備えるウェブデータストアを生成することと、
特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートに基づいて対話型ウェブアプリケーションの特定のウェブページを生成することと、前記特定のウェブページは、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートに基づいて識別される1つ又は複数のデータソースを参照し、
前記対話型ウェブアプリケーションの特定のウェブページの提示に関する要求に応答して、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートにより識別される及びフォーマットされる1つ又は複数のデータレコードを含む特定のウェブページの提示を生成することと、
前記スプレッドシートに基づいて生成された対話型ウェブアプリケーションの入力ページを介してユーザ入力を受信することに応答して前記ウェブデータストアを更新することと、
を含む、方法。 - 前記スプレッドシートに基づいて生成された対話型ウェブアプリケーションの入力ページが前記特定のウェブページである、請求項1に記載の方法。
- 前記スプレッドシートが複数のワークシートを備え、前記スプレッドシートの第1の部分が、前記スプレッドシートの第2の部分とは異なるワークシート上にある、請求項1に記載の方法。
- 前記ユーザインターフェース・テンプレートの少なくとも1つのデータフォーマットが、対応するデータソースの色、フォントフォーマット、及びセルサイズを含む、請求項1に記載の方法。
- 前記ウェブデータストアを自動的に更新することに応答して前記スプレッドシートを更新することをさらに含む、請求項1に記載の方法。
- 前記1つ又は複数のユーザインターフェース・テンプレートに関連する少なくとも1つのデータフォーマットへの1つ又は複数の変更を識別するべく前記スプレッドシートを分析することと、
前記ウェブデータストアに影響を及ぼさずに前記変更されたデータフォーマットに基づいて前記対話型ウェブアプリケーションを更新することと、
をさらに含む、請求項1に記載の方法。 - 前記1つ又は複数のデータソースのデータレコードになされた1つ又は複数の変更を識別するべく前記スプレッドシートを分析することと、
前記変更されたデータレコードに基づいて前記ウェブデータストアを更新することと、
をさらに含む、請求項1に記載の方法。 - 前記少なくとも1つのデータレコードになされた1つ又は複数の変更を識別するべく前記スプレッドシートを分析することが、前記少なくとも1つのデータレコードになされた1つ又は複数の変更を自動的に検出することに応答して前記ウェブデータストアを自動的に更新することを含む、請求項7に記載の方法。
- 第1のセキュリティパーミッションを有する第1のユーザによる前記ウェブデータストアの修正を防止することと、
第2のセキュリティパーミッションを有する第2のユーザから受信した入力に応答して前記ウェブデータストアを修正することと、
をさらに含む、請求項1に記載の方法。 - 前記第1及び第2のセキュリティパーミッションが、前記1つ又は複数のユーザインターフェース・テンプレートに基づいて決定される、請求項9に記載の方法。
- 前記第1のセキュリティパーミッションが、前記スプレッドシートを生成したスプレッドシートアプリケーションにネイティブな式により定義される、請求項10に記載の方法。
- 前記ウェブデータストアが前記スプレッドシートを備える、請求項1に記載の方法。
- 前記スプレッドシートが、MS−XLSバイナリデータフォーマット又はMS−XLSBバイナリデータフォーマットに準拠し、前記決定するステップ及び前記生成するステップが、前記スプレッドシートアプリケーション内に統合されたアドオンにより行われる、請求項1に記載の方法。
- 少なくとも1つのユーザインターフェース・テンプレートが、データソースに関連する1つ又は複数のデータ制約を識別し、前記特定のウェブページの提示を生成することが、前記1つ又は複数のデータ制約を満たすデータレコードを選択することに基づいている、請求項1に記載の方法。
- 前記1つ又は複数のデータ制約が、前記スプレッドシートにおいて識別されるユーザレベルのセキュリティ制約を含む、請求項14に記載の方法。
- 前記1つ又は複数のデータ制約のうちの少なくとも1つが、前記スプレッドシートに関連するスプレッドシートアプリケーションにネイティブな式により定義される、請求項14に記載の方法。
- 少なくとも1つのユーザインターフェース・テンプレートが、特定のデータソースに関連する1つ又は複数の入力検証ルールを識別し、前記方法が、前記1つ又は複数の入力検証ルールと突き合せて前記ユーザ入力を評価することをさらに含む、請求項1に記載の方法。
- 前記ウェブデータストアが、前記特定のウェブページに関連する1つ又は複数の入力検証ルールを識別し、前記方法が、前記1つ又は複数の入力検証ルールと突き合せて前記ユーザ入力を評価することをさらに含む、請求項1に記載の方法。
- 前記対話型ウェブアプリケーションにより、第1のユーザインターフェース・テンプレートに基づいてウェブデータストアからデータを出力するためのデータ出力ウェブページを生成することと、
前記対話型ウェブアプリケーションにより、第2のユーザインターフェース・テンプレートに基づいてウェブデータストアにおけるデータを編集するのに使用可能なデータ編集ウェブページを生成することと、
をさらに含む、請求項1に記載の方法。 - 前記特定のウェブページを生成することが、前記特定のウェブページに関連するクライアントデバイス特徴に対応するユーザインターフェース・テンプレートを選択することを含む、請求項1に記載の方法。
- システムであって、
1つ又は複数のプロセッサと、
前記1つ又は複数のプロセッサによって実行されるときに、前記システムに、
スプレッドシートを評価することに基づいて、それぞれ1つ又は複数のデータレコードを有する、前記スプレッドシート内の1つ又は複数のデータソースを取得させ、前記データソースは、前記スプレッドシートの第1のワークシートの少なくとも一部を備え、
前記スプレッドシートを評価することに基づいて、それぞれ前記データソースのうちの1つ又は複数に関するデータフォーマットを備える、前記スプレッドシート内の1つ又は複数のユーザインターフェース・テンプレートを取得させ、前記ユーザインターフェース・テンプレートは、前記スプレッドシートの第2のワークシートの少なくとも一部を備え、
前記スプレッドシート内で識別されるデータソースからデータレコードを抽出し、前記データレコードをウェブデータストアに記憶することにより、ウェブデータストアを生成させ、
前記ウェブデータストアの抽出したデータレコードに基づいて対話型ウェブアプリケーションの特定のウェブページを生成させ、前記特定のウェブページは、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートに基づいて識別される及びフォーマットされるデータレコードへの参照を備え、
前記対話型ウェブアプリケーションの特定のウェブページの提示に関する要求に応答して、前記特定のウェブページの提示を生成させ、
前記対話型ウェブアプリケーションを介してユーザ入力を受信することに応答して、前記ウェブデータストアを更新させる、
命令を記憶するメモリと、
を備える、システム。 - 少なくとも1つのユーザインターフェース・テンプレートが、データソースに関連する1つ又は複数のデータ制約を識別し、前記命令が、前記1つ又は複数のプロセッサによって実行されるときに、さらに前記システムに、1つ又は複数のデータ制約を満たすデータレコードを選択することに基づいて前記特定のウェブページの提示を生成させる、請求項21に記載のシステム。
- 少なくとも1つのウェブページを備える対話型ウェブアプリケーションを生成するためのコンピュータにより実施される方法であって、
1つ又は複数のスプレッドシートを評価することに基づいて、それぞれ1つ又は複数のデータレコードを有する、前記1つ又は複数のスプレッドシート内の1つ又は複数のデータソースを決定することと、前記データソースは、前記スプレッドシートの第1のワークシートの少なくとも一部を備え、
前記1つ又は複数のスプレッドシートを評価することに基づいて、それぞれ前記データソースのうちの1つ又は複数に関するデータフォーマットを備える、前記スプレッドシート内の1つ又は複数のユーザインターフェース・テンプレートを決定することと、前記ユーザインターフェース・テンプレートは、前記スプレッドシートの第1のワークシートの少なくとも一部を備え、
前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートに基づいて対話型ウェブアプリケーションの特定のウェブページを生成することと、前記特定のウェブページは、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートに基づいて識別される1つ又は複数のデータソースを参照し、
前記対話型ウェブアプリケーションの特定のウェブページに関する要求に応答して、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートにより識別される及びフォーマットされる1つ又は複数のデータレコードを含む前記特定のウェブページの提示を生成することと、
前記対話型ウェブアプリケーションを介して第1のユーザ入力を受信することに応答して前記データソースからのデータレコードを備えるウェブデータストアを更新することと、
を含む、方法。 - 前記ウェブデータストアが前記スプレッドシートである、請求項23に記載の方法。
- 前記1つ又は複数のスプレッドシートの少なくとも一部を提示するスプレッドシート・ユーザインターフェースを生成することをさらに含み、前記スプレッドシート・ユーザインターフェースは、ユーザが前記1つ又は複数のスプレッドシート内の1つ又は複数のデータソースを識別すること及び前記1つ又は複数のスプレッドシート内の1つ又は複数のユーザインターフェース・テンプレートを識別することを可能にする、1つ又は複数の制御を備える、請求項23に記載の方法。
- 前記スプレッドシート・ユーザインターフェースが、セルの二次元配列を備え、
前記スプレッドシート・ユーザインターフェースのセルが、数値、テキスト値、及び式をサポートし、
前記スプレッドシート・ユーザインターフェースにおけるセルの式が、ユーザが数学的計算を指定することを可能にし、
前記スプレッドシート・ユーザインターフェースにおけるセルの式が、複数の他のセルへの参照を可能にし、
前記スプレッドシート・ユーザインターフェースにおけるセルの式が、名前付き関数への参照をサポートし、
前記スプレッドシート・ユーザインターフェースにおけるセルの式が、数式及び文字列操作関数をサポートする、
請求項25に記載の方法。 - 特定のウェブページの提示を生成することが、要求中のデバイスのデバイス特徴に基づいて特定のウェブページに対応する複数のユーザインターフェース・テンプレートから選択することをさらに含み、第1のユーザインターフェース・テンプレートが、小画面のデバイス用の特定のウェブページフォーマットコンテンツに対応し、第2のユーザインターフェース・テンプレートが、より大画面のデバイス用の特定のウェブページフォーマットコンテンツに対応する、請求項23に記載の方法。
- 対話型ウェブアプリケーションを生成するためのコンピュータにより実施される方法であって、
スプレッドシートコンテンツに基づいて、それぞれゼロ又はそれ以上のデータレコードを有する1つ又は複数のデータソースを決定することと、
前記スプレッドシートコンテンツに基づいて、それぞれ前記データソースのうちの1つ又は複数に関するデータフォーマットを備える1つ又は複数のユーザインターフェース・テンプレートを決定することと、
前記スプレッドシートコンテンツにおける前記データソースからのデータレコードを備えるウェブデータストアを識別することと、
特定のウェブページに関する第1の要求に応答して、前記ウェブデータストアからのデータレコードを用いて特定のウェブページを作ることと、前記データレコードは、前記特定のウェブページに対応する1つ又は複数のユーザインターフェース・テンプレートにより識別され及びフォーマットされ、
前記ウェブデータストアを生成した後に前記スプレッドシートコンテンツが変更されたことを判定することと、
前記スプレッドシートコンテンツになされた変更に基づいて前記対話型ウェブアプリケーションを更新することと、
前記特定のウェブページに関する第2の要求に応答して、前記スプレッドシートコンテンツになされた変更を組み込む特定のウェブページを作ることと、
を含む、方法。 - 前記スプレッドシートコンテンツになされた1つ又は複数の変更が、ユーザインターフェース・テンプレートへの編集を含み、前記スプレッドシートコンテンツになされた変更を組み込む特定のウェブページを作ることが、前記データレコードを変えずに、前記ユーザインターフェース・テンプレートへの編集を組み込む特定のウェブページを生成することを含む、請求項28に記載の方法。
- 前記スプレッドシートになされた1つ又は複数の変更が、前記データレコードへの編集を含み、前記スプレッドシートになされた1つ又は複数の変更を組み込む特定のウェブページを作ることが、前記ユーザインターフェース・テンプレートを変えずに前記データレコードへの編集を組み込む特定のウェブページを生成することを含む、請求項29に記載の方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662429749P | 2016-12-03 | 2016-12-03 | |
US62/429,749 | 2016-12-03 | ||
US15/455,909 | 2017-03-10 | ||
US15/455,909 US10216494B2 (en) | 2016-12-03 | 2017-03-10 | Spreadsheet-based software application development |
PCT/CA2017/051457 WO2018098596A1 (en) | 2016-12-03 | 2017-12-01 | Spreadsheet-based software application development |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020160370A Division JP7093387B2 (ja) | 2016-12-03 | 2020-09-25 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020504889A true JP2020504889A (ja) | 2020-02-13 |
JP2020504889A5 JP2020504889A5 (ja) | 2020-03-26 |
JP6770653B2 JP6770653B2 (ja) | 2020-10-14 |
Family
ID=62241146
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019549616A Active JP6770653B2 (ja) | 2016-12-03 | 2017-12-01 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
JP2020160370A Active JP7093387B2 (ja) | 2016-12-03 | 2020-09-25 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
JP2022098439A Active JP7460689B2 (ja) | 2016-12-03 | 2022-06-17 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020160370A Active JP7093387B2 (ja) | 2016-12-03 | 2020-09-25 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
JP2022098439A Active JP7460689B2 (ja) | 2016-12-03 | 2022-06-17 | スプレッドシートに基づくソフトウェアアプリケーション開発 |
Country Status (6)
Country | Link |
---|---|
US (4) | US10216494B2 (ja) |
EP (2) | EP3549013B1 (ja) |
JP (3) | JP6770653B2 (ja) |
CN (2) | CN116225399A (ja) |
CA (1) | CA3045735A1 (ja) |
WO (1) | WO2018098596A1 (ja) |
Families Citing this family (93)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11410129B2 (en) | 2010-05-01 | 2022-08-09 | Monday.com Ltd. | Digital processing systems and methods for two-way syncing with third party applications in collaborative work systems |
WO2021220058A1 (en) | 2020-05-01 | 2021-11-04 | Monday.com Ltd. | Digital processing systems and methods for enhanced collaborative workflow and networking systems, methods, and devices |
WO2021161104A1 (en) | 2020-02-12 | 2021-08-19 | Monday.Com | Enhanced display features in collaborative network systems, methods, and devices |
US9696967B2 (en) * | 2015-11-09 | 2017-07-04 | Microsoft Technology Licensing, Llc | Generation of an application from data |
US11210459B1 (en) | 2016-09-23 | 2021-12-28 | Massachusetts Mutual Life Insurance Company | Systems, devices, and methods for software coding |
US11138370B1 (en) | 2016-09-23 | 2021-10-05 | Massachusetts Mututal Life Insurance Company | Modifying and using spreadsheets to create a GUI on another device |
US10540152B1 (en) | 2016-09-23 | 2020-01-21 | Massachusetts Mutual Life Insurance Company | Systems, devices, and methods for software coding |
US10496737B1 (en) * | 2017-01-05 | 2019-12-03 | Massachusetts Mutual Life Insurance Company | Systems, devices, and methods for software coding |
US20180260461A1 (en) * | 2017-03-10 | 2018-09-13 | David Stephens | Multi-platform data mining software |
CN108804483B (zh) * | 2017-05-05 | 2020-01-07 | 平安科技(深圳)有限公司 | 单元格页面的渲染方法、服务器和计算机可读存储介质 |
US10713370B2 (en) * | 2017-06-24 | 2020-07-14 | Seclore Technology Private Limited | Information rights management through editors implemented in a browser |
US10510438B2 (en) * | 2017-07-07 | 2019-12-17 | Definitive Media Corp. | System and method for building intuitive clinical trial applications |
US11048695B2 (en) * | 2017-09-12 | 2021-06-29 | Sap Se | Context-aware data commenting system |
US11138371B2 (en) * | 2017-09-28 | 2021-10-05 | Oracle International Corporation | Editable table in a spreadsheet integrated with a web service |
US11087080B1 (en) | 2017-12-06 | 2021-08-10 | Palantir Technologies Inc. | Systems and methods for collaborative data entry and integration |
US10705805B1 (en) * | 2017-12-12 | 2020-07-07 | Amazon Technologies, Inc. | Application authoring using web-of-sheets data model |
US10592225B2 (en) * | 2018-05-11 | 2020-03-17 | Slack Technologies, Inc. | Method, apparatus, and computer program product for installing third party applications requiring variable host address identification in a group-based communication system |
US11586603B1 (en) | 2018-05-23 | 2023-02-21 | Amazon Technologies, Inc. | Index sheets for robust spreadsheet-based applications |
US11436359B2 (en) | 2018-07-04 | 2022-09-06 | Monday.com Ltd. | System and method for managing permissions of users for a single data type column-oriented data structure |
US11698890B2 (en) | 2018-07-04 | 2023-07-11 | Monday.com Ltd. | System and method for generating a column-oriented data structure repository for columns of single data types |
US11388171B2 (en) | 2018-07-25 | 2022-07-12 | SlackTechnologies, LLC | Method, apparatus, and computer program product for installing and updating third party applications requiring variable host address identification in a group-based communication system |
US11113447B2 (en) | 2018-08-01 | 2021-09-07 | Microsoft Technology Licensing, Llc | Cross-application ingestion and restructuring of slide presentation content |
US11295073B2 (en) * | 2018-08-01 | 2022-04-05 | Microsoft Technology Licensing, Llc | Cross-application ingestion and restructuring of spreadsheet content |
US11681760B2 (en) | 2018-08-01 | 2023-06-20 | Microsoft Technology Licensing, Llc | Cross-application ingestion and restructuring of content |
US11182538B2 (en) | 2018-08-01 | 2021-11-23 | Microsoft Technology Licensing, Llc | Conversational user interface logic for cross-application ingestion and restructuring of content |
US10657321B2 (en) * | 2018-09-11 | 2020-05-19 | Apple Inc. | Exploded-range references |
US10977211B2 (en) | 2018-10-11 | 2021-04-13 | Dealvector, Inc. | Effective deployment of spreadsheets in browser environments |
US11429557B2 (en) | 2018-10-11 | 2022-08-30 | Dealvector, Inc. | Templatization of spreadsheets in browser environments |
US11429558B2 (en) | 2018-10-11 | 2022-08-30 | Dealvector, Inc. | Mapping tests of spreadsheets in server-browser environments |
US10917233B2 (en) * | 2018-10-16 | 2021-02-09 | International Business Machines Corporation | Selective exchange of transaction data |
US11270017B2 (en) | 2018-10-16 | 2022-03-08 | International Business Machines Corporation | Selective exchange of transaction data |
US11010536B2 (en) * | 2018-12-20 | 2021-05-18 | AINS, Inc. | Systems and methods for dynamic web user interface generation |
CN109871523A (zh) * | 2019-01-31 | 2019-06-11 | 成都摹客科技有限公司 | 一种基于原型设计工具的单元格子的快速创建方法及系统 |
CN109871254A (zh) * | 2019-01-31 | 2019-06-11 | 成都摹客科技有限公司 | 一种可分离的原型工具的单元格子的创建方法及系统 |
US20200287947A1 (en) * | 2019-03-04 | 2020-09-10 | Metatellus Oü | System and method for selective communication |
US10902146B2 (en) | 2019-03-19 | 2021-01-26 | Workiva Inc. | Method and computing device for gating data between workspaces |
WO2020190931A1 (en) * | 2019-03-19 | 2020-09-24 | Sigma Computing, Inc. | Cross-organization worksheet sharing |
US11120211B2 (en) * | 2019-04-23 | 2021-09-14 | Microsoft Technology Licensing, Llc | Combining spreadsheet recorded operations |
US11681504B1 (en) | 2019-04-26 | 2023-06-20 | Opturo, Inc. | Automated application builder using configuration files |
US11636088B2 (en) * | 2019-06-24 | 2023-04-25 | Jnd Holdings Llc | Systems and methods to facilitate rapid data entry for document review |
US11194793B1 (en) | 2019-06-25 | 2021-12-07 | Amazon Technologies, Inc. | Dynamically materialized views for sheets based data |
US11086894B1 (en) | 2019-06-25 | 2021-08-10 | Amazon Technologies, Inc. | Dynamically updated data sheets using row links |
US10942709B2 (en) * | 2019-07-02 | 2021-03-09 | Holtworks, LLC | Hyperpiler |
CN110516028B (zh) * | 2019-07-29 | 2022-04-29 | 贝壳技术有限公司 | 一种基于react实现复杂编辑器的方法及装置 |
CN110705243A (zh) * | 2019-10-10 | 2020-01-17 | 深圳前海微众银行股份有限公司 | web页面表格设置方法、装置、设备及计算机存储介质 |
US20210112130A1 (en) * | 2019-10-15 | 2021-04-15 | UiPath, Inc. | Mobile push notification for robotic process automation (rpa) |
CN110782234B (zh) * | 2019-11-07 | 2020-10-02 | 殷步九 | 一种基于事务逻辑的信息管理方法及系统 |
CN114730256A (zh) * | 2019-11-11 | 2022-07-08 | 阿韦瓦软件有限责任公司 | 用于分布式低代码/无代码计算环境的计算机化的系统和方法 |
EP4062313A1 (en) | 2019-11-18 | 2022-09-28 | Monday.com Ltd. | Collaborative networking systems, methods, and devices |
US20210150135A1 (en) | 2019-11-18 | 2021-05-20 | Monday.Com | Digital processing systems and methods for integrated graphs in cells of collaborative work system tables |
US11397519B2 (en) * | 2019-11-27 | 2022-07-26 | Sap Se | Interface controller and overlay |
CN111124385B (zh) * | 2019-12-02 | 2022-05-20 | 深圳航天科技创新研究院 | 一种基于数据库的电源设计软件的自动生成方法及系统 |
US11290531B2 (en) * | 2019-12-04 | 2022-03-29 | Dropbox, Inc. | Immediate cloud content item creation from local file system interface |
CN111142735B (zh) * | 2019-12-10 | 2021-06-29 | 深圳市优必选科技股份有限公司 | 一种软件页面的创建方法、装置、终端设备和存储介质 |
CN111090975B (zh) * | 2019-12-10 | 2024-04-19 | 金蝶软件(中国)有限公司 | 数据打印方法、数据处理系统及计算机存储介质 |
CN113010588B (zh) * | 2019-12-20 | 2023-07-04 | 北京国基科技股份有限公司 | 一种数据表格的处理方法 |
CN111178022A (zh) * | 2019-12-23 | 2020-05-19 | 北京航天云路有限公司 | 一种二维图表数据标准化格式定义与实现方法 |
CN111222310A (zh) * | 2019-12-23 | 2020-06-02 | 福建亿能达信息技术股份有限公司 | 一种不规则表单的录入和展示的方法及系统 |
CN111353272B (zh) * | 2019-12-24 | 2023-10-20 | 明度智云(浙江)科技有限公司 | 一种web表格的信息显示方法和装置 |
CN111159988B (zh) * | 2019-12-31 | 2023-09-08 | 软通动力信息技术(集团)股份有限公司 | 一种模型处理方法、装置、计算机设备及存储介质 |
US11150955B2 (en) | 2020-01-16 | 2021-10-19 | Fujitsu Limited | Generation and usage of a task-based programming platform |
CN111338625B (zh) * | 2020-02-20 | 2023-04-18 | 广东小天才科技有限公司 | 一种数据处理方法、系统、终端设备以及存储介质 |
CN113377367B (zh) * | 2020-03-10 | 2024-04-30 | 腾讯科技(深圳)有限公司 | 数据收集方法、装置、计算机设备和存储介质 |
CN111596607B (zh) * | 2020-04-14 | 2021-07-13 | 宝鸡石油机械有限责任公司 | 一种可配置文本和操作命令的上位机通用hmi界面设计方法 |
US11829953B1 (en) | 2020-05-01 | 2023-11-28 | Monday.com Ltd. | Digital processing systems and methods for managing sprints using linked electronic boards |
US11277361B2 (en) | 2020-05-03 | 2022-03-15 | Monday.com Ltd. | Digital processing systems and methods for variable hang-time for social layer messages in collaborative work systems |
CN111813282B (zh) * | 2020-05-29 | 2021-12-10 | 北京金山云网络技术有限公司 | 一种数据表单的展示方法和装置 |
CN111723138B (zh) * | 2020-06-10 | 2023-12-19 | 山东浪潮新世纪科技有限公司 | 一种模拟人工方式自动获取数据的系统及方法 |
CN112015408A (zh) * | 2020-07-08 | 2020-12-01 | 广州乐摇摇信息科技有限公司 | 组件渲染方法、装置、存储介质及电子装置 |
CN111984170B (zh) * | 2020-07-14 | 2022-06-10 | 维沃移动通信有限公司 | 表格输出方法、装置及电子设备 |
US11556702B2 (en) * | 2020-08-31 | 2023-01-17 | Oracle International Corporation | Orchestration of crud operations for a hierarchical web service data model in a spreadsheet |
CN111984238A (zh) * | 2020-09-22 | 2020-11-24 | 吴政静 | 一种跨平台桥接数据信息处理的软件 |
CN112527387B (zh) * | 2020-11-20 | 2024-03-01 | 杭州大搜车汽车服务有限公司 | 应用处理方法和装置 |
USD993277S1 (en) * | 2020-12-10 | 2023-07-25 | Yokogawa Electric Corporation | Display screen or portion thereof with graphical user interface |
CN112785249A (zh) * | 2020-12-31 | 2021-05-11 | 山东师范大学 | 一种基于vba的日程管理方法及系统 |
US11397847B1 (en) | 2021-01-14 | 2022-07-26 | Monday.com Ltd. | Digital processing systems and methods for display pane scroll locking during collaborative document editing in collaborative work systems |
CN112800736B (zh) * | 2021-02-04 | 2022-04-08 | 杉数科技(北京)有限公司 | 生成单元格编辑组件的方法、装置、介质及计算机设备 |
CN113011128A (zh) * | 2021-03-05 | 2021-06-22 | 北京百度网讯科技有限公司 | 文档在线预览方法、装置、电子设备及存储介质 |
US11716381B2 (en) | 2021-04-13 | 2023-08-01 | Capital One Services, Llc | Exporting data to a cloud-based service |
CN113362018A (zh) * | 2021-05-25 | 2021-09-07 | 北京明略软件系统有限公司 | 一种会议时长的处理方法及系统 |
CN113297311B (zh) * | 2021-06-16 | 2023-12-19 | 北京有竹居网络技术有限公司 | 一种数据转换方法及装置 |
CN113721901A (zh) * | 2021-06-25 | 2021-11-30 | 国网安徽省电力有限公司 | 一种低代码的财务数据分析可视化引擎 |
CN113468400B (zh) * | 2021-07-23 | 2023-11-28 | 平安国际智慧城市科技股份有限公司 | 可视化网页的列表渲染方法、装置、设备及存储介质 |
US11868711B2 (en) * | 2021-08-16 | 2024-01-09 | Google Llc | Creating dynamic data-bound container hosted views and editable forms |
CN114385150B (zh) * | 2021-09-18 | 2022-09-02 | 北京能科瑞元数字技术有限公司 | 基于智能引擎的低代码开发方法 |
US11960864B2 (en) * | 2021-09-27 | 2024-04-16 | Microsoft Technology Licensing, Llc. | Creating applications and templates based on different types of input content |
KR102397494B1 (ko) * | 2021-11-17 | 2022-05-13 | (주)에스엠시스템 | 로우(Low) 코드 웹 개발 및 운영 시스템 및 이를 이용한 서비스 방법 |
WO2024010567A1 (en) * | 2022-07-05 | 2024-01-11 | Rakuten Symphony Singapore Pte. Ltd. | Method and apparatus for management and validation of data |
US11741071B1 (en) | 2022-12-28 | 2023-08-29 | Monday.com Ltd. | Digital processing systems and methods for navigating and viewing displayed content |
US11886683B1 (en) | 2022-12-30 | 2024-01-30 | Monday.com Ltd | Digital processing systems and methods for presenting board graphics |
US11893381B1 (en) | 2023-02-21 | 2024-02-06 | Monday.com Ltd | Digital processing systems and methods for reducing file bundle sizes |
CN116382659B (zh) * | 2023-05-29 | 2023-09-01 | 珠海乐图软件有限公司 | 一种无代码开发平台的数据定义方法 |
CN117034886A (zh) * | 2023-08-10 | 2023-11-10 | 北京字跳网络技术有限公司 | 信息处理方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006024021A (ja) * | 2004-07-08 | 2006-01-26 | Nec Corp | 帳票自動作成システム、帳票自動作成方法、帳票自動作成サーバ、および帳票自動作成装置 |
JP2009508237A (ja) * | 2005-09-09 | 2009-02-26 | マイクロソフト コーポレーション | スプレッドシート文書のパラメータの指定、セッティング、および発見 |
US7523395B1 (en) * | 2003-05-30 | 2009-04-21 | Oracle International Corporation | Web application generator for spreadsheet calculators |
JP2014506350A (ja) * | 2010-12-09 | 2014-03-13 | マイクロソフト コーポレーション | スプレッドシートオブジェクトのコードレス共有 |
JP2016091244A (ja) * | 2014-10-31 | 2016-05-23 | 富士通エフ・アイ・ピー株式会社 | 情報処理装置、プログラム |
Family Cites Families (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4989141A (en) | 1987-06-01 | 1991-01-29 | Corporate Class Software | Computer system for financial analyses and reporting |
GB9800427D0 (en) | 1998-01-10 | 1998-03-04 | Ibm | Probabilistic data clustering |
US7421648B1 (en) | 1999-05-21 | 2008-09-02 | E-Numerate Solutions, Inc. | Reusable data markup language |
WO2002005065A2 (en) | 2000-07-11 | 2002-01-17 | Juice Software, Inc. | A method and system for integrating network-based functionality into productivity applications and documents |
GB0028434D0 (en) * | 2000-11-22 | 2001-01-10 | Decision Curve Ltd | Methods and apparatus for automatically producing spreadsheet-based models |
US7251776B2 (en) | 2001-07-13 | 2007-07-31 | Netview Technologies, Inc. | System and method for efficiently and flexibly utilizing spreadsheet information |
WO2003098500A1 (en) | 2002-05-16 | 2003-11-27 | Decision Curve Limited | Method and apparatus for automatically producing spreadsheet-based models |
US20040205468A1 (en) * | 2002-05-17 | 2004-10-14 | Thomas Lightner | Web page author |
US7702636B1 (en) | 2002-07-31 | 2010-04-20 | Cadence Design Systems, Inc. | Federated system and methods and mechanisms of implementing and using such a system |
US20040103365A1 (en) | 2002-11-27 | 2004-05-27 | Alan Cox | System, method, and computer program product for an integrated spreadsheet and database |
US20040111666A1 (en) | 2002-12-05 | 2004-06-10 | Hollcraft James G. | Software replicator functions for generating reports |
AU2002953555A0 (en) | 2002-12-23 | 2003-01-16 | Canon Kabushiki Kaisha | Method for presenting hierarchical data |
US20040221233A1 (en) | 2003-04-29 | 2004-11-04 | David Thielen | Systems and methods for report design and generation |
US20090132347A1 (en) | 2003-08-12 | 2009-05-21 | Russell Wayne Anderson | Systems And Methods For Aggregating And Utilizing Retail Transaction Records At The Customer Level |
US7225189B1 (en) | 2004-02-19 | 2007-05-29 | Microsoft Corporation | Data source write back and offline data editing and storage in a spreadsheet |
US20050268215A1 (en) | 2004-06-01 | 2005-12-01 | Microsoft Corporation | Method and apparatus for viewing and interacting with a spreadsheet from within a web browser |
JP2005352634A (ja) | 2004-06-09 | 2005-12-22 | Hidenori So | Xmlを用いた分散データ処理システム |
US20090235087A1 (en) * | 2004-06-24 | 2009-09-17 | Geoffrey David Bird | Security for Computer Software |
US7779431B2 (en) | 2004-07-16 | 2010-08-17 | Wallace Robert G | Networked spreadsheet template designer |
US7213199B2 (en) | 2004-07-16 | 2007-05-01 | Cognos Incorporated | Spreadsheet user-interface for an enterprise planning system having multi-dimensional data store |
US9009582B2 (en) * | 2004-11-19 | 2015-04-14 | Google Inc. | Converting spreadsheet applications to web-based applications |
US7533420B2 (en) * | 2004-12-09 | 2009-05-12 | Microsoft Corporation | System and method for restricting user access to a network document |
GB0506508D0 (en) * | 2005-03-31 | 2005-05-04 | Ibm | Method, system and software tool for processing an electronic form |
JP4140919B2 (ja) | 2006-03-14 | 2008-08-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 表計算などの処理を行うシステムおよびその方法 |
US20080104542A1 (en) | 2006-10-27 | 2008-05-01 | Information Builders, Inc. | Apparatus and Method for Conducting Searches with a Search Engine for Unstructured Data to Retrieve Records Enriched with Structured Data and Generate Reports Based Thereon |
JP4767828B2 (ja) | 2006-12-01 | 2011-09-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ用アプリケーション・プログラムの作成システム、方法、及びプログラム |
US8190987B2 (en) | 2007-10-25 | 2012-05-29 | Microsoft Corporation | Private views of data and local calculations during real time collaboration |
US8145725B2 (en) * | 2007-10-31 | 2012-03-27 | International Business Machines Corporation | Updating data stores of virtual worlds based on data stores external to the virtual worlds |
US20140006913A1 (en) | 2007-12-21 | 2014-01-02 | Adobe Systems Incorporated | Visual template extraction |
US7406200B1 (en) | 2008-01-08 | 2008-07-29 | International Business Machines Corporation | Method and system for finding structures in multi-dimensional spaces using image-guided clustering |
US20090327339A1 (en) | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Partition templates for multidimensional databases |
US9389840B2 (en) * | 2009-02-11 | 2016-07-12 | Johnathan Mun | Compiled and executable method |
US20100211862A1 (en) | 2009-02-18 | 2010-08-19 | Microsoft Corporation | Facilitating spreadsheet and database views on common data store |
US20110066933A1 (en) * | 2009-09-02 | 2011-03-17 | Ludwig Lester F | Value-driven visualization primitives for spreadsheets, tabular data, and advanced spreadsheet visualization |
WO2011091388A2 (en) * | 2010-01-22 | 2011-07-28 | The Regents Of The University Of California | Web application development framework |
US8843814B2 (en) | 2010-05-26 | 2014-09-23 | Content Catalyst Limited | Automated report service tracking system and method |
US9952893B2 (en) | 2010-11-03 | 2018-04-24 | Microsoft Technology Licensing, Llc | Spreadsheet model for distributed computations |
US8510266B1 (en) * | 2011-03-03 | 2013-08-13 | Google Inc. | System and method for providing online data management services |
US9053083B2 (en) | 2011-11-04 | 2015-06-09 | Microsoft Technology Licensing, Llc | Interaction between web gadgets and spreadsheets |
US20130145244A1 (en) | 2011-12-05 | 2013-06-06 | Microsoft Corporation | Quick analysis tool for spreadsheet application programs |
US20130166498A1 (en) | 2011-12-25 | 2013-06-27 | Microsoft Corporation | Model Based OLAP Cube Framework |
AU2012362383B2 (en) * | 2011-12-29 | 2018-05-10 | Bibo Labs, Inc. | Spreadsheet-based programming language adapted for report generation |
US9361656B2 (en) | 2012-01-09 | 2016-06-07 | W. C. Taylor, III | Data mining and logic checking tools |
US20140108971A1 (en) * | 2012-08-31 | 2014-04-17 | Salesforce.Com.Inc. | Application builder |
US20140136936A1 (en) | 2012-11-09 | 2014-05-15 | Microsoft Corporation | Spreadsheet functions to call rest api sources |
US9575950B2 (en) * | 2012-12-11 | 2017-02-21 | Smartorg, Inc. | Systems and methods for managing spreadsheet models |
US10210151B2 (en) * | 2012-12-17 | 2019-02-19 | Thomson Reuters (Grc) Llc | Dynamic function builder |
JP2014153751A (ja) | 2013-02-05 | 2014-08-25 | Shuichi Kuroki | データの抽出・編集・出力装置及びそのプログラム |
US20140236860A1 (en) | 2013-02-19 | 2014-08-21 | Ray Camrass | system allowing banks to diversify their loan portfolios via exchanging loans |
JP6045393B2 (ja) * | 2013-02-26 | 2016-12-14 | 三菱電機株式会社 | 情報処理システム |
DE202014010948U1 (de) | 2013-05-22 | 2017-01-27 | Google Inc. | Nicht-kollaborative Filter in einem kollaborativen Dokument |
US9298454B2 (en) | 2013-10-16 | 2016-03-29 | Microsoft Technology Licensing, Llc | Using spreadsheets as a basis for enhanced application development |
US9367597B2 (en) | 2013-11-18 | 2016-06-14 | International Business Machines Corporation | Automatically managing mapping and transform rules when synchronizing systems |
US9348561B2 (en) | 2014-05-21 | 2016-05-24 | InvestCloud, Inc | Tabular format transaction editor |
US20160026616A1 (en) * | 2014-07-28 | 2016-01-28 | Microsoft Corporation | Presenting dataset of spreadsheet in form based view |
US20160092424A1 (en) * | 2014-09-25 | 2016-03-31 | Oracle International Corporation | Client side calculations |
US20160173541A1 (en) * | 2014-12-12 | 2016-06-16 | Microsoft Technology Licensing, Llc | Presentation of content from within spreadsheet application |
US9910843B2 (en) * | 2015-02-03 | 2018-03-06 | Intuit Inc. | Systems, methods and articles for a web-based spreadsheet application |
US9959098B1 (en) | 2015-03-15 | 2018-05-01 | Sigma Sciences Limited | Data processing systems and methods |
US20170098008A1 (en) | 2015-10-06 | 2017-04-06 | Squawqr LLC | Mobile application manager system and method |
US20170124043A1 (en) * | 2015-11-02 | 2017-05-04 | Microsoft Technology Licensing, Llc | Sound associated with cells in spreadsheets |
KR101769857B1 (ko) | 2015-12-28 | 2017-08-22 | (주)비아이매트릭스 | 스프레드시트 인터페이스를 이용한 데이터베이스 갱신 시스템 |
EP3465470A1 (en) | 2016-06-07 | 2019-04-10 | Open As App GmbH | Method and device for generating an electronic document specification based on a n-dimensional data source |
US10929339B2 (en) | 2016-10-17 | 2021-02-23 | Yokogawa Electric Corporation | Generation of multiple worksheet exportation |
-
2017
- 2017-03-10 US US15/455,909 patent/US10216494B2/en active Active
- 2017-12-01 EP EP17876834.7A patent/EP3549013B1/en active Active
- 2017-12-01 JP JP2019549616A patent/JP6770653B2/ja active Active
- 2017-12-01 CN CN202310128491.7A patent/CN116225399A/zh active Pending
- 2017-12-01 CN CN201780082312.3A patent/CN110325961B/zh active Active
- 2017-12-01 EP EP24156891.4A patent/EP4343613A2/en active Pending
- 2017-12-01 CA CA3045735A patent/CA3045735A1/en active Pending
- 2017-12-01 WO PCT/CA2017/051457 patent/WO2018098596A1/en unknown
-
2019
- 2019-01-22 US US16/254,155 patent/US10877736B2/en active Active
-
2020
- 2020-09-25 JP JP2020160370A patent/JP7093387B2/ja active Active
- 2020-11-24 US US17/102,993 patent/US11442707B2/en active Active
-
2022
- 2022-06-17 JP JP2022098439A patent/JP7460689B2/ja active Active
- 2022-08-05 US US17/881,790 patent/US11893366B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7523395B1 (en) * | 2003-05-30 | 2009-04-21 | Oracle International Corporation | Web application generator for spreadsheet calculators |
JP2006024021A (ja) * | 2004-07-08 | 2006-01-26 | Nec Corp | 帳票自動作成システム、帳票自動作成方法、帳票自動作成サーバ、および帳票自動作成装置 |
JP2009508237A (ja) * | 2005-09-09 | 2009-02-26 | マイクロソフト コーポレーション | スプレッドシート文書のパラメータの指定、セッティング、および発見 |
JP2014506350A (ja) * | 2010-12-09 | 2014-03-13 | マイクロソフト コーポレーション | スプレッドシートオブジェクトのコードレス共有 |
JP2016091244A (ja) * | 2014-10-31 | 2016-05-23 | 富士通エフ・アイ・ピー株式会社 | 情報処理装置、プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20180157467A1 (en) | 2018-06-07 |
US11442707B2 (en) | 2022-09-13 |
JP7460689B2 (ja) | 2024-04-02 |
US20220374213A1 (en) | 2022-11-24 |
JP2021028828A (ja) | 2021-02-25 |
US10216494B2 (en) | 2019-02-26 |
CN116225399A (zh) | 2023-06-06 |
US10877736B2 (en) | 2020-12-29 |
US11893366B2 (en) | 2024-02-06 |
WO2018098596A1 (en) | 2018-06-07 |
EP3549013A1 (en) | 2019-10-09 |
JP2022130503A (ja) | 2022-09-06 |
US20210081183A1 (en) | 2021-03-18 |
EP3549013B1 (en) | 2024-03-20 |
EP3549013A4 (en) | 2020-08-05 |
JP6770653B2 (ja) | 2020-10-14 |
JP7093387B2 (ja) | 2022-06-29 |
US20190187962A1 (en) | 2019-06-20 |
CN110325961B (zh) | 2023-02-28 |
CN110325961A (zh) | 2019-10-11 |
EP4343613A2 (en) | 2024-03-27 |
CA3045735A1 (en) | 2018-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7093387B2 (ja) | スプレッドシートに基づくソフトウェアアプリケーション開発 | |
US11113041B2 (en) | Spreadsheet-based software application development | |
JP2021028828A6 (ja) | スプレッドシートに基づくソフトウェアアプリケーション開発 | |
JP7153725B2 (ja) | スプレッドシートに基づくソフトウェアアプリケーションの開発 | |
US11726753B2 (en) | Spreadsheet-based software application development | |
EP3193261B1 (en) | Method and system for editing virtual documents | |
US20140282078A1 (en) | Systems and methods for concurrent online and offline document processing | |
AU2021201489B2 (en) | System and Process for generating an internet application | |
US11783120B2 (en) | System and process for generating an internet application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190718 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190718 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200710 |
|
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: 20200730 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20200828 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200925 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6770653 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |