Position actuelle: Accueil> Derniers articles> Guide complet pour optimiser la gestion du calendrier SaceCrm avec PHP

Guide complet pour optimiser la gestion du calendrier SaceCrm avec PHP

M66 2025-06-15

Introduction à l'optimisation de la fonction de gestion du calendrier SaceCrm

SaceCrm est un système de gestion de la relation client de l'entreprise open source qui est très évolutif. Son module de gestion de calendrier joue un rôle important dans le travail de bureau quotidien, mais dans les applications réelles, la fonction par défaut ne peut souvent pas répondre pleinement aux divers besoins des utilisateurs d'entreprise. Cet article présentera comment optimiser ce module via PHP, y compris l'ajout de champs personnalisés et la mise en œuvre de mécanismes de rappel pour améliorer l'expérience et l'efficacité des utilisateurs.

Ajouter des champs personnalisés pour étendre les informations du calendrier

Par défaut, le module de calendrier de SaceCrm (réunions) enregistre uniquement les informations de base telles que les sujets et le temps. Si vous souhaitez ajouter plus de champs d'affaires, tels que les numéros d'association, les balises de notes, etc., vous pouvez le faire en ajoutant des champs personnalisés.

Voici les étapes et les exemples de code pour ajouter des champs personnalisés:

  1. Ajoutez le code suivant dans personnalisé / extension / modules / réunions / ext / vardefs / new_field.php :

 
<?php
$dictionary['Meeting']['fields']['custom_field'] = array(
    'name' => 'custom_field',
    'label' => 'Champs personnalisés',
    'vname' => 'LBL_CUSTOM_FIELD',
    'type' => 'varchar',
    'len' => '255',
    'default' => '',
    'massupdate' => 0,
    'no_default' => false,
    'comments' => '',
    'help' => '',
    'importable' => 'true',
    'required' => false,
    'reportable' => true,
    'audited' => false,
    'duplicate_merge' => 'enabled',
    'duplicate_merge_dom_value' => '1',
    'merge_filter' => 'disabled',
    'unified_search' => false,
    'calculated' => false,
    'full_text_search' => array(
        'enabled' => true,
        'boost' => 0.5,
        'searchable' => true,
    ),
);
  1. Exécutez la commande suivante pour mettre à jour les métadonnées:

 
php -f bin/sugarcrm repair
  1. Connectez-vous à l'arrière-plan SaceCrm, entrez "Gestion de la planification" dans "Gestion de mise en page", faites glisser le nouveau champ dans la vue de mise en page et commencez à l'utiliser.

Ajouter une fonction de rappel de planification personnalisée

Les rappels de planification sont une fonction clé pour améliorer l'efficacité. Bien que SuiceCrm fournit des fonctions de rappel de base, dans certains scénarios, nous pouvons avoir besoin de méthodes de contrôle plus flexibles, telles que l'envoi de différents types de notifications en fonction de la valeur du champ personnalisé.

Ce qui suit est une logique de rappel personnalisée via le mécanisme de crochet:

  1. Ajoutez le code suivant au fichier personnalisé / modules / réunions / logic_hooks.php :

 
<?php
$hook_version = 1;
$hook_array = array();
$hook_array['before_save'][] = array(
    10,
    'reminder',
    'custom/modules/Meetings/reminder.php',
    'reminder',
    'beforeSave',
);
  1. Créez un fichier personnalisé / modules / réunions / rappel.php et écrivez la logique suivante:

 
<?php
class reminder
{
    function beforeSave($bean, $event, $arguments)
    {
        $before_save_custom_field = $bean->custom_field;

        // Exemple de logique de rappel,Écrire des informations dans le fichier journal
        file_put_contents('reminder.log', $before_save_custom_field . "\n", FILE_APPEND);

        // Peut être étendu pour envoyer des e-mails en fonction des exigences、SMS, etc.
    }
}

Cette fonction sera déclenchée avant d'enregistrer le calendrier et peut être utilisée pour enregistrer des journaux ou des notifications push, etc., pour aider les membres de l'équipe à se informer des arrangements en temps opportun.

Conclusion

Grâce à la méthode ci-dessus, nous pouvons améliorer la fonction du module de gestion des calendrier de SaceCrm et répondre aux besoins commerciaux diversifiés sans modifier le système de base. L'ajout de champs et de rappels personnalisés utilisant PHP améliore non seulement la flexibilité, mais le rapproche également du flux de travail réel de l'entreprise.