Deleting with a Generic File Name
January 14, 2004 Hey, Ted
I’ve been working on the AS/400 for almost 15 years now, and I’ve always thought that a physical file could not be deleted until all the logical files based on the physical file had been deleted. However, while working on a problem dealing with deleting a physical file when a logical may or may not exist, I tried using a generic file name. My reading of the DLTF command description led me to believe that the files would not be deleted. To my surprise, the files–the physical file and the two logical files–were deleted. Did I misunderstand the description? Is this an undocumented feature? Has everyone but me known this for years?
You’re not the only one who didn’t know this. If I knew it, I had forgotten it. I’m glad you brought this up, because we all need reminders of little things like this every now and then.
The documentation mentions that you can delete a group of files by specifying a generic name. The documentation does not say that the system will delete the logical files first, but that is the case. Even if a logical file’s name comes after the physical file’s name in the collating sequence, and even if the logical file is in a different library, as long as the logical file’s name fits the generic name, OS/400 will delete it before attempting to delete the physical file.
If the name of a logical file does not fit the generic name, OS/400 will not delete the logical, and therefore will not delete the physical file. However, it will still delete the logical files whose names fit the generic pattern.