Thanks Karina,
That may be better than what I had developed, mine was relying on the longest element being the latest table definition:
I will post it anyway in case it is useful to someone.
Select fld.AUTHID, fld.RECORD_NAME AS TABLE_NAME, fld.ELM_NAME
, fld.ENTITY_NAME, fld.DISP_ELEMENT
, CASE fld.TYPE
when 'C' then 'Character'
when 'N' then 'Numeric'
when 'D' then 'Decimal'
else fld.TYPE end
, fld.NULL_INDICATOR, fld.CLASS
, fld.SIGN, fld.LENGTH, fld.DECIMALS
, fld.PRECISION, fld.REDEFINES, fld.SQLNAME
, fld.REPEAT
, fld.VALUE , fld.ENTITY_VER
, fld.AGR_SQLNAME as TBL_SQLNAME
, fld.DATE_LAST_CHG, fld.TIME_LAST_CHG
, fld.DESCRIPTION, fld.DATACOM_NAME AS ELM_NAM
, fld.SEQNO
from SYSADM.FIELD fld
where fld.STATUS = 'P'
and fld.ENTITY_TYPE = 'FLD'
and fld.RECORD_NAME = 'ITEM-ADJUSTMENT-HISTORY'
and fld.ENTITY_NAME NOT IN ('START','END')
and fld.DATACOM_NAME > ''
and fld.ELM_NAME = (SELECT EL.ENTITY_NAME from SYSADM.ELEMENT EL
where el.status = 'P' and el.RECORD_NAME = fld.RECORD_NAME and el.length =
(SELECT max(el2.length) from SYSADM.ELEMENT EL2
where el2.status = 'P' and el2.RECORD_NAME = fld.RECORD_NAME))
-- this is to list in column name order
--order by RECORD_NAME, ENTITY_NAME, ENTITY_VER, DATE_LAST_CHG, TIME_LAST_CHG
-- this is to list in column sequence order
order by RECORD_NAME, ELM_NAME, SEQNO, ENTITY_NAME, ENTITY_VER, DATE_LAST_CHG, TIME_LAST_CHG