Skip to main content
Solved

How to set values in REF_KEY

  • April 22, 2020
  • 1 reply
  • 417 views

Forum|alt.badge.img+14

Hi all,

I have a key_ref:

KEY_REF:= ‘BOM_TYPE_DB=M^CONTRACT=1^PART_NO=15000^ROUTING_REVISION=2^’

I would like to replace some of the values. E.g. ROUTING_REVISION=3

I was expecting to be able to do this:

client_sys.Set_Key_Reference(KEY_REF, 'ROUTING_REVISION','3');

but the function does not exists.

 

What is the easiest way doing this?

 

 

Best answer by Hans Andersen

Made the missing function

function Set_Key_Reference(key_ref_ varchar2, key_name_ varchar2, key_value_ varchar2)
return varchar2
is
key_ref_item_ varchar2(1000);
begin
key_ref_item_:= key_name_ || '=' || Client_sys.Get_Key_Reference_Value(key_ref_, key_name_);
return replace(key_ref_, key_ref_item_, key_name_ || '=' || key_value_);
end Set_Key_Reference;

 

1 reply

Forum|alt.badge.img+14
  • Author
  • Hero (Partner)
  • 241 replies
  • Answer
  • April 22, 2020

Made the missing function

function Set_Key_Reference(key_ref_ varchar2, key_name_ varchar2, key_value_ varchar2)
return varchar2
is
key_ref_item_ varchar2(1000);
begin
key_ref_item_:= key_name_ || '=' || Client_sys.Get_Key_Reference_Value(key_ref_, key_name_);
return replace(key_ref_, key_ref_item_, key_name_ || '=' || key_value_);
end Set_Key_Reference;