懸念事項
Zoho CRM のユーザーがクライアントスクリプトを利用する際、ZDK(Zoho Development Kit)レベルでスクリプトが失敗し、CRM のタブからデータを取得できないという一般的な問題が発生することがあります。
このような場合、ユーザーは自分でどのような対処ができるのか疑問に思われることが多いでしょう。本記事では、ユーザー側でお試しいただけるいくつかのトラブルシューティング手順と、その結果の確認方法をご紹介します。
本記事の目的は、発生しうるシナリオを詳しく説明し、この問題をトラブルシューティングするうえでお客様側で実施していただく必要がある手順を周知するとともに、弊社側でさらなるデバッグを行うために Zoho が必要とする情報についてご案内することです。
ログ/コンソールでよく見られるエラー
クライアントスクリプトを実行した際、ユーザーは次のいずれかのエラーに直面する場合があります。
-
Unable to recognise any タブ(例:見込み客)
-
Undefined is not an object(evaluation '(await(await ZDK.Apps).CRM).Contacts')
-
ZDK.Apps.CRM: undefined
-
ユーザーが ZDK.Apps.CRM. と入力しても、CRM のタブが一覧表示されない
コード例
-
var 見込み客 = ZDK.Apps.CRM.Accounts.fetch();
-
見込み客[0].Last_Name;
上記の1行目では ZDK メソッドを使用していますが、ここで前述のいずれかのエラーが発生し、スクリプト全体のロジックが完全に失敗してしまう場合があります。
トラブルシューティングガイド
上記のエラーをユーザー側で解消するために、以下のトラブルシューティング手順をお試しください。
方法1:レイアウトにダミー項目を追加する
ユーザーに対して、いずれかのタブのレイアウトにダミー項目を追加して保存していただくよう依頼します。この操作により、バックエンドの ZDK が再生成され、その場で問題が解消される場合があります。
-> ユーザーは Zoho CRM で任意のタブ(例:連絡先)-> レイアウト に移動し、ダミー項目(例:1行テキスト)を追加してから、レイアウトを保存します。
移動先:Zoho CRM の[設定](⚙️) >> [カスタマイズ] >> [タブと項目] >> [タブ] >> [レイアウト]
-> 項目を追加して保存したら、ブラウザー画面でハードリフレッシュを実行し、クライアントスクリプトが正常に動作するか確認してください。
方法2:任意の項目の API 名を変更する
ユーザーに対して、タブ(例:連絡先)内の、主に使用していない任意の項目の API 名を一時的に変更していただくよう依頼します。この操作でもバックエンド側のコードが再生成され、ユーザー側で即座に問題が解消される可能性があります。
移動先:Zoho CRM の[設定](⚙️) >> [Developer Hub] >> [APIs and SDKs] >> [API Names] >> [タブ] >> API 名を変更
上記の手順が完了したら、ブラウザー画面でハードリフレッシュを実行し、クライアントスクリプトが正常に動作するか確認してください。
将来的に Zoho との連携やサードパーティサービスとの連携、その他 API ベースの連携に支障が出ないよう、タブ/項目の API 名は、作業後に必ず元の名前へ戻すことを強く推奨します。
パートナーの皆さまにご提供いただきたい情報
上記の方法を実施しても問題が解消しない場合は、ログを用いて弊社バックエンド側で原因を詳細に確認する必要があります。そのため、以下の情報をご提供いただけますようお願いいたします。
以下の質問は、必ずすべてご回答ください。
1. ユーザーの CRM 組織 ID とメールアドレスをご共有ください。弊社バックエンド側で詳細を確認いたします。
2. 以下を入力し、CRM のタブが表示されるかご確認ください。表示された場合は、該当タブを選択し、構文どおりに行を完成させたうえで、スクリプトが動作するか確認してください。 その結果もあわせて共有してください。
入力手順:ZDK. と入力 > Apps を選択 > CRM を選択 > CRM のタブが一覧表示されるか確認
3. スクリプトを実行して問題を再現し、その際のブラウザーコンソールログが分かるようにした短い録画を共有してください。
ブラウザーコンソールログの確認方法:画面上で右クリック ->[検証]をクリック ->[Console]タブと[Network]タブを選択し、エラーが出ていないか確認します。 画面全体が分かるように録画してください。.
4. スクリプト全体をテキストファイルとして共有し、どのように利用しているかを詳細にご説明ください。
5. クライアントスクリプトの設定内容が分かるスクリーンショット(タブ、イベント、イベントタイプが分かるもの)を共有してください。弊社での理解がスムーズになります。
6. 報告されている問題がいつ頃から発生しているかを教えてください。おおよその日時でも構いません。バックエンドのログを確認する際の参考になります。
7. Zoho CRM 内で最近行った設定変更や更新(例:選択リスト項目の追加、新しい選択肢の追加、特殊文字を含む項目の追加 など)がないか、社内でご確認ください。