Oh, wonderful progress ..
I have a linked server configured between sql 2008 and the Progress OpenEdge 10.1b server.
How to get table schemas?
You can get all available tables:
select * from sysprogress.SYSTABLES;
or
select * from sysprogress.SYSTABLES_FULL;
You can get all the columns of the specified table:
select * from sysprogress.SYSCOLUMNS where TBL = 'table_name';
select * from sysprogress.SYSCOLUMNS_FULL where TBL = 'table_name';
It works only with privileged DBA user.
More details in OpenEdge Product Documentation: https://community.progress.com/community_groups/openedge_general/w/openedgegeneral/1329.openedge-product-documentation-overview
Document Name: SQL Reference
Chapter: OpenEdge SQL System Catalog Tables
You can make an expression like
SELECT * FROM LinkedProgressOpenedgeServer.YourDatabase.Owner.TableName WHERE 1=2
This should only return a schema without any data.
Typically, the default schema name is PUB. You can try using the PUB scheme.