How to get UUID shown properly in a catalog form/onlookupfield.

Document ID : KB000048450
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

Ceating request to SDM with "affected_resource" to it.

Problem: DataObject shows correct data, the value into the MDB is something that SDM does not understand.

Solution:

How the problem shows:

  1. Data Object1
    ID = ztest-DO-CI
    Table = ca_owned_resource
    Fields= own_resource_uuid,resource_name
    Query = select resource_name,own_resource_uuid from ca_owned_resource
    >>
    Results = 'uuid' | 'Testi-Mobile-CI'
    'uuid' | 'Windows 8'

  2. Data Object2:

    select form_elem_name,form_elem_value from usm_request_item_form
    where subscription_deyail_id in (
    select id from usm_subscription_detail
    where requestd_id like '10185')
    and form_elem_name like 'zci-value';
    >>
    Result = 'zci-value' | '[B@51776d19|Windows 8'

  3. Data Object on the form:

    Configuration item: 'Testi-Mobile-CI'
    'Windows 8'
    select resource_name,own_resource_uuid from ca_owned_resource
    Results = 'uuid' | 'Testi-Mobile-CI'
    'uuid' | 'Windows 8'
    For 'uuid' | 'Windows 8' uuid=B977AD1C256C2C4EB9CE45BCF5363FED
    And in MDB for the 'request details' the 'uuid' shows like this:
    select form_elem_name,form_elem_value from usm_request_item_form
    where subscription_deyail_id in (
    select id from usm_subscription_detail
    where requestd_id like '10185')
    and form_elem_name like 'zci-value';
    Result = 'zci-value' | '[B@51776d19|Windows 8'

The solution:

You face this problem because UUID is binary and this is a not supported datatype for variables in Catalog.

The following approach resolves this.

Use Case/Select UUID for a contact: Here convert function is used to convert binary data to integer

table: ca_contact

fields: userid,first_name

query: select userid,first_name

from ca_contact

where CONVERT(integer,location_uuid)=%loc_uuid_int%

Here we are converting binary UUID to integer and filtering matching records based on first select field selection.