The table layout of a table has changed.
I need to recatalog the dataviews that were created on that table but don't know how to find them.
How can I find which dataviews were created on a Datacom table?
Is there any Datadictionary batch utility that I can run that gives me that information?
You can run DDUTILTY using following input cards:
-USR DATACOM-INSTALL NEWUSER
-DEF PATH,DBMODEL
-DEF TRACE,TABLE.ELEMENT,$INTERNAL
-DEF TRACE,ELEMENT.DATAVIEW,$INTERNAL
-END
-RPT START,TABLE,your Datadictionary table entity name(PROD),DBMODEL
-RPT INDENT,DATAVIEW(PROD)
-END
Because dataviews are built from elements, and each element is a set of contiguous fields in a table, you can remove the “DATAVIEW” qualifier from the RPT INDENT command to see the relationships:
-USR DATACOM-INSTALL NEWUSER
-DEF PATH,DBMODEL
-DEF TRACE,TABLE.ELEMENT,$INTERNAL
-DEF TRACE,ELEMENT.DATAVIEW,$INTERNAL
-END
-RPT START,TABLE,your table name(PROD),DBMODEL
-RPT INDENT
-END
For example, the ORDERS table will show this:
TBL ITEMS
ITEMS FILE
SYSADM.ITEMS
ELM ITEMS.BOQTY-ONORD
B/O-QTY AND ON-ORD ELEMENT
DVW ITMBO
ORDER ENTRY DATAVIEW
ELM ITEMS.DESC-ELEMENT
DESC ELEMENT
DVW ITMDESC
ORDER ENTRY DATAVIEW
ELM ITEMS.ITEMS
FULL RECORD ELEMENT
DVW ITEMS
ORDER ENTRY DATAVIEW
DVW ITMINQ
OE ITEM RECORD READ ONLY
ELM ITEMS.ITM-ID
ITM-ID ELEMENT
DVW ITMID
ORDER ENTRY DATAVIEW
See the online documentation regarding DDUTILITY in DocOps