ファイル交換の統合
共同編集の有無にかかわらず、Univer アプリケーションにファイルの入出力を追加します。
Excel を Univer で開くには、エディターが読めるデータへ変換します。出力時は編集後のデータを Excel に戻します。サーバーの @univerjs-pro/exchange-node が変換し、ブラウザーはアップロード、表示、結果のダウンロードを行います。
共同編集を使わない場合
例えば Excel をアップロードし、ページ上で編集して Excel としてダウンロードします。
- ブラウザーがファイルを送り、サーバーが Univer データに変換して返します。
- ブラウザーがそのデータでスプレッドシートを開き、編集可能にします。
- 出力時は編集後のデータをサーバーに送り、ダウンロード用 Excel を生成します。
この処理に共同編集サービスは不要です。ブラウザー API の「スナップショット」がここで扱うデータです。スナップショットの入出力にもサーバー変換は必要です。作業を保存して後で再開するには、アプリケーション側でそのデータも保存してください。
変換モジュールの導入と利用は Office ファイルの入出力を参照してください。Node.js でファイルを処理するだけの場合も同じページから始めます。
共同編集を使う場合
例えば Excel を取り込み、同僚と共有して共同編集し、後で出力します。
- サーバーがファイルを変換し、結果を共同編集ドキュメントとして保存します。
- サーバーが ID を返し、ブラウザーが読み込みます。他のユーザーも同じ ID で参加します。
- 出力時は最新の内容を読み、ダウンロード用 Excel を生成します。
ブラウザー API の unitId がこの ID です。共同編集の統合を終えてから Exchange の例を実行し、ブラウザー、サーバー、変換コードを合わせて確認してください。
出力前に現在の編集の同期を待たないと、最新の変更が欠落する場合があります。共同編集ドキュメントの取得と変換は拡張モジュールのサーバー側 Office Exchange を参照してください。
入出力ボタンの接続
サーバー変換が動作したらページへ接続します。
- Univer メニューまたは Facade API: Exchange の例に従いアップロード、変換、タスク照会、ダウンロードの API を実装し、ブラウザープラグインを設定します。アドレスとレスポンス形式を一致させてください。
- 独自ボタン: アプリケーション API を呼びます。取り込み後は返されたデータまたは ID を開き、出力後は生成ファイルをダウンロードします。
ブラウザー設定は Sheets、Docs、Slides、Boards、Bases、PDFs を参照してください。共同編集例は Sheets を扱います。他製品は Office ファイルの入出力と対象リリースの対応形式を確認してください。
統合の検証
実際の業務ファイルを取り込み、編集して出力します。Office アプリケーションで開き、変更、数式、画像、レイアウトを確認してください。共同編集では他のユーザーも同じドキュメントを開けることと、サーバー再起動後の保持も検証します。
配置前にサンプルの一時ファイルとメモリ上のタスクをアプリケーションのストレージに置き換え、容量制限、変換失敗、タイムアウトを処理してください。アップロード、タスク照会、ダウンロードにはアクセス検証が必要です。ID と認可を参照してください。
このガイドはいかがですか?