Node.js SDK によるドキュメント組み立てとレポート生成

強力なドキュメント組み立て機能を、GroupDocs.Assembly Cloud REST API を使用して、Node アプリケーションに統合できます。

  • GroupDocs.Assembly Cloud SDK(cURL 用)
  • GroupDocs.Assembly Cloud SDK(.NET 用)
  • Java 用 GroupDocs.Assembly Cloud SDK
  • PHP 用 GroupDocs.Assembly Cloud SDK
  • Python 用 GroupDocs.Assembly Cloud SDK
  • Ruby 用 GroupDocs.Assembly Cloud SDK
  • Go 用 GroupDocs.Assembly Cloud SDK
  • C++ 用 GroupDocs.Assembly Cloud SDK
  • GroupDocs.Assembly Cloud SDK(Swift 向け)
無料トライアルを開始

GroupDocs.Assembly Cloud は、完全にマネージドされた REST ベースのサービスで、開発者が再利用可能なテンプレートと外部データソースからリッチな書式設定が施された印刷対応ドキュメントを作成できるようにします。

このプラットフォームは、さまざまなソースおよびターゲット形式に対応しています – クラシックな Microsoft Office ファイル(DOCX、XLSX、PPTX)から PDF、HTML、OpenDocument、多数の画像形式まで – サーバーにサードパーティ製ソフトウェアをインストールせずに、契約書、請求書、レポート、マーケティングブローシャ、または任意のカスタムドキュメントを生成できます。テンプレートの解析、データバインディング、画像レンダリング、バーコード生成、数式評価、ファイル変換といった重い処理はすべてクラウドで実行され、OS間で一貫した結果を保証し、インフラコストを削減します。

Node.js SDK を使用する理由

  • Zero‑install runtime – SDK は Assembly Cloud REST API の軽量ラッパーであり、Node 12+ と npm パッケージさえあれば利用できます。
  • Cross‑platform – Windows、macOS、Linux、またはコンテナ内でも同様に動作します。
  • Secure – すべての通信は TLS で暗号化され、認証は個人の App SID と App Key で行われます。
  • Scalable – クラウドサービスは単一ドキュメントのリクエストから大量のバッチ Mail‑Merge ジョブまで処理可能です。
  • Extensible – REST エンドポイントを呼び出せる任意の言語から同じ API を使用でき、Node.js SDK はリクエスト構築とレスポンス処理をシンプルにします。

Node.js アプリケーションの典型的なワークフロー

  1. テンプレートの作成(DOCX、PPTX など) – プレースホルダー フィールドや条件ブロック、ループ、バーコードタグなどのオプションプログラミング構造を含めます。
  2. データソースの作成 – XML または JSON で、テンプレートにマージする値を提供します。
  3. テンプレートのアップロード – SDK の uploadFile メソッドを使用して GroupDocs Cloud Storage にアップロードします。
  4. AssembleOptions の設定 – テンプレートパス、データソース、希望する出力形式(PDF、DOCX、HTML など)および追加設定(例:バーコード生成、背景色)を指定します。
  5. assembleDocument の呼び出し – SDK が単一の HTTP リクエストを送信し、サーバー上で組み立てプロセスを起動します。
  6. 組み立てられたファイルの受信 – バイト配列として受け取り、ローカルに保存するかクライアントへ直接ストリームします。

以下の例(More Feature セクションに掲載)は、これらの手順をコンパクトで本番環境対応のコードスニペットで示しています。

GroupDocs.Assembly Cloud API の機能

クラウド REST API を使用してテンプレートからドキュメントを生成します

LINQ スタイルのデータバインディング(XML と JSON ソース向け)

画像、チャート、外部ドキュメントのコンテンツを挿入します

配列データから動的テーブルとリストを生成します

ハイパーリンク、ブックマーク、メール添付ファイルを追加します。

数式と順次データ操作を適用します。

テンプレート内の条件付きコンテンツブロック(IF‑ELSE)。

バーコード(QR、Code128 など)を生成します。

HTML の出力に対して背景色を設定します。

バッチ処理でパーソナライズされたレターのメールマージ。

Node.js でレポートを生成します。

以下のスニペットは、テンプレートのアップロード、JSON データファイルの読み取り、アセンブリ要求の設定、そして組み立てられたドキュメントの受信という完全なフローを示します。

Steps

  1. アップロード した DOCX テンプレートを GroupDocs Cloud Storage に送信します。
  2. 読み取り マージする値が含まれる JSON データファイルを読み取ります。
  3. 設定 AssembleOptions – 出力形式を選択し、データをバインドします。
  4. 呼び出し assembleDocument を使用してレポートを生成します。
  5. 保存 されたバイト配列を PDF として保存します(またはサポートされている任意の形式)。
// Replace with your App SID and App Key
const { AssemblyApi, AssembleDocumentRequest, AssembleOptions, TemplateFileInfo, model } = require("groupdocs-assembly-cloud");
const fs = require("fs");
const path = require("path");

// Authorization placeholder
const assemblyApi = new AssemblyApi("####-####-####-####-####", "##################");

// 1️⃣ Upload the template file
const templatePath = "Input1.docx";
const uploadRequest = new model.UploadFileRequest({
    fileContent: fs.createReadStream(templatePath),
    path: templatePath
});
await assemblyApi.uploadFile(uploadRequest);

// 2️⃣ Read the data source (JSON)
const dataPath = "Input2.docx";
const reportData = fs.readFileSync(dataPath, "utf8");

// 3️⃣ Set assembly options
const assembleOptions = new AssembleOptions({
    saveFormat: "pdf",
    reportData: reportData,
    templateFileInfo: new TemplateFileInfo({ filePath: templatePath })
});

// 4️⃣ Create and send the assemble request
const request = new AssembleDocumentRequest({ assembleOptions });
const result = await assemblyApi.assembleDocument(request);

// 5️⃣ Save the resulting document
const outputPath = path.join(__dirname, "GeneratedReport.pdf");
fs.writeFileSync(outputPath, result.body);

console.log("Report generated successfully:", outputPath);

サポートと学習リソース

GroupDocs.Assembly Cloud は他の言語向けに SDKs も提供しています:

  日本語
47c68a8a1