Try OpenEdge Now
skip to main content
DataServer for Microsoft SQL Server
The DataServer Tutorial : Modifying a schema holder : Defining the ROWID : Dumping and Loading Schema Holder Information
 
Dumping and Loading Schema Holder Information
Some of the Dictionary tools that can be used to modify OpenEdge features associated with your schema and and can change the schema's interaction with your OpenEdge applications. But, Dataserver schema holders contain not just OpenEdge attributes but server attributes that comprise what is known as Schema Image. A schema image is a reflection of the schema attributes of the foreign data source interpreted for OpenEdge. It is contained with a logical database of the schema holder.
It is possible to connect to this logical database and dump and load definitions from the schema image just as you might dump and load schema from an OpenEdge Database. But the foreign database information in that schema image is derived from the Schema Pull process (see Independent OpenEdge MS SQL Server Schema Pull). The attributes of the schema image, once dumped from the logical database, should not be modified as it would also manipulate the depiction of the foreign data source seen by the DataServer which uses this information to accurately communicate with the foreign data source. One example would be the foreign position of a column in a table(known in the schema dump as "FOREIGN-POS") . This tells the DataServer where to locate column information in a physical record layout. Manipulating FOREIGN-POS information in the definitions file and then loading such definitions back into a logical database that was then used to connect to the same foreign data source would likely lead to data corruption should the DataServer be asked to read or write data to the server by the ABL application.
Note: Attributes of the Schema Image that reflects the foreign data source should never be modified without an appropriate and corresponding change taking place at the foriegn data source that matches the attribute change reflected in the schema image. This cannot be done reliably by manipulating a .df file. The only reliable way to modify schema on a foreign data source and have it accurately reflected in your logical database is to perform a schema pull operation from the changed foreign objects back into your logical database.