I’m working on building a simple version control utility that will help me manage scripts across several servers. I am parsing the files associated with the scripts and presenting that information in a tree view. I’ll then be adding some metadata to assign checksum and versions to make sure we stay in sync from Development to Stage to Production. I’d like to include all the properties of the scripts in the view but it’s challenging to match up these values with their English label (i.e., clsid=‘10003 --> Model context and ’types=”255’ --> Application collaboration diagram (physical))
Is there a table or XML file that contains clsid and types for the context tag below? Are there any explanations of the scriptinfo tag attributes? Below is a sample .loc file.
Note the clsid and type declarations. I'm looking for a table of some sort where I can match these values with an english language label.
<?xml version="1.0" encoding="UTF-8"?> <scriptinfodata version="7.1.0"> <scriptinfo idcomp="1" runkind="0" runtypes="" contexttype="1" eventids="" extratypes="" outfiletypes="0,9,3,2,4,5,8," scriptlang="2" filter="" template="" dialogsallowed="1" dbwriteallowed="1"> <contexts> <context clsid="145" types="" usertypes="" /> <context clsid="10001" types="" usertypes="" /> <context clsid="10003" types="" usertypes="" /> <context clsid="10005" types="255," usertypes="" /> <context clsid="10009" types="287," usertypes="" /> </contexts> <pageformat name="A4" width="210" height="297" orientation="1" top="30" left="20" right="20" bottom="30" dheader="10" dfooter="10" /> <protection cdkey="" kind="0" passwd="" /> <imports> <import name="[common]Cargill.Excel.Report.js" /> <import name="[common]Cargill.GUIDS.js" /> <import name="[common]Cargill.Quality.Reports.js" /> </imports> </scriptinfo> </scriptinfodata>
Thanks,
Hi Rick,
the CLSID constants can be accessed in the script language as constants Constants.CID_xyz, for example Constants.CID_MODEL. You can determine a readable name using the script-API's function ArisMetaModel.ItemKindName().
For models and objects you can determine a readable type name by calling ArisMetaModel.ItemTypeName(itemKindNum, itemTypeNum).
The ArisMetaModel object can be obtained in a report by calling ArisData.ActiveFilter().
BR,
Torsten