Update BP Record V2 (Additional Information)
![]()
This topic includes additional information about updating BP record V2.
Note: The "Enable Step for Integration" option in the Workflow BP setup is not available for the REST integration.
Simple Object Access Protocol (SOAP)
To send SOAP services as XML, ensure that you follow the general rules of XML:
- All tag data (not CDATA) needs to be escaped for < > & "
- Escaping must be a part of the client code which generates the web service call
Note: Those using SOAPUI to make a call must do it manually.
Unifier supports MTOM base64 encoded files in our Unifier Web Service SOAP platform for:
- createCompleteBPRecord
- updateCompleteBPRecord
- addCompleteBPRecord
- getCompleteBPRecord
Note: By design, there are no web services available for the Request for Bid (RFB) business process.
Shell and Company Levels
If the Shell number is null, the record will be assumed for company-level record.
The step involved in sending a record (Send To) is pre-assigned.
Options
- WFCurrentStepName
Value of this tag identifies the current step of the record. This is to ensure that web service call is called for correct step with correct action.
- WFActionName
Value of this tag determines the action that should be taken. This action name will be validated against the WFCurrentStepName
WFActionName
If the option WFActionName tag is empty, the system only updates the record. WFCurrentStepName in this case is not validated.
If the option WFActionName tag has a value, the system pushes workflow to the next step, based on the value of WFActionName tag. All form level validations will be triggered before pushing workflow to the next step. In this scenario WFCurrentStepName will be validated to make sure that the step is valid and action is valid. The option WFActionName tag will be ignored for non-workflow business processes.
Validations while processing WFCurrentStepName and WFActionName tags
- If WFActionName tag is empty, do not validate WFCurrentStepName
- If WFActionName tag is not empty, validate WFCurrentStepName
WFCurrentStepName
The record is still on the step identified by WFCurrentStepName. If it is not, the system generates an error.
Step identified by WFCurrentStepName value has "Enable Step for Integration" option set to "Yes". If it is not, the system generates an error. The "Enable Step for Integration" option is specific to SOAP.
Validate WFActionName is valid action that can be taken from step identified by the value of WFCurrentStepName.
After going through all validations rules, the system moves the record to next step. The Creator, who has been selected on the Auto Creation tab (for more information, see the Unifier Modules Setup Administration Guide), is the person who takes action on the step.
It is possible that someone would have accepted the task on step identified by the value of WFCurrentStepName. (This can happen because "Assignees" option for this step under BP Setup is not disabled). There are three possible scenarios under this condition:
- No one accepted the task: In this scenario system will automatically accepts the task, update record and line items and move record to next step. System will remove task from all other users list.
- Someone accepted the task: In this scenario system will update record and move it to next step and will remove task from other users list including the use who accepted the task.
- Someone accepted the task and move workflow to next step. System will generate an error message as the task is already accepted and WF is moved out of that step.
LineItemIdentifier
There are two scenarios for this option:
- LineItemIdentifier value is empty: In this scenario, system will add all line items. <_delete_bp_lineitems> tag will be ignored.
- LineItemIdentifier value is not empty: In this scenario, value provided as part of LineItemIdentifier should be a tag under _bp_lineitems. If not, system will error out.
If LineItemIdentifier value is an element under _bp_lineitems, the system will try to query up a line item based on the value provided under this element.
If the line is found, it will be updated.
If two lines are found, the system generates an error (duplicate rows).
If the line is not found, it will be added.
Notes:
- The mentioned behavior mentioned above is applicable to all lines on all tabs.
- The system will not update/remove/add line items of Cost type of Business Process records that have reached terminal status (not just end step), using this new service.
The "LineItemIdentifier" option is ignored for following type of business processes:
- Simple: Document with Detail form
- Text
WFActionName and WFCurrentStepName
This option is ignored for non-workflow Business Processes.
Import the line items for General Spends and Payment Applications
The following XML tag <_refnum> </refnum> should be added under BP line item tag <_bp_lineitem> </bp_lineitem> to support the ability to import the line items for General Spends and Payment Applications.
This service can be used to add lines to Payment Applications and General Spends type of business process. When adding lines to Payment Applications type of business process, existing lines if any will be removed and new lines will be added that are provided as part of the service call. For General spends line will be appended like any other business process.
Note: updateBPRecordv2 cannot be used to update existing line items for Payment Applications type of business process.
Updating BP Record V2 for Document type BP with Folder Structure
The Web Service call supports the adding of line items to a specific folder to an existing Document type BP record.
The Update BP Record V2 is applicable to Base Commit and Change Commit of Summary Payment Application type business processes.
The Update BP Record V2 is partially supported for Payment Application business processes of Summary Payment Application type. Use this service to add standard tab line items to a payment record only when the record does not have any standard tab line items created yet (in such case, the same service can also be used to optionally progress the workflow). Alternately, this service can be used only to progress the workflow on a record.
This service is not available to modify or delete standard tab line items.
Payment BP (both the classic and summary payment) line items belonging to tabs other than the standard tab can be added/modified/deleted by using: updatebprecordv2 call.
Behavior Specific to Summary Payment Application SOV Type BPs
Note: The information is applicable to Base Commit and Change Commit of Summary Payment Application SOV Type BPs.
For more details about XML tags, see Create and Add Methods in the Create BP Record (Additional Information) section.
Update Methods (Update BP Record V2)
The Cost Allocation using the Update BP Record V2 method is necessary when Summary Line Item is added at the creation step and Actual Cost Allocation is added in the subsequent step.
When you need to add Cost Allocation to an existing Line Item, the existing “LineItemIdentifier” tag can hold the information of the Line Item that needs to be updated with the Cost Allocation
The LineItemIdentifier is the key tag for identifying the Line Item that needs to be updated.
You can add new Summary Line Items and Costed Line Items.
If the XML template has the Summary Line Item fields, along with the Cost Allocation, the Summary Line Items need to be updated.
Note: In this case, the LineItemIdentifier tag is the key.
For modifying Line Items, either by adding new Costed Line Items or updating existing Costed Line Items for Base Commit and Change Commit Business Process records, the following rules are applied:
- CBS Code forms the identifier for identifying the Costed Line Items that need to be updated in Base Commit BPs.
- For a Base Commit BP record:
- If a CBS Code that is specified in the _cost_allocation block does not exist in the Line Item, this will be treated as a new Costed Line Item for the specified Line Item.
- If the CBS Code specified in the _cost_allocation block exists, this will be treated as an update and the Costed Line Item for the specified Line Item will be updated.
- If there are multiple Cost Allocation blocks with the same CBS Codes, the update will not take place and results in a duplicate CBS Code error.
Note: The above rule also applies to updating the existing Line Items in the Change Commit BP.
New modifications to Line Items existing in the SOV can be done by specifying the sovlinum. For modifying the Costed Line Items in the Summary Line Items, the combination of sovlinum and CBS Code will be used.
Since the Short Description exists for the Line Items, this is as an Optional field.
The Costed Line Items that need to be updated will be identified by the Cost Code/ bItemId.
All operations that are currently possible with the updateBPRecordV2 call will also be applicable here.
Example
Workflow progress, deletion of line items, and so on
Validation
If the input XML used for updating Line Items has only Cost Allocation details, along with the Line Item reference, the Line Items update with the Cost Allocation will go through without any errors.
All validations for the required fields in the Summary level and the Cost Allocation level will be applicable.
All system level validations existing for the above-mentioned BPs will be applicable.
Example
Costed amount = Line item amount at a given step
Existing validations for update BP record V2 will be applicable.
Data Elements in Line Items
If the following Data Elements are present in the Line Items, they will not be updated.
bitemidbudgetidsovitemiduuu_cm0_pickerxidds_codefsm_lineitem_idasm_lineitem_iduuu_latuuu_longuuu_company_account_nameuuu_company_account_codeuuu_company_acc_codepickeruuu_activity_pickeruuu_asset_pickerref_bpo_lineitemref_bporef_rfbrefiduuu_sovlinumotherCompanyIDuuu_costcode_pickerscheduled_valueuuu_asset_cum_depreciationuuu_asset_curr_period_depuuu_asset_net_book_valueuuu_unit_pricecurrencyiddue_dateuuu_asset_calc_as_of_dateuuu_from_dateuuu_issue_dateuuu_last_update_dateuuu_rfb_due_dateuuu_to_dateuuu_week_pickeruuu_datasourceuuu_depreciation_mtduuu_line_item_statusrow_iduuu_bid_countuuu_bidders_countuuu_planning_item_pickeruuu_proj_pickerrecord_nouuu_resc_pickeruuu_role_pickeruuu_commit_short_descend_dateuuu_creation_dateuuu_asset_nameuuu_commit_breakdownuuu_asset_codeuuu_asset_navigation_codeuuu_timescale_unitscreator_idwpiduuu_cost_costattributeuuu_cost_external_refiduuu_cost_statusuuu_cost_cost_typeuuu_cost_descriptionuuu_cost_itemuuu_cost_owneruuu_cost_codeuuu_dm_create_dateuuu_file_create_dateuuu_file_issue_dateuuu_dm_percent_completeuuu_file_sizeuuu_file_versionuuu_dm_descriptionuuu_dm_node_pathuuu_dm_node_nameuuu_file_revision_nouuu_file_titleuuu_dm_create_byuuu_file_create_byuuu_fund_fundcategoryuuu_fund_long_descuuu_fund_descriptionuuu_fund_fundnameuuu_fund_codeuuu_descriptionuuu_resc_nwd_typeuuu_resc_interestuuu_resc_proficiencyuuu_resc_skilluuu_role_statusuuu_role_nameuuu_resc_capacityuuu_user_addressuuu_user_cityuuu_user_countryuuu_user_emailuuu_user_faxuuu_user_firstnameuuu_user_homephoneuuu_user_lastnameuuu_user_mobilephoneuuu_user_pageruuu_user_stateuuu_user_timezoneuuu_user_titleuuu_user_workphoneuuu_user_zipuuu_resc_statusuuu_resc_codeuuu_resc_nameuuu_early_finishuuu_early_start,uuu_finishuuu_late_finishuuu_late_startuuu_startuuu_act_pct_completeuuu_activity_work_hrsuuu_durationuuu_fixed_costuuu_floatuuu_labor_costuuu_non_labor_costuuu_total_costuuu_activity_iduuu_flag_completeuuu_flag_milestoneuuu_activity_resourcesuuu_dependency_typeuuu_activity_nameuuu_outline_codeuuu_cost_li_type
Last Published Tuesday, July 1, 2025