PUT /ws/rest/service/v1/cashflow/{project_number}
Purpose:
Update cashflow properties data. Can be used to add new curves to cash flow.
Input:
All parameters should be URL encoded.
Specify only the data that needs to be updated. Use the response from get cashflow properties service "GET /ws/rest/service/v1/cashflow/{project_number}" to create the update request.
Cashflow curves will be updated based on the cashflow id.
If the attribute is not provided then the value will not be updated.
If the attribute is provided with value then validation will be performed and the value will be updated.
When the attribute is provided and the value is empty, then the value will be deleted.
To delete a profile from profile list of CBS or Summary CBS , provide empty default profile, as below.
Irrelevant attributes specified in the request for create/update are ignored.
Deletion of Profile
"distribution": {
"type": "auto_profile",
"cbs": [
{
"cbs_code": "t30001~~t30002",
"bitemid": 242,
"item": "T30002",
"default_profile": ""
}
]
}
To delete a change commit BP list, specify "action" attribute with value as "delete", as given below:
Deletion of Commit BP
"commit_change_processes": [
{
"bp_name": "PO Amendments",
"status": "Canceled",
"action":"delete"
}
]
To update Distribution profiles in Commitment detail level Cashflow, All values of "that profile map" must be provided . Other maps (or rows in UI) of bp_date_profiles which are not subject to update, are optional (may or may not be in bp_date_profiles list).
"bp_dates_profile": [
{
"bp_name": "PO Amendments",
"todate": "ugenP6PlannedFinishDOP",
"profile": "Back Loaded",
"fromdate": "due_date"
}
]
To delete Distribution profile in Commitment Detail level Cashflow, provide correct "bp_name" and "to_date", "fromdate" & "profile" as empty String, in "bp_dates_profiles.
"bp_dates_profile": [
{
"bp_name": "PO Amendments",
"todate": "",
"profile": "",
"fromdate": ""
}
]
Note: POST call has input & output both as JSON in the body.
Update Cashflow Manual - Project or Shell
{
"data":
{ "id":12,
"name": "project type cashflowupdated",
"description": null,
"rollup_status": "Active",
"detail_level": "Project / Shell",
"period_type": "Standard Planning Period",
"period_name": "Standard Planning Period",
"period_by": "Month",
"period_format": "M YYYY",
"decimal_places": 2,
"snapshot": {
"sn_week_num": "First",
"sn_week_day": "Sunday",
"cutoff_spends": {
"cutoff_week_num": "First",
"cutoff_week_day": "Sunday",
"inc_spends_opt": "same_month"
}
},
"schedule": {
"enable_refresh": false
},
"summary": [
{
"name": "summary",
"summary_type": "User_Defined"
}
],
"curves": [
{
"name": "Actuals",
"type": "Spends",
"cost": {
"type":"cost_sheet",
"cost_sheet_column": "152 Base Commit WF (Approved)"
}
},
{
"name": "Cash flow3",
"type": "Derived",
"cost": {
"base_currency": "United States Dollar (USD)",
"source_curve_name": "Actuals",
"derived_curve_currency": "Australia Dollar (AUD)",
"exchange_rate": "Peg",
"peg_rate_as": "Dynamic",
"peg_dynamic_ds": "Single Record BPs / 922_Simple PNW/FSingle LL",
"peg_dynamic_de": "Currency amount 1",
"float_rate_as": "weighted_period"
}
},
{
"name": "Today",
"type": "Portfolio Budget",
"cost": {
"currency_code": "Australia Dollar (AUD)",
"distribut_amount_from": "approved"
}
},
{
"name": "Forecast",
"type": "Forecast",
"distribution": {
"type": "auto_profile",
"distribution_profile": "Front Load"
},
"cost": {
"type": "cost_sheet",
"cost_sheet_column": "152 Base Commit WF (Open)"
},
"schedule": {
"type": "manual"
},
"forecast_options": {
"begin_end_of_curve": true,
"fc_curve_name": "Actuals",
"current_actual_cut_off_date": true,
"fc_dist": "weighted_avg_over_next",
"periods": 3
}
}
]
}
}
For other detail_type sample output, please refer to create Cashflow call.
Output:
JSON object containing 'status', 'data', 'message'
a message will be present if the status is not 200 otherwise it will be "success".