地方の中小企業におけるIT導入や活用コンサルティングを提供する株式会社etika(エティカ)CRMサポートセンターです!

今回はZohoサービスと連携したオンラインのスクリプト言語「Deluge(デリュージ)」についてご説明します。

Delugeの悩み

まず、多くのZoho日本人ユーザーはDelugeに関して2つの問題点を抱えています。

Delugeに関する公式の情報が少ない

Delugeに関する公式の情報は、英語で提供されており、日本語での情報は限られています。このため、Delugeの正しい使い方を学ぶことが難しい場合があります。本記事では、英語の公式情報を日本語に翻訳し、Delugeの基本的な構文や使用方法について解説します。

検索してもZoho CRMでの使い方についての情報が少ない

Delugeは、Zoho CRMの機能を拡張するためのプログラミング言語ですが、検索してもZoho CRMでの使い方についての情報が少ない場合があります。本記事では、Zoho CRMでDelugeを使用する方法について詳しく説明します。

無料相談

Delugeでの自動化に踏み出したいけれど自信がない、そんなときはプロにご相談ください。

Zoho開発・自動化を無料で相談する

Delugeと問題点

Zoho内のあらゆるサービス内で使用できるプログラミング言語であり、主にビジネスプロセスを自動化するために使用されるDelugeですが、簡単に学習できるというわけではありません。

Delugeは、プログラミングの基礎知識があることが前提であり、Delugeの癖や考え方を理解する必要があります。また、Zohoの各アプリケーションに関する知識・デバッグ、テスト、エラー処理などについても理解する必要があります。

では、どうして難しいDelugeをわざわざ使う必要があるかについて説明します。

デフォルト機能だとできない”実務寄り”の実装が出来る

デフォルトの機能だけでは、実際の業務フローやビジネスプロセス上で柔軟に対応ができないケースが発生する可能性があります。例を見ていきましょう。

サンプルケース:データ操作の自動化

ZohoCRMの顧客情報や商談情報などのデータを効率的に操作するために、Delugeを使用することがありますが既存の機能では、一括で複数のレコードを操作することができないしたり複雑な条件やルールを設定することができません。そのため、Delugeを使用することで、自動化に必要な複雑な条件やルールを設定し、データ操作を自動化することができます。

例えばワークフロールールを使うことで、異なるタブにレコードを生成することが可能になりますが、デフォルト機能では1タブかつ1レコードしか生成できません。

また、自動化機能はワークフロールールやスケジュール処理をすることである程度のことはできるのですが、Zohoの仕様によって業務フロー上ではそのまま使えない事態も起こりえます。

例えば見積書のステージが特定の値(例:受注済みなど)になった時に請求書の下書きを作っておきたい…といったことがデフォルトの機能だと実現できません。

Delugeで何ができるのか

Delugeを使用すると、次のようなことができます。

・レコードの作成、更新、削除などのデータ操作

・レポートの作成、更新、削除などのビジネスプロセスの自動化

・メールやSMSの送信、外部APIの呼び出し、Webhookの受信などの通知機能

・ループ、条件分岐、関数の作成などの高度なプログラミング機能

これらの機能を自動化して、Zoho CRM内のビジネスプロセスをより円滑にすることができます。

Delugeの使い方の基本

Delugeスクリプトの基本構文は、次のようになります。

事前に関数の画面上部にある『Edit Arguments』から以下のように設定します。

// ※事前にEditAugumentsで変数を定義します
// 請求書情報を取得する
invoice = zoho.crm.getRecordById("Invoices", invoice_id);

// 請求書情報を表示する
info invoice;

上記コードをコピーペーストして、右上の『保存して実行する』をクリックするとinvoice_idを入れるように求められます。

実際にCRMに戻り請求書の詳細画面を選択したときのURLの末尾がIDとなります。動作確認のために1レコード選択し、先ほどの画面にペーストして『save』をクリックします。

// ※事前にEditAugumentsで変数を定義します
// 請求書情報を取得する
invoice = zoho.crm.getRecordById("Invoices", invoice_id);

// 請求書情報を表示する
info invoice.get("id");

そうするとJSON形式で請求書の情報が取得できます。

このままだと使えないため、取得するデータを絞ります。以下のようにコードを変更します。

そうすると、JSON中の『id』というキーを持つ値のみを抽出することができます。

この抽出した値を持つ変数を代入することで新しいレコードを生成するのに使ったり、更新するのに使ったりすることができる、といったイメージです。

他にもDelugeスクリプトは、コメント、変数、IF文、FORループ、関数の定義と呼び出し、などの構文を持ちます。また、Delugeには、豊富なライブラリが用意されており、レコードの作成、更新、削除などのデータ操作を行うことができます。

