現在の位置: ホーム> 最新記事一覧> PHP を使用して SuiteCRM タスク リマインダー機能をカスタマイズするための完全なチュートリアル

PHP を使用して SuiteCRM タスク リマインダー機能をカスタマイズするための完全なチュートリアル

M66 2025-10-29

導入

SuiteCRM は、企業の顧客管理、販売自動化、マーケティング活動で広く使用されている強力なオープンソースの顧客関係管理システム (CRM) です。そのタスクリマインダー機能は、チームメンバーが時間通りに作業タスクを完了するのに効果的に役立ちます。この記事では、PHP コードを使用して SuiteCRM のタスク リマインダー機能をカスタマイズし、リマインダー メカニズムを企業の実際のニーズにより適したものにする方法を紹介します。

タスクリマインダーの仕組みを理解する

SuiteCRM では、タスク リマインダー機能は主にスケジュールされたタスク (Cron ジョブ) に依存します。スケジュールされたタスクは、スクリプトを定期的に実行するメカニズムであり、指定された時点でタスクを自動的にトリガーできます。 SuiteCRM 用のカスタム Cron タスクを作成することで、電子メール リマインダーやシステム通知など、パーソナライズされたタスク リマインダーを実装できます。

タスクリマインダースクリプトを作成する

まず、タスクのリマインダーをトリガーする PHP スクリプトを作成する必要があります。 SuiteCRM インストール ディレクトリで次のパスを見つけます。

カスタム/モジュール/スケジューラ/_AddJobsHere.php

次のコードをファイルに追加します。

<?php
// タスクリマインダースクリプトを実行する
require_once('include/SugarQueue/SugarJobQueue.php');
$job = new SugarJobQueue();
$job-> runJob(&#39;function::your_custom_function&#39;, &#39;&#39;, true);
?>

ここで、 your_custom_functionはカスタム関数の名前であり、実際の関数に従って名前を付けることができます。

カスタムタスクリマインダー機能を定義する

次に、タスクリマインダーの特定のロジックを定義する必要があります。 SuiteCRM インストール ディレクトリで次のファイルを作成または編集します。

カスタム/モジュール/スケジューラ/ジョブ/SchedulersJob.your_custom_function.php

次のコードを追加します。

<?php
class SchedulersJobyour_custom_function extends SchedulersJob
{
    public function run($job)
    {
        $db = DBManagerFactory::getInstance();
        // タスクリマインダーに関連するタスクを実行する,たとえば、電子メールを送信したり、システム リマインダーを生成したりします。
        // ...
        $job->成功ジョブ();
    }
}
?>

この機能では、担当者にリマインドメールを送信したり、CRM上に通知メッセージを作成したりするリマインドロジックを自由に記述することができます。

スケジュールされたタスクを構成する

スクリプトと関数の定義が完了したら、システムがリマインダー スクリプトを定期的に実行できるように、SuiteCRM でスケジュールされたタスクを構成する必要があります。次のファイルを作成または編集します。

カスタム/Extension/modules/Schedulers/Ext/ScheduledTasks/your_custom_task.php

以下を追加します。

<?php
$manifest = array(
    'acceptable_sugar_versions' => 配列(
        &#39;regex_matches&#39; => array(&#39;5.2.*&#39;, &#39;6.*&#39;, &#39;7.*&#39;, &#39;8.*&#39;, &#39;9.*&#39;),
    )、
    &#39;acceptable_sugar_flavors&#39; => array(&#39;PRO&#39;, &#39;ENT&#39;, &#39;ULT&#39;),
    &#39;名前&#39; => &#39;カスタムタスク&#39;,
    &#39;description&#39; => &#39;これはタスクリマインダーのカスタムタスクです&#39;,
    &#39;バージョン&#39; => &#39;1.0.0&#39;、
    「著者」 => 「あなたの名前」、
    &#39;scheduledefs&#39; => array(
        &#39;your_custom_task&#39; => array(
            &#39;log_level&#39; => &#39;デバッグ&#39;,
            &#39;log_frequency&#39; => &#39;毎日&#39;,
            &#39;モジュール&#39; => &#39;スケジューラ&#39;,
            &#39;名前&#39; => &#39;あなたのカスタムタスク&#39;,
            &#39;関数&#39; => &#39;あなたのカスタム関数&#39;,
            &#39;allow_multiple&#39; => true、
        )、
    )、
);
?>

上記の構成では、 your_custom_task はカスタム タスクの名前であり、your_custom_function は前に定義した関数に対応します。

タスクリマインダーテストを実行する

構成が完了したら、テスト用にスケジュールされたタスク スクリプトを手動で実行できます。 SuiteCRM インストール ディレクトリで次のコマンドを実行します。

 php -f cron.php

正しく設定されている場合、システムはスケジュールされたタスク ルールに従ってリマインダー機能をトリガーします。

結論

この記事で紹介する手順により、開発者はPHPベースのSuiteCRMのタスクリマインダー機能を簡単にカスタマイズできます。カスタマイズされた計画タスクとスクリプト ロジックを組み合わせることで、システムはチームの作業リズムとビジネス プロセスの自動化ニーズをより適切に満たすことができます。

参考文献

公式ドキュメント: