How are the folder names in the DSM Library derived?

Document ID : KB000063391
Last Modified Date : 21/02/2018
Show Technical Document Details
Question:
This technical document describes the link between the software package library folder names and the database. The contents of the software package library can be navigated by using the library.dct file found in the following folder location: ..\CA\DSM\SD\ASM\LIBRARY\library.dct
Environment:
Client Automation -- all versions.
Answer:
The software package library is stored in the database in the usd_rsw table. To query the table generically, you can use the following SELECT statement:

select * from usd_rsw

The folder name used for the software package library is derived from a conversion on the objectid field. To perform the conversion on a single library item, you can use the following SELECT statement:

select cast(objectid as uniqueidentifier)
from usd_rsw
where itemname='CA DSM Agent + AM, RC, SD plugin(s) (NLS(ENU,DEU,FRA,JPN)) Win32'

To create a list of all folder names for each software package, you can perform the conversion generically on ALL software packages:

select itemname, cast(objectid as uniqueidentifier) as 'Folder Name'
from usd_rsw
order by itemname

To perform the conversion manually, without using a built-in SQL function, here are the steps:

Let's use objectID, "0x4712659C167BAD4E9B6239D658E1F41C" as an example. Drop the leading "0x" and break the rest of the string into segments with the following pattern:

12345678 1234 1234 1234 123456789(10)(11)(12)

So for our example, 4712659C167BAD4E9B6239D658E1F41C, the number would become:

4712659C 167B AD4E 9B62 39D658E1F41C

Break each segment into hexadecimal pairs:
47 12 65 9c
16 7b
ad 4e
9b 62
39 d6 58 e1 f4 1c

Reassemble the first 3 sections in reverse pair order where the last pair becomes the first:
9c 65 12 47
7b 16
4e ad
9b 62
39 d6 58 e1 f4 1c

Reassemble from beginning to end:
9c6512477b164ead9b6239d658e1f41c

Reform with the original segments with '-' in between each:
9c651247-7b16-4ead-9b62-39d658e1f41c

The folder in the software library is: "9c651247-7b16-4ead-9b62-39d658e1f41c.arc"