ドキュメントアセンブリとレポート生成のための Node.js SDK

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

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

GroupDocs.Assembly Cloud は、開発者が再利用可能なテンプレートや外部データソースから、リッチフォーマットで印刷可能なドキュメントを作成できる、フルマネージドの REST ベースサービスです。

このプラットフォームは、従来の Microsoft Office ファイル (DOCX、XLSX、PPTX) から PDF、HTML、OpenDocument、そして多くのグラフィック形式まで、幅広いソースおよびターゲット形式をサポートしているため、自社サーバーにサードパーティ製ソフトウェアをインストールすることなく、契約書、請求書、レポート、マーケティングパンフレット、その他あらゆるカスタムドキュメントを作成できます。テンプレート解析、データバインディング、画像レンダリング、バーコード生成、数式評価、ファイル変換といった面倒な処理はすべてクラウドで実行されるため、オペレーティングシステム間で一貫した結果が得られ、インフラストラクチャコストを削減できます。

Node.js SDK を使用する理由

  • インストール不要のランタイム – SDK は Assembly Cloud REST API をラップした薄いラッパーであるため、Node.js 12 以降と npm パッケージのみが必要です。
  • クロスプラットフォーム – Windows、macOS、Linux、コンテナ内でも同様に動作します。
  • セキュア – すべての通信はTLSで暗号化され、認証は個人のApp SIDとApp Keyで実行されます。
  • スケーラブル – クラウドサービスは、単一ドキュメントのリクエストだけでなく、大量のメールマージジョブのバッチ処理も処理できます。
  • 拡張可能 – 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. アセンブルされたファイルをバイト配列として受信 し、ローカルに保存するか、クライアントに直接ストリーミングします。

次の例(その他の機能 セクションに表示)は、これらの各ステップを、コンパクトで本番環境に対応したコード スニペットで示しています。

GroupDocs.Assembly クラウド API の機能

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

XMLおよびJSONソースのLINQスタイルのデータバインディング

画像、グラフ、外部ドキュメントコンテンツを挿入する

配列データからの動的なテーブルとリスト

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

数式と連続データ操作を適用する

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

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

HTML出力の背景色を設定する

一括してパーソナライズされた手紙を作成するための差し込み印刷

Node.jsでレポートを生成する

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

手順

  1. DOCX テンプレートを GroupDocs クラウドストレージに アップロード します。
  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 は、他の言語用の SDK も提供しています。

  日本語