SuiteCRM は、企業の顧客管理、販売自動化、マーケティング活動で広く使用されている強力なオープンソースの顧客関係管理システム (CRM) です。そのタスクリマインダー機能は、チームメンバーが時間通りに作業タスクを完了するのに効果的に役立ちます。この記事では、PHP コードを使用して SuiteCRM のタスク リマインダー機能をカスタマイズし、リマインダー メカニズムを企業の実際のニーズにより適したものにする方法を紹介します。
SuiteCRM では、タスク リマインダー機能は主にスケジュールされたタスク (Cron ジョブ) に依存します。スケジュールされたタスクは、スクリプトを定期的に実行するメカニズムであり、指定された時点でタスクを自動的にトリガーできます。 SuiteCRM 用のカスタム Cron タスクを作成することで、電子メール リマインダーやシステム通知など、パーソナライズされたタスク リマインダーを実装できます。
まず、タスクのリマインダーをトリガーする PHP スクリプトを作成する必要があります。 SuiteCRM インストール ディレクトリで次のパスを見つけます。
カスタム/モジュール/スケジューラ/_AddJobsHere.php
次のコードをファイルに追加します。
<?php
// タスクリマインダースクリプトを実行する
require_once('include/SugarQueue/SugarJobQueue.php');
$job = new SugarJobQueue();
$job-> runJob('function::your_custom_function', '', 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' => 配列(
'regex_matches' => array('5.2.*', '6.*', '7.*', '8.*', '9.*'),
)、
'acceptable_sugar_flavors' => array('PRO', 'ENT', 'ULT'),
'名前' => 'カスタムタスク',
'description' => 'これはタスクリマインダーのカスタムタスクです',
'バージョン' => '1.0.0'、
「著者」 => 「あなたの名前」、
'scheduledefs' => array(
'your_custom_task' => array(
'log_level' => 'デバッグ',
'log_frequency' => '毎日',
'モジュール' => 'スケジューラ',
'名前' => 'あなたのカスタムタスク',
'関数' => 'あなたのカスタム関数',
'allow_multiple' => true、
)、
)、
);
?>上記の構成では、 your_custom_task はカスタム タスクの名前であり、your_custom_function は前に定義した関数に対応します。
構成が完了したら、テスト用にスケジュールされたタスク スクリプトを手動で実行できます。 SuiteCRM インストール ディレクトリで次のコマンドを実行します。
php -f cron.php
正しく設定されている場合、システムはスケジュールされたタスク ルールに従ってリマインダー機能をトリガーします。
この記事で紹介する手順により、開発者はPHPベースのSuiteCRMのタスクリマインダー機能を簡単にカスタマイズできます。カスタマイズされた計画タスクとスクリプト ロジックを組み合わせることで、システムはチームの作業リズムとビジネス プロセスの自動化ニーズをより適切に満たすことができます。
公式ドキュメント: