CostPlanBatchOperations - Global

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 4 min. de leitura
  • A inclusão de script CostPlanBatchOperations fornece métodos que permitem a criação de um grande número de registros de plano de custo para demandas e projetos usando o processamento em lote. Use esta inclusão de script em vez de GlideRecord para criar com mais eficiência vários registros de plano de custo.

    Use o método CostPlanBatchOperations.add() para adicionar qualquer número de planos de custo a uma fila em lote. Depois de adicionar todos os planos de custo necessários, use o método CostPlanBatchOperations.process() para criar/inserir os planos de custo em sua instância. Até que você chame o método CostPlanBatchOperations.process(), as solicitações de adição permanecerão na fila do lote (elas ainda não foram adicionadas à sua instância). Se, por algum motivo, você precisar remover todos os planos de custo da fila em lote, use o método CostPlanBatchOperations.clear().

    Para usar esta inclusão de script, você deve ativar o plug-in PPM Standard (com.snc.financial_planning_pmo).

    CostPlanBatchOperations - add(Object costPlan)

    Adiciona um ou mais planos de custo a uma tarefa especificada (projeto ou demanda). Use este método quando quiser criar vários planos de custo.

    Depois de processados, os planos de custo são inseridos no projeto ou na demanda especificada. Você pode exibir e modificá-los em sua instância. Para obter informações adicionais, consulte Criar um plano de custo de projeto e Criar um plano de custo de demanda.
    Nota:
    Este método define somente os planos de custo a serem adicionados à sua instância. Os planos de custo não são inseridos em sua instância até que costPlanBatchOperations.process() seja chamado.
    Tabela 1. Parâmetros
    Nome Tipo Descrição
    plano de custo Objeto Um ou mais objetos ou uma matriz de objetos que descreve cada um dos planos de custo a serem adicionados a uma tarefa existente.
    costPlan.name Cadeia de caracteres Nome do plano de custo.

    Tamanho máximo: 130 caracteres

    costPlan.task Cadeia de caracteres Sys_id do projeto ou demanda a ser associado a este plano de custo. Você pode localizar este valor em uma das seguintes tabelas:
    • Projeto [projeto_pm]
    • Tarefa do projeto [tarefa_projeto_pm]
    • Demanda [dmn_demand]
    custoPlano.unit_cost Número Custo de uma única unidade do recurso especificado.
    costPlan.resource_type Cadeia de caracteres Sys_id do registro que define o tipo de custo associado a este plano de custo. Os valores disponíveis para este parâmetro são definidos na tabela Definição de tipo de custo [resource_type_definition].
    costPlan.start_fiscal_period Cadeia de caracteres Sys_id do registro que define o período fiscal inicial a ser associado a este plano de custo. Os valores disponíveis para este parâmetro são definidos na tabela Período fiscal [fiscal_period].
    costPlan.end_fiscal_period Cadeia de caracteres Sys_id do registro que define o período fiscal final a ser associado a este plano de custo. Os valores disponíveis para este parâmetro são definidos na tabela Período fiscal [fiscal_period].
    costPlan.<optional> Variado Opcional. Você pode passar parâmetros adicionais para adicionar a um plano de custo. Os parâmetros disponíveis dependem do tipo de plano de custo que você está criando.

    Consulte a tabela Plano de custo [cost_plan] para obter a lista de parâmetros adicionais que você pode passar.

    Tabela 2. Retornos
    Tipo Descrição
    vazio

    Este exemplo mostra como adicionar um plano de custo em lote simples.

    //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 - limpar ()

    Remove todos os objetos de plano de custo que foram adicionados usando o método CostPlanBatchOperations.add().

    Nota:
    Este método funciona somente para planos de custo que foram adicionados. Depois que um plano de custo é processado, este método não pode removê-lo. Os planos de custo processados devem ser removidos manualmente por meio da IU.
    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    vazio

    Este exemplo mostra como limpar a fila em lote após adicionar planos de custo.

    //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()

    Processa todos os planos de custo que foram adicionados usando o método CostPlanBatchOperations.add() e cria planos de custo correspondentes e rollups relevantes.

    Depois que os planos de custo são processados com sucesso, a fila do plano de custo é limpa.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 6. Retorna
    Tipo Descrição
    Matriz SYS ID para cada plano de custo gerado.

    Este exemplo mostra como processar um plano de custo em lote simples.

    //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();