Mismatch between ArcCatalog and GDB_ITEMS?

919
0
09-21-2016 08:07 AM
MartinAmeskamp
Occasional Contributor II

I'm currently researching a problem (on ArcGIS Desktop 10.0 and Oracle 11.2) where we have afeature class with global IDs that shows the wrong field type (Guid rather than Global ID) in ArcCatalog and that also has lots of identical global IDs that look like this: {00000000-0000-0000-0000-000000000000}.

In trying to find out if any other feature classes and tables in my database are affected (it's a big schema), I came up with the following SQL query:

SELECT name,
       type
FROM   (SELECT name,
               Extractvalue(VALUE(d), '/GPFieldInfoEx/FieldType') type,
               Extractvalue(VALUE(d), '/GPFieldInfoEx/Name')      colname
        FROM   sde.gdb_items_vw items,
               table(Xmlsequence(Extract(Xmltype(items.definition),
               '/DEFeatureClassInfo/GPFieldInfoExs/GPFieldInfoEx'))) d
        WHERE  items.type = '{70737809-852C-4A03-9E22-2CECEA5B9BFA}')
WHERE  colname = 'GLOBALID'
       AND type <> 'esriFieldTypeGlobalID'; 

This returned a lot more matches than I expected, one of them being a feature class called FCL_ACCESS. I then looked up FCL_ACCESS in ArcCatalog to make sure that my SQL was OK, but ArcCatalog shows that attribute GLOBALID is of type Global ID. In order to make sure that I didn't have a mix up somewhere, I looked up the OBJECTID of the feature class description with SQL, extracted the XML definition using sdexml, fired up an XML editor and found the SQL information confirmed (attribute GLOBALID has type esriFieldTypeGuid rather than esriFieldTypeGlobalID). Also, the XML descrption showed the attribute HasGlobalID to be false.

Now, I'm fairly sure that I'm not mixing up databases here, so why does ArcCatalog tell a different story from GDB_ITEMS??

Mystified, Martin

0 Kudos
0 Replies