SuiceCrm est un puissant système de gestion de la relation client open source (CRM) qui est largement utilisé dans toutes sortes d'entreprises. Parmi eux, le module de gestion des calendriers est utilisé pour organiser des réunions, rappeler les questions et autres tâches, et est un outil important pour le travail quotidien des utilisateurs. Cependant, les fonctions fournies par SATECRM par défaut peuvent ne pas répondre pleinement aux besoins de l'entreprise, nous pouvons donc utiliser PHP pour nous développer pour réaliser une méthode de gestion plus adaptée aux scénarios d'entreprise.
Par défaut, le module "Schedule Management" de SaceCRM ne peut enregistrer que des informations de base, telles que les sujets de rencontre, les heures de démarrage et de fin, etc. Si nous voulons ajouter plus de champs liés aux entreprises (tels que le codage client, l'emplacement des réunions, la personne en charge, etc.), nous pouvons l'agrandir en ajoutant des champs personnalisés.
Voici un exemple de code pour ajouter des champs personnalisés dans le module "Meetings":
<?php $dictionary['Meeting']['fields']['custom_field'] = array( 'name' => 'Custom_field', 'label' => 'champ personnalisé', 'vname' => 'lbl_custom_field', 'type' => 'varchar', 'Len' => '255', 'par défaut' => '', 'massupdate' => 0, 'no_default' => false, 'commentaires' => '', 'help' => '', 'Importable' => 'true', 'requis' => false, 'signalable' => true, 'audité' => false, 'Duplicate_merge' => 'Disabled', 'duplicate_merge_dom_value' => '0', 'Merge_Filter' => 'Disabled', 'unifie_search' => false, 'calculé' => false, )); $ dictionary ['Meeting'] ['Fields'] ['Custom_field'] ['full_text_search'] = array ( 'activé' => true, 'boost' => 0,5, 'consultable' => true, )); $ dictionary ['Meeting'] ['Fields'] ['Custom_field'] ['DUPLICATE_MERGE'] = 'ENabled'; $ dictionary ['Meeting'] ['Fields'] ['Custom_field'] ['DUPLICATE_MERGE_DOM_VALUE'] = '1'; $ dictionary ['Meeting'] ['Fields'] ['Custom_field'] ['calculé'] = false; $ Dictionary ['Meeting'] ['Fields'] ['Custom_field'] ['requis'] = false; $ dictionary ['Meeting'] ['champs'] ['Custom_field'] ['Audité'] = false;
Une fois le champ ajouté, exécutez la commande suivante pour effectuer la réparation du système:
PHP -f Bin / SugarCrm Repair
Ensuite, dans la "gestion de la disposition" de l'arrière-plan SATISECRM, faites glisser les nouveaux champs dans la position appropriée.
Pour améliorer l'expérience des utilisateurs et l'efficacité du travail, nous pouvons également ajouter une logique de rappel personnalisée en fonction du mécanisme de crochet logique de SatureCrm. Voici les étapes de base pour implémenter la fonction de rappel.
Tout d'abord, enregistrez la logique de rappel dans le fichier logic_hooks.php du module:
<?php $hook_version = 1; $hook_array = array(); $hook_array['before_save'] = array(); $hook_array['before_save'][] = array( 10, 'reminder', 'custom/modules/Meetings/reminder.php', 'reminder', 'beforeSave', );
Ensuite, créez le fichier rappel.php dans le répertoire spécifié et ajoutez la logique suivante:
<?php class reminder { function beforeSave($bean, $event, $arguments) { $before_save_custom_field = $bean-> custom_field; // Étendez en fonction des exigences réelles, ici n'impriment que des exemples pour logs file_put_contents ('reminder.log', $ avant_save_custom_field. "\ N", file_append); } }
De cette façon, chaque fois que l'utilisateur enregistre l'enregistrement de la réunion, le système déclenchera automatiquement la logique de rappel en fonction de la logique métier définie. Vous pouvez également combiner des API tierces telles que les interfaces e-mail ou SMS pour étendre davantage la fonction de rappel.
En ajoutant des champs personnalisés et en écrivant des fonctions de crochet logique, les fonctions de gestion des calendriers de SatureCrm peuvent être plus flexibles et puissantes. Cela aide non seulement les entreprises à réaliser un enregistrement d'informations plus précis, mais jette également les bases de l'amarrage futur des systèmes automatisés de bureaux et de rappel intelligents.