次のステップ:Delugeの実装例

本記事ではDelugeにふれる手順についてまとめました。ここから先は、実際の業務で書いたコードを解説した記事があります。目的に近いものからお読みください。

知識ゼロからDeluge関数でタスクの自動生成を設定してみた — 商談のステージ変更をトリガーにタスクを自動生成する、最初の実装例です。

知識ゼロからDeluge関数で見積書データの自動生成を設定してみた — 本記事で触れた「見積書から請求書を作る」に近い、複数タブをまたぐ処理の実装例です。

Zoho CRMで議事録メモから商談情報を自動更新する|Delugeカスタム関数の実装例 — AIと組み合わせて、テキストから項目を抽出・更新する応用例です。

Zoho Delugeで改行分割できない時の対処法|toListの落とし穴とbase64改行 — 実際に詰まったハマりどころと回避方法をまとめています。

過去のZOHO CRM機能紹介記事は下記よりご確認ください。

Zoho CRMのブループリント機能の使い方についてZOHO CRMとコールコネクト(ブラウザ電話システム)を連携してインサイドセールス業務を効率化!ZOHO Campaignsを使用した自動メール送信の設定について展示会やイベントでの名刺交換時のお礼メール送信を自動化をZOHO CRMで実装してみた

ZOHO CRMを最大限活用するならご相談を!

Zoho CRMは他にも作業を自動化するための機能がたくさんあります。ただ、多機能に渡るが故に学習コストは膨大にかかってしまいます。

そこで一度コンサルティングパートナーにご相談いただくのが一番です。弊社はZoho CRMの機能についても実績豊富に対応しております。

CRMサポートセンターのZohoCRMの導入支援内容を是非御覧ください。

せっかく導入したツールの効果を最大化するために、貴社のご支援ができれば嬉しいです。

まずは無料相談からお気軽にご連絡ください。

無料相談

Delugeを使った業務自動化の実装は、経験豊富な認定パートナーにお任せいただけます。

Deluge開発を無料相談

よくある質問

Deluge(デリュージ)とは何ですか?

Zoho内のあらゆるサービスで使用できるオンラインのスクリプト言語です。Zoho CRMをはじめとするZohoサービスに組み込まれており、業務フローやビジネスプロセスを自動化するために使われます。Zoho CRMの機能を標準の範囲を超えて拡張する役割を担います。

Delugeを使うと何ができますか?

主に次の4つです。(1)レコードの作成・更新・削除などのデータ操作、(2)レポートの作成・更新・削除といったビジネスプロセスの自動化、(3)メールやSMSの送信・外部APIの呼び出し・Webhookの受信などの通知機能、(4)ループ・条件分岐・関数の作成などの高度なプログラミング処理。これらを組み合わせてCRM内の業務を自動化できます。

ワークフロールールなどの標準機能では足りないのですか?

標準機能だけでは対応しきれないケースがあります。たとえば複数レコードの一括操作ができない複雑な条件やルールを設定できないといった制約です。ワークフロールールで別タブにレコードを生成することはできますが、生成できるのは1タブ・1レコードのみ。また、見積書のステージが受注済みになったら請求書の下書きを作る、といった処理も標準機能では実現できません。

Delugeは初心者でも習得できますか?

簡単に学習できるというわけではありません。プログラミングの基礎知識があることが前提で、Deluge特有の癖や考え方を理解する必要があります。加えて、Zoho各アプリケーションに関する知識や、デバッグ・テスト・エラー処理についての理解も求められます。まずは1レコードを取得して中身を表示する、といった小さな動作確認から始めるのが現実的です。

Delugeの最初のスクリプトはどう書けばよいですか?

まず関数画面上部のEdit Argumentsで変数(例:invoice_id)を定義します。次に `zoho.crm.getRecordById` にモジュール名(Invoices)とIDを渡してレコードを取得し、`info` で内容を表示します。保存して実行をクリックすると引数の入力を求められるので、CRMの請求書詳細画面のURL末尾にあるIDを貼り付けて実行します。JSON形式で取得できたら、`invoice.get` で必要なキーだけを絞り込み、その値を新しいレコードの生成や更新に使います。

Delugeの実装は自社でやるべきか、外部に依頼すべきか?

Zoho CRMには自動化のための機能が数多くありますが、多機能であるがゆえに学習コストは膨大になります。社内に十分なリソースや知見がない場合は、コンサルティングパートナーへの相談が有効です。当社もZoho CRMの機能実装について実績豊富に対応しており、まずは無料相談からご利用いただけます。