bw_update_adso
Update an SAP BW aDSO: add or remove fields, change type and settings, manage key fields, or modify individual field properties. Returns a lock handle for activation.
Instructions
Add/remove fields, change aDSO type/settings, manage key fields, or update individual field properties. action "add_field" (default): add one or more InfoObject-backed fields — infoobject_name required. action "remove_field": removes the field from the aDSO (and from the key if it was a key field). action "add_pure_field": add one or more pure (non-InfoObject) fields — pass fields array with name, label, data_type, optional length/precision/scale/aggregation_behavior/is_key. action "update_settings": change aDSO type preset and/or individual boolean flags — no infoobject_name needed. action "manage_keys": replace the complete key field list — pass key_fields array (empty = no key fields). action "update_field_properties": modify sidDeterminationMode, aggregationBehavior, fixedCurrency/Unit, a unit/currency field reference (unit_currency_field), the field group (dimension), or descriptions of a single field — pass field_name and properties. Field groups: pass "dimension" on add_field/add_pure_field to place new fields in the right group straight away — a field added without it lands in the catch-all group and moving it afterwards costs a second activation. Returns a lock_handle that must be passed to bw_activate to complete the operation. Sequence: bw_update_adso → bw_activate (adso) → bw_activate (trfn) → bw_activate (each dtpa).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | "add_field" (default), "remove_field", "add_pure_field", "update_settings", "manage_keys", or "update_field_properties". | |
| fields | No | Pure field definitions for action "add_pure_field". | |
| settings | No | Settings to apply (only for action "update_settings"). | |
| adso_name | Yes | aDSO name (e.g. "ADSO_NAME"). | |
| dimension | No | Field group ("Feldgruppe") to place the field in, given as the bare group name — e.g. "__KEYFIGURES" for the key figure group or "ALL" for the catch-all. Must be a group the aDSO declares; an unknown name is rejected with the declared groups listed rather than silently falling back. Read the current assignment from the DIM column of bw_get_adso. Applies to every field added by this call (action "add_field"). | |
| transport | No | Transport request number (e.g. DEVK900123). Only required if the BW system requires transport assignment. | |
| field_name | No | Field name to modify (only for action "update_field_properties"), e.g. "FIELD_NAME" or "AMOUNT_P". | |
| key_fields | No | List of field names that should be key fields (only for action "manage_keys"). Empty array removes all key fields. | |
| properties | No | Field properties to update (only for action "update_field_properties"). | |
| infoobject_name | No | InfoObject name or comma-separated list to add or remove (e.g. "IOBJ_NAME" or "IOBJ_A,IOBJ_B"). Required for add_field and remove_field. |