UDC Compare per 2 environments in E1



Legendary Poster
Hi List

We were thinking of doing a PROD down UDC refresh into PY and UT, but we have several OMW project mid SDLC.

Thankfully this refresh has been stopped but is there a tool in E1 to identify these UDCs off the bat?

Reading this it suggest R960004 (R960004N for 9.1)


Now I've run the UBE but don't really understand what it's showing me or how to use it as the UDCs it lists are the same and the differences I do know about are not listed as issues of concern.

Any help would be great



PS: The issue is we have added loads of UDCs straight into PROD rather than from PY up
Hi John,

I'm old-school. Generally, I use ObjectBrowser to export the UDCs from each environment, then Beyond Compare to identify the differences. I know - Archaic.

Biggest obstacle - what is really a valid UDC? For instance - E1 Ships with Demo/Standalone UDCs! Holy Grail, Batman - We've Spilled the Wine! What type of product ships with dummy data (oh, this one does)... Yeah, that's a bit of an ankle byter for me....

One work around, for your situation - any work in progress, demote that project prior to the data copy. Then, after the data copy - re-promote the UDCs. I hope that idea makes sense.


I've never used R960004 or even seen it, so I can't speak to its benefit (or lack thereof).

I always use a SQL tool. Much easier, quicker, and more flexible if you save the queries for later use... IMO.

I generally just perform the following 2 queries to identify the diffs, depending on the type of difference you're looking for:

-- list of F0005 records in Env1 that are not in Env2

-- UNcomment-out the following insert line to insert missing records into Env2
-- insert into <fully qualified Env2 path>.f0005
select t1.*
from <fully qualified Env1 path>.f0005 t1
left outer join <fully qualified Env2 path>.f0005 t2
on t1.drsy = t2.drsy and t1.drrt = t2.drrt and t1.drky = t2.drky
where t2.drsy is null

-- identify differences in UDC fields between 2 environments

select t1.DRSY, t1.DRRT, t1.DRKY, t1.DRDL01, t2.DRDL01, t1.DRDL02, t2.DRDL02
--, t1.drsphd, t2.drsphd, t1.drudco, t2.drudco, t1.drhrdc, t2.drhrdc
from <fully qualified Env1 path>.f0005 t1
join <fully qualified Env2 path>.f0005 t2
on t1.drsy = t2.drsy and t1.drrt = t2.drrt and t1.drky = t2.drky
where t1.drdl01 <> t2.drdl01 or t1.drdl02 <> t2.drdl02
-- or t1.drsphd <> t2.drsphd or t1.drudco <> t2.drudco or t1.drhrdc <> t2.drhrdc