12.6 Lookups (GET)

Below mentioned table has element name which indicates which type of custom data is passed by enclosing the name and its value in keyname and keyvalue respectively.

Table 12-7 Lookups

Element name Sub element Data type
CustomUserDefinedStringData KeyName String
  KeyValue String
CustomUserDefinedNumberData KeyName String
  KeyValue Number (Double)
CustomUserDefinedDateData KeyName String
  KeyValue Date(YYYY-MM-DDTHH:MM:SS)
Sample XML
<Custom>
    <CustomUserDefinedStringData>
        <KeyName>StringName</KeyName>
        <KeyValue>StringValue</KeyValue>
    </CustomUserDefinedStringData>
    <CustomUserDefinedNumberData>
        <KeyName>NumberName</KeyName>
        <KeyValue>NumberValue</KeyValue>
    </CustomUserDefinedNumberData>
    <CustomUserDefinedDateData>
        <KeyName>DateName</KeyName>
        <KeyValue>DateValue</KeyValue>
    </CustomUserDefinedDateData>
</Custom>
Sample JSON
{
    "Custom": {
        "CustomUserDefinedStringData": {
            "KeyName": "StringName",
            "KeyValue": "StringValue"
        },
        "CustomUserDefinedNumberData": {
            "KeyName": "NumberName",
            "KeyValue": "NumberValue"
        },
        "CustomUserDefinedDateData": {
            "KeyName": "DateName",
            "KeyValue": "DateValue"
        }
    }
}
Below are the package details for Lookup web service
xlkprc_ew_100_01.xlkprc_ew_100_01     ( iv_req_rec_t IN xlk_req_rec_t,iv_res_rec_t IN OUT NOCOPY xlk_resp_rec_t)
xlkprc_em_100_01.xlkprc_em_100_01 (iv_req_rec_t IN     xlk_req_rec_t,iv_res_rec_t IN OUT xlk_resp_rec_t)
xlkprc_em_100_01.get_lookup ( iv_lkt_type IN     VARCHAR2,iv_res_rec_t IN OUT     XLK_TYPE_REC_T)

You can do the customization on xlkprc_em_100_01.xlkprc_em_100_01();

BEFORE:-
IF xlkprc_ex_100_01.cv_xlkprc_em_100_01_bfr = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.xlkprc_em_100_01_bfr (iv_req_rec_t, iv_res_rec_t);
END IF;
REPLACE:-
IF xlkprc_ex_100_01.cv_xlkprc_em_100_01_rep = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.xlkprc_em_100_01_rep (iv_req_rec_t, iv_res_rec_t);
ELSE
AFTER:-
IF xlkprc_ex_100_01.cv_xlkprc_em_100_01_afr = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.xlkprc_em_100_01_afr (iv_req_rec_t, iv_res_rec_t);
END IF;

You can also do the customization on xlkprc_em_100_01.get_lookup();

BEFORE:-
IF xlkprc_ex_100_01.cv_get_lookup_bfr = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.get_lookup_bfr (iv_lkt_type, iv_res_rec_t);
END IF;
REPLACE:-
IF xlkprc_ex_100_01.cv_get_lookup_rep = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.get_lookup_rep (iv_lkt_type, iv_res_rec_t);
ELSE
AFTER:-
IF xlkprc_ex_100_01.cv_get_lookup_afr = cmncon_cl_000_01.CUSTOMIZED THEN
    xlkprc_ex_100_01.get_lookup_afr (iv_lkt_type, iv_res_rec_t);
END IF;
Extensible parameters are rec type object
xws_att_str_rec_t AS OBJECT (
    ATT_NAME         VARCHAR2(30)
    , ATT_VALUE      VARCHAR2(4000));
xws_att_num_rec_t AS OBJECT (
    ATT_NAME         VARCHAR2(30)
    , ATT_VALUE      NUMBER);
xws_att_date_rec_t AS OBJECT (
    ATT_NAME         VARCHAR2(30)
    , ATT_VALUE      DATE);