Extension files future-proof your data, but you also have to future-proof your extension files!
By Joe Pluta
In my previous article, I explained how to use extension files to encapsulate a legacy database. This allows you to add new data points to the database without the impact of changing an existing master file. This is important because changing a master file requires that you recompile every program with a file specification for that file, and that can be an expensive proposition. It may even be impossible if you're missing current source for any of those programs. But if you're not careful with your extension files, you'll wind up in a similar bind. I ran into exactly that situation with the customer extension file I talked about in the previous article. While it wasn't used as extensively as the customer master, it had begun to proliferate throughout the system to the point where adding or changing a field in that file had all the same difficulties as changing the original master file.