/AWS1/IF_BDO=>UPDATEMEMORY()
¶
About UpdateMemory¶
Update an Amazon Bedrock AgentCore Memory resource memory.
Method Signature¶
METHODS /AWS1/IF_BDO~UPDATEMEMORY
IMPORTING
!IV_CLIENTTOKEN TYPE /AWS1/BDONONEMPTYSTRING OPTIONAL
!IV_MEMORYID TYPE /AWS1/BDOMEMORYID OPTIONAL
!IV_DESCRIPTION TYPE /AWS1/BDODESCRIPTION OPTIONAL
!IV_EVENTEXPIRYDURATION TYPE /AWS1/BDOINTEGER OPTIONAL
!IV_MEMORYEXECUTIONROLEARN TYPE /AWS1/BDOARN OPTIONAL
!IO_MEMORYSTRATEGIES TYPE REF TO /AWS1/CL_BDOMODIFYMEMORYSTRAT OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_bdoupdatememoryoutput
RAISING
/AWS1/CX_BDOACCESSDENIEDEX
/AWS1/CX_BDOCONFLICTEXCEPTION
/AWS1/CX_BDORESOURCENOTFOUNDEX
/AWS1/CX_BDOSERVICEEXCEPTION
/AWS1/CX_BDOSERVICEQUOTAEXCDEX
/AWS1/CX_BDOTHROTTLEDEXCEPTION
/AWS1/CX_BDOVALIDATIONEX
/AWS1/CX_BDOCLIENTEXC
/AWS1/CX_BDOSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_memoryid
TYPE /AWS1/BDOMEMORYID
/AWS1/BDOMEMORYID
¶
The unique identifier of the memory to update.
Optional arguments:¶
iv_clienttoken
TYPE /AWS1/BDONONEMPTYSTRING
/AWS1/BDONONEMPTYSTRING
¶
A client token is used for keeping track of idempotent requests. It can contain a session id which can be around 250 chars, combined with a unique AWS identifier.
iv_description
TYPE /AWS1/BDODESCRIPTION
/AWS1/BDODESCRIPTION
¶
The updated description of the AgentCore Memory resource.
iv_eventexpiryduration
TYPE /AWS1/BDOINTEGER
/AWS1/BDOINTEGER
¶
The number of days after which memory events will expire, between 7 and 365 days.
iv_memoryexecutionrolearn
TYPE /AWS1/BDOARN
/AWS1/BDOARN
¶
The ARN of the IAM role that provides permissions for the AgentCore Memory resource.
io_memorystrategies
TYPE REF TO /AWS1/CL_BDOMODIFYMEMORYSTRAT
/AWS1/CL_BDOMODIFYMEMORYSTRAT
¶
The memory strategies to add, modify, or delete.
RETURNING¶
oo_output
TYPE REF TO /aws1/cl_bdoupdatememoryoutput
/AWS1/CL_BDOUPDATEMEMORYOUTPUT
¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC
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->updatememory(
io_memorystrategies = new /aws1/cl_bdomodifymemorystrat(
it_addmemorystrategies = VALUE /aws1/cl_bdomemorystraginput=>tt_memorystrategyinputlist(
(
new /aws1/cl_bdomemorystraginput(
io_custommemorystrategy = new /aws1/cl_bdocustmemstraginput(
io_configuration = new /aws1/cl_bdocustomconfinput(
io_selfmanagedconfiguration = new /aws1/cl_bdoselfmanagedconfinp(
io_invocationconfiguration = new /aws1/cl_bdoinvcconfinput(
iv_payloaddeliverybucketname = |string|
iv_topicarn = |string|
)
it_triggerconditions = VALUE /aws1/cl_bdotriggercondinput=>tt_triggerconditioninputlist(
(
new /aws1/cl_bdotriggercondinput(
io_messagebasedtrigger = new /aws1/cl_bdomsgbasedtriggerinp( 123 )
io_timebasedtrigger = new /aws1/cl_bdotimebasedtrigger00( 123 )
io_tokenbasedtrigger = new /aws1/cl_bdotokbasedtriggerinp( 123 )
)
)
)
iv_historicalctxwindowsize = 123
)
io_semanticoverride = new /aws1/cl_bdosemanovrdconfinput(
io_consolidation = new /aws1/cl_bdosemovrconsconfinp(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
io_extraction = new /aws1/cl_bdosemovrextconfinput(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
)
io_summaryoverride = new /aws1/cl_bdosummovrdconfinput(
io_consolidation = new /aws1/cl_bdosummovrconsconfinp(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
)
io_userpreferenceoverride = new /aws1/cl_bdouserprefovrconfinp(
io_consolidation = new /aws1/cl_bdouserprefovrconsc00(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
io_extraction = new /aws1/cl_bdouserprefovrextco00(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
)
)
it_namespaces = VALUE /aws1/cl_bdonamespaceslist_w=>tt_namespaceslist(
( new /aws1/cl_bdonamespaceslist_w( |string| ) )
)
iv_description = |string|
iv_name = |string|
)
io_semanticmemorystrategy = new /aws1/cl_bdosemanmemstraginput(
it_namespaces = VALUE /aws1/cl_bdonamespaceslist_w=>tt_namespaceslist(
( new /aws1/cl_bdonamespaceslist_w( |string| ) )
)
iv_description = |string|
iv_name = |string|
)
io_summarymemorystrategy = new /aws1/cl_bdosummmemstraginput(
it_namespaces = VALUE /aws1/cl_bdonamespaceslist_w=>tt_namespaceslist(
( new /aws1/cl_bdonamespaceslist_w( |string| ) )
)
iv_description = |string|
iv_name = |string|
)
io_userprefmemorystrategy = new /aws1/cl_bdouserprefmemstgyinp(
it_namespaces = VALUE /aws1/cl_bdonamespaceslist_w=>tt_namespaceslist(
( new /aws1/cl_bdonamespaceslist_w( |string| ) )
)
iv_description = |string|
iv_name = |string|
)
)
)
)
it_deletememorystrategies = VALUE /aws1/cl_bdodelmemstraginput=>tt_deletememorystrategieslist(
( new /aws1/cl_bdodelmemstraginput( |string| ) )
)
it_modifymemorystrategies = VALUE /aws1/cl_bdomdfymemstraginput=>tt_modifymemorystrategieslist(
(
new /aws1/cl_bdomdfymemstraginput(
io_configuration = new /aws1/cl_bdomodifystrategyconf(
io_consolidation = new /aws1/cl_bdomodifyconsolconf(
io_customconsolconfiguration = new /aws1/cl_bdocustconsolconfinp(
io_semanticconsoloverride = new /aws1/cl_bdosemovrconsconfinp(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
io_summaryconsoloverride = new /aws1/cl_bdosummovrconsconfinp(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
io_userprefconsoloverride = new /aws1/cl_bdouserprefovrconsc00(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
)
)
io_extraction = new /aws1/cl_bdomodifyextconf(
io_customextractionconf = new /aws1/cl_bdocustomextconfinput(
io_semanticextoverride = new /aws1/cl_bdosemovrextconfinput(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
io_userprefextoverride = new /aws1/cl_bdouserprefovrextco00(
iv_appendtoprompt = |string|
iv_modelid = |string|
)
)
)
io_selfmanagedconfiguration = new /aws1/cl_bdomodselfmanagedconf(
io_invocationconfiguration = new /aws1/cl_bdomdfyinvcconfinput(
iv_payloaddeliverybucketname = |string|
iv_topicarn = |string|
)
it_triggerconditions = VALUE /aws1/cl_bdotriggercondinput=>tt_triggerconditioninputlist(
(
new /aws1/cl_bdotriggercondinput(
io_messagebasedtrigger = new /aws1/cl_bdomsgbasedtriggerinp( 123 )
io_timebasedtrigger = new /aws1/cl_bdotimebasedtrigger00( 123 )
io_tokenbasedtrigger = new /aws1/cl_bdotokbasedtriggerinp( 123 )
)
)
)
iv_historicalctxwindowsize = 123
)
)
it_namespaces = VALUE /aws1/cl_bdonamespaceslist_w=>tt_namespaceslist(
( new /aws1/cl_bdonamespaceslist_w( |string| ) )
)
iv_description = |string|
iv_memorystrategyid = |string|
)
)
)
)
iv_clienttoken = |string|
iv_description = |string|
iv_eventexpiryduration = 123
iv_memoryexecutionrolearn = |string|
iv_memoryid = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_memory = lo_result->get_memory( ).
IF lo_memory IS NOT INITIAL.
lv_memoryarn = lo_memory->get_arn( ).
lv_memoryid = lo_memory->get_id( ).
lv_name = lo_memory->get_name( ).
lv_description = lo_memory->get_description( ).
lv_arn = lo_memory->get_encryptionkeyarn( ).
lv_arn = lo_memory->get_memoryexecutionrolearn( ).
lv_integer = lo_memory->get_eventexpiryduration( ).
lv_memorystatus = lo_memory->get_status( ).
lv_string = lo_memory->get_failurereason( ).
lv_timestamp = lo_memory->get_createdat( ).
lv_timestamp = lo_memory->get_updatedat( ).
LOOP AT lo_memory->get_strategies( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_memorystrategyid = lo_row_1->get_strategyid( ).
lv_name = lo_row_1->get_name( ).
lv_description = lo_row_1->get_description( ).
lo_strategyconfiguration = lo_row_1->get_configuration( ).
IF lo_strategyconfiguration IS NOT INITIAL.
lv_overridetype = lo_strategyconfiguration->get_type( ).
lo_extractionconfiguration = lo_strategyconfiguration->get_extraction( ).
IF lo_extractionconfiguration IS NOT INITIAL.
lo_customextractionconfigu = lo_extractionconfiguration->get_customextractionconf( ).
IF lo_customextractionconfigu IS NOT INITIAL.
lo_semanticextractionoverr = lo_customextractionconfigu->get_semanticextoverride( ).
IF lo_semanticextractionoverr IS NOT INITIAL.
lv_prompt = lo_semanticextractionoverr->get_appendtoprompt( ).
lv_string = lo_semanticextractionoverr->get_modelid( ).
ENDIF.
lo_userpreferenceextractio = lo_customextractionconfigu->get_userprefextoverride( ).
IF lo_userpreferenceextractio IS NOT INITIAL.
lv_prompt = lo_userpreferenceextractio->get_appendtoprompt( ).
lv_string = lo_userpreferenceextractio->get_modelid( ).
ENDIF.
ENDIF.
ENDIF.
lo_consolidationconfigurat = lo_strategyconfiguration->get_consolidation( ).
IF lo_consolidationconfigurat IS NOT INITIAL.
lo_customconsolidationconf = lo_consolidationconfigurat->get_customconsolconf( ).
IF lo_customconsolidationconf IS NOT INITIAL.
lo_semanticconsolidationov = lo_customconsolidationconf->get_semanticconsoloverride( ).
IF lo_semanticconsolidationov IS NOT INITIAL.
lv_prompt = lo_semanticconsolidationov->get_appendtoprompt( ).
lv_string = lo_semanticconsolidationov->get_modelid( ).
ENDIF.
lo_summaryconsolidationove = lo_customconsolidationconf->get_summaryconsoloverride( ).
IF lo_summaryconsolidationove IS NOT INITIAL.
lv_prompt = lo_summaryconsolidationove->get_appendtoprompt( ).
lv_string = lo_summaryconsolidationove->get_modelid( ).
ENDIF.
lo_userpreferenceconsolida = lo_customconsolidationconf->get_userprefconsoloverride( ).
IF lo_userpreferenceconsolida IS NOT INITIAL.
lv_prompt = lo_userpreferenceconsolida->get_appendtoprompt( ).
lv_string = lo_userpreferenceconsolida->get_modelid( ).
ENDIF.
ENDIF.
ENDIF.
lo_selfmanagedconfiguratio = lo_strategyconfiguration->get_selfmanagedconfiguration( ).
IF lo_selfmanagedconfiguratio IS NOT INITIAL.
LOOP AT lo_selfmanagedconfiguratio->get_triggerconditions( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lo_messagebasedtrigger = lo_row_3->get_messagebasedtrigger( ).
IF lo_messagebasedtrigger IS NOT INITIAL.
lv_integer = lo_messagebasedtrigger->get_messagecount( ).
ENDIF.
lo_tokenbasedtrigger = lo_row_3->get_tokenbasedtrigger( ).
IF lo_tokenbasedtrigger IS NOT INITIAL.
lv_integer = lo_tokenbasedtrigger->get_tokencount( ).
ENDIF.
lo_timebasedtrigger = lo_row_3->get_timebasedtrigger( ).
IF lo_timebasedtrigger IS NOT INITIAL.
lv_integer = lo_timebasedtrigger->get_idlesessiontimeout( ).
ENDIF.
ENDIF.
ENDLOOP.
lo_invocationconfiguration = lo_selfmanagedconfiguratio->get_invocationconfiguration( ).
IF lo_invocationconfiguration IS NOT INITIAL.
lv_arn = lo_invocationconfiguration->get_topicarn( ).
lv_string = lo_invocationconfiguration->get_payloaddlvrybucketname( ).
ENDIF.
lv_integer = lo_selfmanagedconfiguratio->get_historicalctxwindowsize( ).
ENDIF.
ENDIF.
lv_memorystrategytype = lo_row_1->get_type( ).
LOOP AT lo_row_1->get_namespaces( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_namespace = lo_row_5->get_value( ).
ENDIF.
ENDLOOP.
lv_timestamp = lo_row_1->get_createdat( ).
lv_timestamp = lo_row_1->get_updatedat( ).
lv_memorystrategystatus = lo_row_1->get_status( ).
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.