CostPlanBatchOperations – Global
Stellt Methoden bereit, mit denen die Erstellung einer großen Anzahl von Kostenplandatensätzen für Bedarfe und Projekte mithilfe der Stapelverarbeitung ermöglicht wird. Verwenden Sie diese API anstelle von GlideRecord, um mehrere Kostenplandatensätze effizienter zu erstellen.
Verwenden Sie die Methode CostPlanBatchOperations.add(), um einer Batch-Warteschlange eine beliebige Anzahl von Kostenplänen hinzuzufügen. Nachdem Sie alle erforderlichen Kostenpläne hinzugefügt haben, verwenden Sie die Methode CostPlanBatchOperations.process(), um die Kostenpläne tatsächlich in Ihrer Instanz zu erstellen/einzufügen. Bis Sie die Methode CostPlanBatchOperations.process() aufrufen, verbleiben die Hinzufügungsanforderungen in der Batch-Warteschlange (sie wurden Ihrer Instanz noch nicht hinzugefügt). Wenn Sie aus irgendeinem Grund alle Kostenpläne in der Batch-Warteschlange entfernen müssen, verwenden Sie die Methode CostPlanBatchOperations.clear().
Um diese API zu verwenden, müssen Sie das Plugin „com.snc.financial_planning_pmo“ aktivieren.
CostPlanBatchOperations – add(Object costPlan)
Fügt einer angegebenen Aufgabe (Projekt oder Bedarf) einen oder mehrere Kostenpläne hinzu. Verwenden Sie diese Methode, wenn Sie mehrere Kostenpläne erstellen möchten.
| Name | Typ | Beschreibung |
|---|---|---|
| costPlan | Objekt | Ein oder mehrere Objekte oder ein Array von Objekten, die jeden der Kostenpläne beschreiben, die einer vorhandenen Aufgabe hinzugefügt werden sollen. |
| costPlan.name | Zeichenfolge | Name des Kostenplans. Maximale Länge: 130 Zeichen |
| costPlan.task | Zeichenfolge | Sys_id des Projekts oder Bedarfs, das diesem Kostenplan zugeordnet werden soll. Sie können diesen Wert in einer der folgenden Tabellen suchen:
|
| costPlan.unit_cost | Nummer | Kosten einer einzelnen Einheit der angegebenen Ressource. |
| costPlan.resource_type | Zeichenfolge | Sys_id des Datensatzes, der den mit diesem Kostenplan verknüpften Kostentyp definiert. Die verfügbaren Werte für diesen Parameter sind in der Tabelle „Kostenartdefinition“ [resource_type_definition] definiert. |
| costPlan.start_fiscal_period | Zeichenfolge | Sys_id des Datensatzes, der die erste Geschäftsperiode definiert, die diesem Kostenplan zugeordnet werden soll. Die verfügbaren Werte für diesen Parameter sind in der Tabelle „Geschäftsperiode“ [fiscal_period] definiert. |
| costPlan.end_fiscal_period | Zeichenfolge | Sys_id des Datensatzes, der die letzte Geschäftsperiode definiert, die diesem Kostenplan zugeordnet werden soll. Die verfügbaren Werte für diesen Parameter sind in der Tabelle „Geschäftsperiode“ [fiscal_period] definiert. |
| costPlan.<optional> | Variiert | Optional. Sie können zusätzliche Parameter übergeben, um sie einem Kostenplan hinzuzufügen. Die verfügbaren Parameter hängen vom Typ des Kostenplans ab, den Sie erstellen. In der Tabelle „Kostenplan“ [cost_plan] finden Sie eine Liste der zusätzlichen Parameter, die Sie übergeben können. |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie ein einfacher Kosten-Batch-Plan hinzugefügt wird.
//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()
Entfernt alle Kostenplanobjekte, die mit der Methode CostPlanBatchOperations.add() hinzugefügt wurden.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie die Batch-Warteschlange nach dem Hinzufügen von Kostenplänen geleert wird.
//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()
Verarbeitet alle Kostenpläne, die mit der Methode CostPlanBatchOperations.add() hinzugefügt wurden, und erstellt entsprechende Kostenpläne und relevante Rollups.
Sobald die Kostenpläne erfolgreich verarbeitet wurden, wird die Kostenplanwarteschlange geleert.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Array | Sys-ID für jeden generierten Kostenplan. |
Dieses Beispiel zeigt, wie ein einfacher Batch-Kostenplan verarbeitet wird.
//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();