ドキュメント送信元の連絡先に添付ファイルのみを追加する方法

ドキュメント送信元の連絡先に添付ファイルのみを追加する方法

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

シナリオ: [Zoho Sign で送信]ボタンを使用して、連絡先の詳細ページから Zoho Sign にドキュメントを送信しています。ドキュメントが署名用に送信されると、そのドキュメントの詳細と添付ファイルが[Zoho Sign ドキュメント]タブに追加されます。ドキュメントを送信した連絡先レコードには、添付ファイルだけを追加したいと考えています。これは CRM のワークフローで実現できますか?
このコードは、署名済みドキュメントを、そのリクエストが実行されたレコードに添付します。たとえば、タブ「XYZ」にあるレコード「A」からリクエストを送信した場合、署名済みドキュメントはこのレコード「A」に追加されます。
  1. Zoho CRM ページを開き、[設定]->[カスタマイズ]->[ワークフロー ルール]に移動します。Zoho Sign ドキュメントタブ用に新しいワークフローを作成します。
  2. [レコードの操作時]->[編集時]を選択します。
  3. [Zoho Sign ドキュメントが編集されるたびにこのワークフローを繰り返し実行する]のチェックボックスをクリックします。
  4. [特定の項目が更新された場合]を選択します。
  5. [ドキュメントステータス]が「署名済み」の値に更新されたときに実行されるように設定します。
  6. 条件「どの Zoho Sign ドキュメントにこのルールを適用しますか?」では、値としてすべての Zoho Sign ドキュメントを選択します。
    -->[次へ]をクリックします。
    -->操作の一覧で、[関数]を選択します。
  7. [独自の関数を作成]を選択します。
  8. 関数に名前を付けて作成します。
  9. 関数内の引数を編集します。
  10. キー名として「requestId」を追加し、値の種類を「#」に設定して、[Zoho Sign ドキュメント]タブの項目「Zoho Sign ドキュメント ID」を選択します。
  11. 以下のコードを関数内で使用し、自身の Zoho Sign 接続名に置き換えてください。
  12. 接続を作成するには、[設定]->[開発者向け情報]->[外部連携]->[新しい接続を作成]->[Zoho OAuth]を選択->ここで接続名を入力->関数内で同じ「外部連携のリンク名」を使用します。
  13. 次のスコープを選択します --> ZohoSign.account.ALL、ZohoSign.documents.ALL、ZohoSign.settings.READ、ZohoSign.templates.ALL
  14. [作成]と[接続]をクリックします。
  15. 関数とワークフロールールを保存します。
  1. response = invokeurl
  2. [
  3. url :'https://sign.zoho.com/api/v1/requests/'+ requestId
  4. 種類 :取得する
  5. connection:'使用する Connection 名前 here'
  6. ];
  7. requestObj = response。取得する('requests');
  8. info requestObj;
  9. if(requestObj。containKey('request_status'))
  10. {
  11. reqStatus = requestObj。取得する('request_status');
  12. info reqStatus;
  13. if(reqStatus。equals('完了') || reqStatus。equals('期限切れ') || reqStatus。equals('却下済み') || reqStatus。equals('recalled'))
  14. {
  15. requestId = requestObj。取得する('request_id');
  16. 処理 = requestObj。取得する('処理');
  17. document_ids = requestObj。取得する('document_ids');
  18. メール = '';
  19. 順番 = 1000;
  20. for each 操作 in 処理
  21. {
  22. if(操作。取得する('action_type').equals('SIGN') && 操作。取得する('signing_order') < 順番)
  23. {
  24. 順番 = 操作。取得する('signing_order');
  25. メール = 操作。取得する('recipient_email');
  26. データ = Zoho。crm。searchRecords('Custom_Module_Name','(メール:equals:' + メール + ')');
  27. if(データ。size() > 0)
  28. {
  29. leadid = データ。取得する(0).取得する('id');
  30. for each ドキュメント in document_ids
  31. {
  32. document_id = ドキュメント。取得する('document_id');
  33. fileResponse = invokeurl
  34. [
  35. url :'https://sign.zoho.com/api/v1/requests/'+ requestId + '/documents/' + document_id + '/pdf'
  36. 種類 :取得する
  37. connection:'使用する Connection 名前 here'
  38. ];
  39. Zoho。crm。attachFile('Custom_Module_Name',leadid,fileResponse);
  40. }
  41. fileResponse = invokeurl
  42. [
  43. url :'https://sign.zoho.com/api/v1/requests/'+ requestId + '/completioncertificate'
  44. 種類 :取得する
  45. connection:'使用する Connection 名前 here'
  46. ];
  47. Zoho。crm。attachFile('Custom_Module_Name',leadid,fileResponse);
  48. }
  49. }
  50. break;
  51. }
  52. }
  53. }