Skip to content

/AWS1/IF_BDO=>UPDATEDATASETEXAMPLES()

About UpdateDatasetExamples

Updates multiple existing examples in-place on DRAFT.

Validation: All examples are validated against the dataset's schemaType before any writes occur. If any example fails validation, the entire batch is rejected with ValidationException — no examples are updated (all-or-nothing semantics).

Asynchronous: Operates in-place on DRAFT. No version bump occurs. Use CreateDatasetVersion to publish DRAFT as a new numbered version.

Fails with ResourceNotFoundException if any exampleId does not exist in DRAFT. To add new examples, use AddDatasetExamples instead.

State guard: Returns ConflictException (DATASET_NOT_READY) if the dataset status is not in {DRAFT, ACTIVE}.

Request size limit: Max 5 MB total request body. Max 1000 examples per call.

Method Signature

METHODS /AWS1/IF_BDO~UPDATEDATASETEXAMPLES
  IMPORTING
    !IV_DATASETID TYPE /AWS1/BDODATASETID OPTIONAL
    !IV_CLIENTTOKEN TYPE /AWS1/BDOCLIENTTOKEN OPTIONAL
    !IT_EXAMPLES TYPE /AWS1/CL_RT_DOCUMENT=>TT_LIST OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_bdoupdatedsexmplsrsp
  RAISING
    /AWS1/CX_BDOACCESSDENIEDEX
    /AWS1/CX_BDOCONFLICTEXCEPTION
    /AWS1/CX_BDOINTERNALSERVEREX
    /AWS1/CX_BDORESOURCENOTFOUNDEX
    /AWS1/CX_BDOSERVICEQUOTAEXCDEX
    /AWS1/CX_BDOTHROTTLINGEX
    /AWS1/CX_BDOVALIDATIONEX
    /AWS1/CX_BDOCLIENTEXC
    /AWS1/CX_BDOSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_datasetid TYPE /AWS1/BDODATASETID /AWS1/BDODATASETID

The unique identifier of the dataset.

it_examples TYPE /AWS1/CL_RT_DOCUMENT=>TT_LIST TT_LIST

Examples to update. Each element is a JSON object containing a required exampleId string field identifying the existing example, plus the replacement fields. The exampleId is extracted and removed before persistence; the remaining document is validated against the dataset's schemaType. Max 1000 examples per call. Total request body must not exceed 5 MB.

Optional arguments:

iv_clienttoken TYPE /AWS1/BDOCLIENTTOKEN /AWS1/BDOCLIENTTOKEN

A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If you don't specify this field, a value is randomly generated for you. If this token matches a previous request, the service ignores the request, but doesn't return an error. For more information, see Ensuring idempotency.

RETURNING

oo_output TYPE REF TO /aws1/cl_bdoupdatedsexmplsrsp /AWS1/CL_BDOUPDATEDSEXMPLSRSP

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->updatedatasetexamples(
  it_examples = VALUE /aws1/cl_rt_document=>tt_list(
    ( /AWS1/CL_RT_DOCUMENT=>FROM_JSON_STR( |\{"foo":"this is a JSON object..."\}| ) )
  )
  iv_clienttoken = |string|
  iv_datasetid = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_datasetarn = lo_result->get_datasetarn( ).
  lv_datasetid = lo_result->get_datasetid( ).
  lv_datasetstatus = lo_result->get_status( ).
  lv_long = lo_result->get_updatedcount( ).
  lv_timestamp = lo_result->get_updatedat( ).
ENDIF.