The functionality provided by FS_LOCATE_FILE is the same as CBL_LOCATE_FILE except:
If you have specified a $$server-name prefix in user-file-spec, actual-file-spec must contain the same $$server-name prefix for an OPEN using actual-file-spec to be re-directed automatically. By default, Fileshare only returns the filename in actual-file-spec to your program. To return the $$server-name in actual-file-spec, set the most significant bit of user-mode before making the call to FS_LOCATE_FILE.
When a call to FS_LOCATE_FILE is directed to a custom file handler by configurable DYNREDIR, the customer file handler is called with op-code FAF8 plus fcd(3:1) and uses the value 5 to specifiy it as an FS_LOCATE_FILE call.
On Entry Fields
On entry, the following fields are set:
fcd-name-ptr | Pointer to the user file |
fcd-open-mode | User mode |
fcd-optional | Path flag |
fcd-name-length | Length of filename |
On entry, the length of the fcd-name-length field is the same as the length of the filename pointed to by the field fcd-name-ptr.
On exit, you need to set the following fields:
fcd-record-ptr | Pointer to the actual file spec |
fcd-access-mode | Exist flag |
fcd-file-status | File status |