CostPlanBatchOperations - Global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 4 min. de leitura
  • 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 API em vez de GlideRecord para criar vários registros de plano de custo com mais eficiência.

    Use o método CostPlanBatchOperations.add() para adicionar qualquer número de planos de custo a uma fila de 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 do lote, use o método CostPlanBatchOperations.clear().

    Para usar essa API, você deve ativar o plug-in com.snc.financial_planning_pmo.

    CostPlanBatchOperations - add(Object custoPlan)

    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 especificados. Você pode exibi-los 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 na sua instância até que o custoPlanBatchOperations.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 descrevem 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

    custoPlano.tarefa 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.
    custoPlano.recurso_tipo 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].
    custoPlano.início_período_fiscal 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].
    custoPlan.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].
    custoPlano.<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. Retorna
    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 de lote depois de 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 - processo ()

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

    Depois que os planos de custo forem processados com sucesso, a fila do plano de custo será limpa.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 6. Retorna
    Tipo Descrição
    Matriz ID do sistema 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();