【Zoho Writer】Delugeによる差し込み文書の作成について

【Zoho Writer】Delugeによる差し込み文書の作成について

Delugeによる差し込み文書の作成

本記事はサンプルコードによる提供となります。
改変・カスタマイズについてはお客様自身で行っていただく必要がございます。
サポート窓口でのコード作成は出来かねますので、ご了承ください。

1. 差し込み項目を入れた文書の作成

下記のような、差し込み項目を含めた文書を作成します。

<<連絡先.姓>> 様
Send a mail to <<連絡先.メール>>

請求書の担当者
請求書番号
作成者
Due Date
<<請求書.請求書の担当者>>
<<請求書.請求書番号>>
<< 請求書.作成者>>
<<請求書.期限>>

なお、差し込み項目の挿入は下記の画像から設定可能です。




2. Delugeコードを用いて、差し込み項目の情報を取得します。


fields = zoho.writer.getMergeFields(document_id,connection_name);
info fields;
ここで、上記のdocument_idとconnection_nameは下記の方法で取得します。
document_id:ファイル作成画面のリンクにございます。
例)https://{{domain}}/writer/open/eb4kob4cf65bb6d074af****************
この場合は、document_id="eb4kob4cf65bb6d074af****************"となります。

connection_name:こちらのリンク(英語)を参照いただき、コネクションを作成し、作成したコネクションを適用します。
例)connection_name="writer_name" 

fieldsには下記のMap型データが入ります。

{
"rl_fields": [
{
"fields": [
"Invoices.Owner",
"Invoices.Invoice_Number",
"Invoices.Created_By",
"Invoices.Due_Date"
],
"info": {
"module": "Invoices",
"id": "Invoices",
"display_name": "Invoices",
"type": "related_list",
"groupname": "Related List"
}
}
],
"fields": [
"First_Name",
"Email"
]
}


3. サンプルコードを用いて、CRMの項目とWriterの差し込み項目の関連付けを行います。


invoicesRecords = zoho.crm.getRecordById("Invoices",invoiceId);
data = Map();
data.put("First_Name",invoicesRecords.get("Account_Name").get("name"));
data.put("Email",invoicesRecords.get("Account_Name").get("id"));

invoicesList = list();
invoicesfield = Map();

invoicesfield.put("Invoices.Invoice_Number",invoicesRecords.get("Invoice_Number"));
invoicesfield.put("Invoices.Created_By",invoicesRecords.get("Created_By").get("name"));
invoicesfield.put("Invoices.Due_Date",invoicesRecords.get("Due_Date"));
invoicesfield.put("Invoices.Owner",invoicesRecords.get("Owner").get("name"));
invoicesList.add(invoicesfield);
data.put("Invoices",invoicesList);   //Invoices - This key value is got from the 'id' value in the RL info

mergedata = Map();
mergedata.put("merge_data",{"data":data});
mergedata.put("subject","Invoice Data");

//optional
mergedata.put("message","Please find your invoice attached.");
info mergedata;
zoho.writer.mergeAndSend("eb4kob4cf65bb6d074af7a7de21e561119eb9","pdf",invoicesRecords.get("email"),mergedata,"writer_name");


注:

(1) 上記の関数のDeluge 連携タスク:mergeAndSend task はCC, BCC, パスワードの埋め込みには対応しておりません。そのため、invokeURLタスクを用いてWriter APIを呼び出す必要がございます。

param = Map();
param.put("message", "Please find \n your invoice attached.");
param.put("subject", "Invoice Data");
param.put("merge_data", {"data":data});
param.put("output_format", "pdf");
param.put("recipient_email","xxx@zylker.com");
param.put("cc_email", "yyy@zylker.com");
param.put("bcc_email", "zzz@zylker.com");
param.put("password","test");

invokeurl
[
url: "https://writer.zoho.com/api/v1/documents/eb4kob4cf65bb6d074af7a7de21e561119eb9/merge/email"
type: post
parameters: param
connection: "writer_name"
];


(2) 改行を挿入したい場合は、「\n(バックスラッシュn)」を入れる必要がございます。

例) mergedata.put("message","Please find your invoice attached. \n Thanks");




      • Related Articles

      • 【Zoho Writer】引用タグの使い方

        以下の方法を紹介します。 ・引用タグを作成 ・コードを挿入 引用タグを作成 引用タグを使用して、コンテンツを目立たせ、視覚的に魅力的なものにします。 引用タグの作成するには、引用したいコンテンツを選択します。 固定可能なツールパレットが表示されます。 ドロップダウンから「引用」オプションを選択し、「引用の追加」をクリックします。 色んなテンプレートからも引用タグを作成できます。 「その他」 >「フォーマット」タブをクリックします。 ...
      • 【Zoho Writer】クレジットで差し込み文書を拡張

        現在、Writerを使用しているZoho Workdriveの有料ユーザーには、毎月1000クレジットポイントを無料で提供しております。このクレジットポイントを使用して、ユーザーは差し込み印刷操作を実行できます。 差し込み文書印刷は以下をご参照ください。 https://www.zoho.com/writer/help/api/v1/merge-api.html 差し込み印刷のメリットは以下となります: ・クレジットポイントの使用は、組織のメンバーのみに限定されます。 ...
      • 【Zoho Writer】草稿をテンプレートとして保存

        Writer草稿をテンプレートとして保存できません。 文書をテンプレートとして保存できるようにするには、 文書を準備完了としてマークする必要があります。 操作方法:  1:エディターの右上から「下書き」オプションをクリックします。 2:「準備完了としてマーク」を選択します。 これで、文書が草稿ステージから準備完了ステージに変換されました。 ​
      • 【Zoho Writer】ナイトモードで背景テキストの色が表示されない

        ナイトモードで背景のテキストの色が表示されないのは、すべてを最小限のカラーコントラスト比で表示する設計によるものです。 カラーコントラクト比を維持するため、特定の背景色は、低い可視性/高いコントラスト比のいずれかに調整されます。 そのため、最小のカラーコントラクト比率を維持するため、ナイトモードでは背景のテキストの色を表示しないことにしました。
      • 【Zoho Writer】違うドメイン(.com、.in、.eu、.cnなど)のユーザー間で文書共有可能?

        複数のドメイン間でユーザー間でドキュメントを共有できません。 ご不便をおかけして恐縮です。 たとえば、@zoho.comアカウントを持つユーザーは、 @zoho.euアカウントを使用しているユーザーと文書共有できません。 ただし、[共有]メニューの[パスワードで保護された公開]オプションを使用して、 文書を共有することはできます。これにより、ユーザーがドキュメントを開いて編集できる、 文書への公開アクセスリンクが作成されます。

      Zoho Community

      Zoho ユーザーが集うオンラインフォーラムでは、サービスの使いこなしに関する活発な議論や情報交換が行われています。