CostPlanBatchOperations : global

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 4 minutes de lecture
  • Fournit des méthodes qui permettent la création d’un grand nombre d’enregistrements de plan de coût pour les demandes et les projets à l’aide du traitement par lots. Utilisez cette API au lieu de GlideRecord pour créer plus efficacement plusieurs enregistrements de plan de coûts.

    Utilisez la méthode CostPlanBatchOperations.add() pour ajouter n’importe quel nombre de plans de coûts à une file d’attente de lots. Une fois que vous avez ajouté tous les plans de coûts requis, utilisez la méthode CostPlanBatchOperations.process() pour créer/insérer réellement les plans de coûts dans votre instance. Jusqu’à ce que vous appeliez la méthode CostPlanBatchOperations.process(), les demandes d’ajout restent dans la file d’attente par lots (elles ne sont pas encore ajoutées à votre instance). Si, pour une raison quelconque, vous devez supprimer tous les plans de coûts dans la file d’attente par lots, utilisez la méthode CostPlanBatchOperations.clear().

    Pour utiliser cette API, vous devez activer le module d’extension com.snc.financial_planning_pmo.

    CostPlanBatchOperations : add(Object costPlan)

    Ajoute un ou plusieurs plans de coûts à une tâche spécifiée (projet ou demande). Utilisez cette méthode lorsque vous souhaitez créer plusieurs plans de coûts.

    Une fois traités, les plans de coûts sont insérés dans le projet ou la demande spécifié(e). Vous pouvez ensuite les afficher et les modifier au sein de votre instance. Pour plus d’informations, consultez Créer un plan de coût de projet et Créer un plan de coût de demande.
    Remarque :
    Cette méthode définit uniquement les plans de coûts à ajouter à votre instance. Les plans de coûts ne sont pas insérés dans votre instance tant que costPlanBatchOperations.process() n’est pas appelé.
    Tableau 1. Paramètres
    Nom Type Description
    plan de coût Objet Un ou plusieurs objets ou tableau d’objets décrivant chacun des plans de coûts à ajouter à une tâche existante.
    costPlan.name Chaîne Nom du plan de coût.

    Longueur maximale : 130 caractères

    costPlan.task Chaîne Sys_id du projet ou de la demande à associer à ce plan de coûts. Vous pouvez rechercher cette valeur dans l’une des tables suivantes :
    • Projet [pm_project]
    • Tâche de projet [pm_project_task]
    • Demande [dmn_demand]
    costPlan.unit_cost Numéro Coût d’une seule unité de la ressource spécifiée.
    costPlan.resource_type Chaîne Sys_id de l’enregistrement qui définit le type de coût associé à ce plan de coût. Les valeurs disponibles pour ce paramètre sont définies dans la table Définition du type de coût [resource_type_definition].
    costPlan.start_fiscal_period Chaîne Sys_id de l’enregistrement qui définit la période fiscale de début à associer à ce plan de coût. Les valeurs disponibles pour ce paramètre sont définies dans la table Période fiscale [fiscal_period].
    costPlan.end_fiscal_period Chaîne Sys_id de l’enregistrement qui définit la période fiscale de fin à associer à ce plan de coût. Les valeurs disponibles pour ce paramètre sont définies dans la table Période fiscale [fiscal_period].
    costPlan.<facultatif> Varié Facultatif. Vous pouvez transmettre des paramètres supplémentaires à ajouter à un plan de coût. Les paramètres disponibles dépendent du type de plan de coût que vous créez.

    Reportez-vous à la table Plan de coût [cost_plan] pour connaître la liste des paramètres supplémentaires que vous pouvez transmettre.

    Tableau 2. Renvoie
    Type Description
    nul

    Cet exemple montre comment ajouter un plan de coût par lots simple.

    //Define Array of Cost Plan records in JSON format
    var costPlanRecords= [];
    costPlanRecords.push({
       name:'Capital Expense',
       task:'f7a36d1bdb58001025c85a35dc96193a', // sys_id of the task
       unit_cost:1000.00, //decimal 
       resource_type:'a546eaf79330120064f572edb67ffb70', // sys_id of the cost type definition
       start_fiscal_period:'091b6e60cb111200f2de77a4634c9c2e', // sys_id of the start fiscal period record 
       end_fiscal_period:'0d1b6e60cb111200f2de77a4634c9c2f',// sys_id of the end fiscal period record 
       quantity:1 // Optional cost plan record attributes
    });
     
    var costPlanBatchOperations = new CostPlanBatchOperations();
    costPlanBatchOperations.add(costPlanRecords);
    var costPlanSysIds = costPlanBatchOperations.process();
    
    

    CostPlanBatchOperations : clear()

    Supprime tous les objets de plan de coût qui ont été ajoutés à l’aide de la méthode CostPlanBatchOperations.add().

    Remarque :
    Cette méthode ne fonctionne que pour les plans de coûts qui ont été ajoutés. Une fois qu’un plan de coûts est traité, cette méthode ne peut pas le supprimer. Les plans de coûts traités doivent être supprimés manuellement via l’interface utilisateur.
    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    nul

    Cet exemple montre comment effacer la file d’attente par lots après l’ajout de plans de coûts.

    //Define Array of Cost Plan records in JSON format
    var costPlanRecords= [];
    costPlanRecords.push({
       name:'Capital Expense',
       task:'f7a36d1bdb58001025c85a35dc96193a', // sys_id of the task
       unit_cost:1000.00, //decimal 
       resource_type:'a546eaf79330120064f572edb67ffb70', // sys_id of the cost type definition
       start_fiscal_period:'091b6e60cb111200f2de77a4634c9c2e', // sys_id of the start fiscal period record 
       end_fiscal_period:'0d1b6e60cb111200f2de77a4634c9c2f',// sys_id of the end fiscal period record 
       quantity:1 // Optional cost plan record attributes
    });
     
    var costPlanBatchOperations = new CostPlanBatchOperations();
    costPlanBatchOperations.add(costPlanRecords);
    var costPlanSysIds = costPlanBatchOperations.process();
    costPlanBatchOperations.clear();

    CostPlanBatchOperations : process()

    Traite tous les plans de coûts qui ont été ajoutés à l’aide de la méthode CostPlanBatchOperations.add() et crée les plans de coûts correspondants et les déploiements pertinents.

    Une fois les plans de coûts traités avec succès, la file d’attente des plans de coûts est effacée.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    Tableau ID système pour chaque plan de coûts généré.

    Cet exemple montre comment traiter un plan de coût par lots simple.

    //Define Array of Cost Plan records in JSON format
    var costPlanRecords= [];
    costPlanRecords.push({
       name:'Capital Expense',
       task:'f7a36d1bdb58001025c85a35dc96193a', // sys_id of the task
       unit_cost:1000.00, //decimal 
       resource_type:'a546eaf79330120064f572edb67ffb70', // sys_id of the cost type definition
       start_fiscal_period:'091b6e60cb111200f2de77a4634c9c2e', // sys_id of the start fiscal period record 
       end_fiscal_period:'0d1b6e60cb111200f2de77a4634c9c2f',// sys_id of the end fiscal period record 
       quantity:1 // Optional cost plan record attributes
    });
     
    var costPlanBatchOperations = new CostPlanBatchOperations();
    costPlanBatchOperations.add(costPlanRecords);
    var costPlanSysIds = costPlanBatchOperations.process();