質問

Web ベースのデータベースを使用しているので、そのフロントエンドにスプレッドシート機能を追加する必要があります。Google Docs Spreadsheetsを使えばいいのではないかと考えていました。彼らの Google App Script には、私が必要とする機能が備わっているようです。特に、URLFetch サービスを onEdit イベントと組み合わせて使用​​すると、スプレッドシートと DB の同期を維持できます (AJAX スタイル)。また、スプレッドシートの構築、保存、共有を非常に柔軟に行うことができます。

しかし、Google App Script に関するいくつかの点で私は立ち止まりました。サーバー側で実行されるため、ローカルでデバッグするのは困難です。ブレークポイントやステッピング機能を備えたデバッガはありません。外部モジュールやライブラリをインポートすることはできません。JSLintはありません。これらがないと、「ああ、ああ、これは痛むだろう」という気分になり始めました。

そこで、ブラウザからアクセスできるスプレッドシート機能を既存の Web ベースのデータベースにボルトオンする、より良い方法はないかと考えています。それとも、Google App Script を最大限に活用するためのベスト プラクティスはありますか?

編集:私のアプリケーションに最適な解決策の順に、考えられる解決策を以下に示します。

  1. ブラウザベースのJavaScriptスプレッドシートエンジン。(存在しないかもしれません。)
  2. Google App Engine にインストールできる Python スプレッドシート エンジン モジュール。(これも見たことがありません。)
  3. Google スプレッドシートに対する、より堅牢で AJAX 的なアプローチ。(元の質問を参照してください。)
  4. EC2 にインストールできるオープンソースのスプレッドシート エンジン。(これらは存在するようです -- おそらく ソーシャルカルク, 、 または 単純なスプレッドシート. 。おすすめは?)
役に立ちましたか?

解決

Web ページでスプレッドシート機能を使用しますが、スプレッドシートのすべての機能をスクリプト化するのではなく、 計算エンジン これにより、スプレッドシート機能のプログラム的な中心部が提供されます。計算エンジンは、数百種類の数式を計算し、依存関係 (および依存関係間の順序) を処理し、セルの書式設定などを行う方法を知っています。私の特別なケースでは、SpreadsheetGear を使用します。 http://www.spreadsheetgear.com/products/spreadsheetgear.net.aspx

JavaScript を使用して、セル ナビゲーションやその他のさまざまな機能を備えたスプレッドシートの HTML 表現を作成します。シートを再計算する必要がある場合 (Excel の F9 など)、スプレッドシート全体をサーバーに送信し、サーバーにすべての計算を依頼し、その結果を Web ページ表現に補充します。スプレッドシートの内容によっては、データベースに書き込まれる場合もあります。

おそらく、私の答えが軌道から大きく外れていないかどうかを確認するために、この時点であなたの意見が必要です。

他のヒント

スプレッドシートのフロントエンド機能を備えた Web ベースのデータベース?のように聞こえる ラギック.

そして、独自のバックエンドを開発する必要があるとおっしゃいましたが、HTTP API を使用してデータを Ragic に投稿し、API を使用してデータを同期している間、ユーザーにスプレッドシートのフロントエンドを使用させることができると思います。

それで私はこれを自分で掘り下げました、そしてそれは少し傷つきました。詳細は次のとおりです。

悪い人:

  1. JSLint ではなく、エディターを使用する必要があります。
  2. デバッガはありません。スクリプトはサーバー側で実行されるため、Firebug やその他のブラウザ ツールは役に立ちません。「表示 -> 実行トランスクリプト」と「表示 -> ログ」が少し役立ちます。ただし、「onEdit」イベントでは機能しないようです。
  3. Web への接続は、非同期モードを持たない UrlFetch サービスを経由します。そして、「onEdit」イベント内ではまったく機能しません。 http://code.google.com/p/google-apps-script-issues/issues/detail?id=185
  4. 基本的に 3 つのイベント タイプがあります。「onLoad」、「onInstall」、および「onEdit」。特に、「onClick」イベントを見逃してしまいました。
  5. 外部ライブラリのサポートはありません。

いいもの:

  1. これは本物の JavaScript なので、予想どおりに機能し、外部の JSLint ツールを使用できます。
  2. 学習曲線が浅い。シート、範囲、値の設定/取得を理解することが重要な概念です。
  3. スプレッドシート項目の操作、書式設定などの機能が多数あります。
  4. Google データ API のサポート?私はこれを使用したことはありませんが、外部 Web リソースに接続するための方法のようです。
  5. スプレッドシート上で適切に統合され、スクリプト化された更新は、スプレッドシートを閲覧している他の人にすぐに表示されます。

全体として、この環境には多くの UI 機能があり、多くの可能性がありますが、実際の運用開発を行うための重要な機能がまだ欠けているようです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top