「CRMでコールバック関数を設定してZoho Sign文書の詳細を追加する方法は?」

「CRMでコールバック関数を設定してZoho Sign文書の詳細を追加する方法は?」

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

シナリオ: ZohoCRMに自動化を設定してZoho Signに文書を送信しました。文書を表示するたびに、Zoho Signで文書を表示する必要があります。この方法で文書ステータスを表示するのは困難です。CRMにコールバック機能を設定して、Zoho Sign文書の詳細を追加することはできますか?

  1. CRMからZoho Signの拡張機能を使用してサインを送信すると、CRMで文書が更新されますが、オートメーションやワークフローなどの他のインスタンスでは、これは行われません。
  2. カスタムコールバック関数を作成する必要があります。以下の手順に従って行うことができます。 
以下のコードを貼り付けてください:

  1. crmAPIRequestMap = crmAPIRequest.toMap();
  2. crmAPIRequestMap = crmAPIRequest.toMap();
  3. request_body = crmAPIリクエストマップ.get('body');
  4. 情報リクエストボディ;
  5. requestMap = request_body.toMap();
  6. requestMap = request_body.toMap();
  7. response = Map();
  8. response.put('status_code',200);
  9. response.put('ステータスコード',200);
  10. response.put('Content-Type','application/json');
  11. response.put('Content-Type','application/json');
  12. hasRequests = requestMap.containKey('requests');
  13. hasRequests = requestMap.containKey('リクエスト');
  14. もし(requestMap.containKey('requests') かつ requestMap.containKey('notifications'))ならば
  15. notificationMap = requestMap.get('notifications').toMap();
  16. notificationMap = requestMap.get('notifications').toMap();
  17. notificationMap = requestMap.get('通知').toMap();
  18. requestStr = requestMap.get('requests');
  19. requestStr = requestMap.get('要求');
  20. requestObj = requestStr.をマップに変換();
  21. response.put('body',{'what we got':requestObj,'notification':notificationMap});
  22. response.put('body',{'私たちが得たもの':requestObj,'通知':notificationMap});
  23. もし、リクエストオブジェクトに「リクエストステータス」が含まれていて、かつ、通知マップに「操作タイプ」が含まれている場合
  24. operationType = notificationMap.get('操作タイプ');
  25. //if(requestObj.get('request_status').equals('completed'))
  26. if(operationType.equals('RequestCompleted') || operationType.equals('RequestSigningSuccess') || operationType.equals('RequestRecalled') || operationType.equals('RequestRejected') || operationType.equals('RequestExpired'))
  27. if(operationType.equals('完了要求') || operationType.equals('署名成功要求') || operationType.equals('取り消し要求') || operationType.equals('拒否要求') || operationType.equals('期限切れ要求'))
  28. requestStatus = '署名用に出されています';
  29. if(operationType.equals('RequestCompleted'))
  30. もし操作タイプが「RequestCompleted」と等しい場合
  31. requestStatus = '署名済み';
  32. }
  33. もし(operationType.equals('RequestRecalled'))ならば
  34. requestStatus = 'Recalled';
  35. requestStatus = '再請求';
  36. }をご覧ください。
  37. もし(操作タイプが「RequestRejected」と等しい場合)
  38. requestStatus = 'Declined';
  39. requestStatus = '拒否されました';
  40. }
  41. もし(操作タイプが 'RequestExpired' である場合)
  42. requestStatus = '期限切れ';
  43. }
  44. requestId = requestObj.get('リクエストID');
  45. //既存の確認
  46. zsignrecord = zoho.crm.検索レコード('zohosign__ZohoSign_Documents','(zohosign__ZohoSign_Document_ID:equals:' + requestId + ')');
  47. もし、zsignrecord.size()が0より大きく、かつzsignrecord.get(0)に「zohosign__DeleteEdit_Preview_or_Position_Signature_Fields」キーが含まれているならば
  48. 情報「レコードが既に存在します」
  49. response.put('body',{'message':'レコードは既に存在しており、更新しています'});
  50. if(zsignrecord.get(0).get('zohosign__DeleteEdit_Preview_or_Position_Signature_Fields') == false))ならば
  51. //更新が必要です
  52. zsrecordId = zsignrecord.get(0).get('id');
  53. zsrecordId = zsignrecord.get(0).get('id');
  54. zsrecordId = zsignrecord.get(0).get('id');
  55. zsrecordId = zsignrecord.get(0).get('id');
  56. zsrecordId = zsignrecord.get(0).get('id');
  57. zsrecordId = zsignrecord.get(0).get('id');
  58. zsrecordId = zsignrecord.get(0).get('id');
  59. zsrecordId = zsignrecord.get(0).get('id');
  60. zsrecordId = zsignrecord.get(0).get('id');
  61. zsrecordId = zsignrecord.get(0).get('id');
  62. zsrecordId = zsignrecord.get(0).get('id');
  63. zsrecordId = zsignrecord.get(0).get('id');
  64. zsrecordId = zsignrecord.get(0).get('id');
  65. zsrecordId = zsignrecord.get(0).get('id');
  66. zsrecordId = zsignrecord.get(0).get('id');
  67. zsrecordId = zsignrecord.get(0).get('id');
  68. zsrecordId = zsignrecord.get(0).get('id');
  69. zsrecordId = zsignrecord.get(0).get('id');
  70. zsrecordId = zsignrecord.get(0).get('id');
  71. zsrecordId = zsignrecord.get(0).get('id');
  72. zsrecordId = zsignrecord.get(0).get('id');
  73. recordInfo = {'zohosign__Document_Status':requestStatus};
  74. recordInfo = {'zohosign__Document_Status':requestStatus};
  75. recordInfo = {'zohosign__Document_Status':requestStatus};
  76. recordInfo = {'zohosign__Document_Status':requestStatus};
  77. recordInfo = {'zohosign__Document_Status':requestStatus};
  78. recordInfo = {'zohosign__Document_Status':リクエストステータス};
  79. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  80. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  81. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  82. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  83. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  84. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  85. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  86. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  87. resp = zoho.crm.createRecord('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  88. resp = zoho.crm.作成レコード('zohosign__ZohoSign_Documents',zsrecordId,recordInfo);
  89. もし(resp.containKey('id'))ならば
  90. response.put('body',{'message':'レコードが更新されました'});
  91. }
  92. }終わりました。
  93. それ以外
  94. 返す {'crmAPIResponse':response};
  95. }をご覧ください。
  96. }
  97. それ以外
  98. response.put('body',{'リクエストID':requestId});
  99. 関連モジュール = 'Contacts';
  100. 関連モジュールキー = 'zohosign__Contact';
  101. アクション = requestObj.get('アクション');
  102. メール = actions.get(0).get('recipient_email');
  103. レコード = zoho.crm.searchRecords('Contacts', '(Email:equals:' + email + ')');
  104. レコードが0以下の場合
  105. レコード = zoho.crm.searchRecords('Leads','(Email:equals:' + email + ')');
  106. レコードが1つ以上ある場合
  107. 関連モジュール = 'Leads';
  108. 関連モジュールキー = 'zohosign__Lead';
  109. }をご覧いただきありがとうございます。
  110. }私たちはあなたのためにここにいます。
  111. レコードのサイズが0より大きい場合
  112. レコードが見つかりました。
  113. leadid = records.get(0).get('id');
  114. leadid = records.get(0).get('id');
  115. recordInfo = {'名前':requestObj.get('request_name'),関連モジュールキー:leadid,'zohosign__Document_Status':requestStatus,'zohosign__ZohoSign_Document_ID':requestId,'zohosign__Date_Completed':today,'zohosign__Module_Name':associatedModule,'zohosign__Module_Record_ID':leadid};
  116. //ZohoSignレコードをCRMに作成する
  117. resp = zoho.crm.作成レコード('zohosign__ZohoSign_Documents',recordInfo);
  118. もし(resp.containKey('id'))がある場合
  119. zsDocId = resp.get('id');
  120. zsDocId = resp.get('id');
  121. respDoc = zoho.sign.ダウンロード文書(requestId);
  122. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  123. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  124. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  125. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  126. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  127. zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  128. Zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  129. Zoho.crm.attachFile('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  130. Zoho.crm.添付ファイル('zohosign__ZohoSign_Documents',zsDocId,respDoc);
  131. response.put('body',{'レコードに添付':zsDocId});
  132. //すべての受信者のZohoサイン受信者レコードを作成します。
  133. 各アクションについて
  134. recpStatus = '署名待ち';
  135. if(action.get('action_status').equals('SIGNED'))
  136. もし(action.get('action_status').equals('SIGNED'))ならば
  137. recpStatus = '署名済み';
  138. }をご覧ください。
  139. それ以外の場合、もし(アクションの「アクションステータス」が「拒否」と等しい場合)
  140. recpStatus = 'キャンセル';
  141. }をご覧ください。
  142. recpRecordInfo = {'名前':action.get('recipient_name'),'zohosign__Email':action.get('recipient_email'),'zohosign__ZohoSign_Document':zsDocId,'zohosign__Recipient_Order':action.get('signing_order'),'zohosign__Recipient_Type':action.get('action_type'),'zohosign__Recipient_Status':recpStatus};
  143. zoho.crm.createRecord('zohosign__ZohoSign_Recipients',recpRecordInfo);
  144. zoho.crm.createRecord('zohosign__ZohoSign_Recipients',recpRecordInfo);
  145. zoho.crm.レコードを作成('zohosign__ZohoSign_Recipients'、recpRecordInfo);
  146. }
  147. }をご覧ください。
  148. それ以外
  149. response.put('body',{'error':resp});
  150. response.put('body',{'エラー':resp});
  151. }をご覧いただき、ありがとうございます。
  152. }
  153. }をご利用ください。
  154. }をご利用ください。
  155. それ以外
  156. response.put('body',{'未完了':requestObj});
  157. }
  158. }をご覧いただきありがとうございます。
  159. それ以外
  160. response.put('body',{'リクエストステータスなし':requestObj});
  161. }
  162. }
  163. それ以外
  164. エラー情報
  165. response.put('body',{'error':'リクエストキーがありません'});
  166. }
  167. 返す {'crmAPIResponse':response}

    Zoho CRM 管理者向けトレーニング

    「導入したばかりで基本操作や設定に不安がある」、「短期間で集中的に運用開始できる状態にしたい」、「運用を開始しているが再度学び直したい」 といった課題を抱えられているユーザーさまに向けた少人数制のオンライントレーニングです。

    日々の営業活動を効率的に管理し、導入効果を高めるための方法を学びましょう。

    Zoho CRM Training



              Zoho WorkDrive Resources



                Zoho Desk Resources

                • Desk Community Learning Series


                • Digest


                • Functions


                • Meetups


                • Kbase


                • Resources


                • Glossary


                • Desk Marketplace


                • MVP Corner


                • Word of the Day









                                Resources

                                Videos

                                Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                eBooks

                                Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                Webinars

                                Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                CRM Tips

                                Make the most of Zoho CRM with these useful tips.